Não há som na estação de trabalho VMWare ao jogar jogos 3D

Não há som na estação de trabalho VMWare ao jogar jogos 3D

Estou tentando configurar uma máquina virtual de jogos, porque não quero todo esse 'lixo' no meu sistema principal.

Já tenho VMware Workstation 7, decidi criar uma nova VM com Windows 7 e Windows XP.

Instalei o Unreal Tournament 2004 em ambas as VMs. Ele não iniciou no Windows XP, sem problemas, porque ainda funciona na minha imagem do Windows 7. Ao iniciar este jogo recebo a mensagem de que o dispositivo de som não pode ser usado porque o deviceID está fora do alcance ID do dispositivo fora do alcance

O dispositivo de som padrão não pode ser aberto:

Foi usado um ID de dispositivo que está fora do alcance do seu sistema. O som será desconectado.

Os sons do Windows funcionam, e alguns outros jogos também têm som (Warcraft II, por exemplo). Suspeito que tenha algo a ver com sons DirectX ou Direct3D. Se bem me lembro, o Half-Life (CS1.6) também não tem o som habilitado, por causa do mesmo erro. Counterstrike Source tem som no menu, mas depois de iniciar o jogo ele apresenta o mesmo erro.

Algum conselho ou sugestão?

Já encontrei alguns sites me dizendo que deveriamude o dispositivo de som para um Soundblaster, mas isso só se aplicava a jogos DOS antigos.

Editar

Estou jogando Doom 3 na VM agora e tem som. Tenho quase certeza de que tem suporte para DirectX. Mais uma vez, parece que não usa DirectSound.

Warcraft 2, Warcraft 3, Unreal Tournament (clássico), Quake 3 também obtiveram som durante o jogo.

Estou testando o UT2003 hoje e ele também tem som habilitado, consigo ouvir tudo. Em Software 3D, Hardware 3D e modo de segurança.

A pedido, meus arquivos VMX. Primeiro minha máquina com Windows 7:

.encoding = "windows-1252"
config.version = "8"
virtualHW.version = "7"
numvcpus = "4"
cpuid.coresPerSocket = "2"
scsi0.present = "TRUE"
scsi0.virtualDev = "lsisas1068"
memsize = "2048"
mem.hotadd = "TRUE"
scsi0:0.present = "TRUE"
scsi0:0.fileName = "Game 7.vmdk"
ide1:0.present = "TRUE"
ide1:0.autodetect = "FALSE"
ide1:0.deviceType = "cdrom-raw"
ethernet0.present = "TRUE"
ethernet0.connectionType = "nat"
ethernet0.virtualDev = "e1000"
ethernet0.wakeOnPcktRcv = "FALSE"
ethernet0.addressType = "generated"
usb.present = "TRUE"
ehci.present = "TRUE"
sound.present = "TRUE"
sound.fileName = "-1"
sound.autodetect = "TRUE"
mks.enable3d = "TRUE"
serial0.present = "TRUE"
serial0.startConnected = "FALSE"
serial0.fileType = "thinprint"
pciBridge0.present = "TRUE"
pciBridge4.present = "TRUE"
pciBridge4.virtualDev = "pcieRootPort"
pciBridge4.functions = "8"
pciBridge5.present = "TRUE"
pciBridge5.virtualDev = "pcieRootPort"
pciBridge5.functions = "8"
pciBridge6.present = "TRUE"
pciBridge6.virtualDev = "pcieRootPort"
pciBridge6.functions = "8"
pciBridge7.present = "TRUE"
pciBridge7.virtualDev = "pcieRootPort"
pciBridge7.functions = "8"
vmci0.present = "TRUE"
roamingVM.exitBehavior = "go"
displayName = "Game 7"
guestOS = "windows7-64"
nvram = "Game 7.nvram"
virtualHW.productCompatibility = "hosted"
extendedConfigFile = "Game 7.vmxf"
ide1:0.fileName = "D:"
floppy0.present = "FALSE"
ide1:0.startConnected = "TRUE"
ethernet0.generatedAddress = "00:0c:29:e8:85:9e"
tools.syncTime = "FALSE"
uuid.location = "56 4d 8f 49 68 58 4f 4e-0e f0 f5 31 4e e8 85 9e"
uuid.bios = "56 4d 8f 49 68 58 4f 4e-0e f0 f5 31 4e e8 85 9e"
cleanShutdown = "FALSE"
replay.supported = "FALSE"
unity.wasCapable = "TRUE"
replay.filename = ""
scsi0:0.redo = ""
pciBridge0.pciSlotNumber = "17"
pciBridge4.pciSlotNumber = "21"
pciBridge5.pciSlotNumber = "22"
pciBridge6.pciSlotNumber = "23"
pciBridge7.pciSlotNumber = "24"
scsi0.pciSlotNumber = "160"
usb.pciSlotNumber = "32"
ethernet0.pciSlotNumber = "33"
sound.pciSlotNumber = "34"
ehci.pciSlotNumber = "35"
vmci0.pciSlotNumber = "36"
scsi0.sasWWID = "50 05 05 69 68 58 4f 40"
vmotion.checkpointFBSize = "134217728"
usb:0.present = "TRUE"
usb:1.present = "TRUE"
ethernet0.generatedAddressOffset = "0"
vmci0.id = "1323861406"
usb:1.deviceType = "hub"
usb:0.deviceType = "mouse"
hgfs.mapRootShare = "TRUE"
isolation.tools.hgfs.disable = "FALSE"
sharedFolder.maxNum = "1"
sharedFolder0.present = "TRUE"
sharedFolder0.enabled = "TRUE"
sharedFolder0.readAccess = "TRUE"
sharedFolder0.writeAccess = "TRUE"
sharedFolder0.hostPath = "F:\Temp\VMShare"
sharedFolder0.guestName = "VMShare"
sharedFolder0.expiration = "never"

Minha máquina com Windows XP é assim:

.encoding = "windows-1252"
config.version = "8"
virtualHW.version = "7"
memsize = "2048"
ide0:0.present = "TRUE"
ide0:0.fileName = "UML.vhd"
ide1:0.present = "TRUE"
ide1:0.autodetect = "TRUE"
ide1:0.deviceType = "cdrom-raw"
floppy0.startConnected = "FALSE"
floppy0.fileName = ""
floppy0.autodetect = "TRUE"
ethernet0.present = "TRUE"
ethernet0.connectionType = "nat"
ethernet0.wakeOnPcktRcv = "FALSE"
ethernet0.addressType = "generated"
usb.present = "TRUE"
ehci.present = "TRUE"
sound.present = "TRUE"
sound.fileName = "-1"
mks.enable3d = "TRUE"
serial0.present = "TRUE"
serial0.fileType = "thinprint"
pciBridge0.present = "TRUE"
pciBridge4.present = "TRUE"
pciBridge4.virtualDev = "pcieRootPort"
pciBridge4.functions = "8"
pciBridge5.present = "TRUE"
pciBridge5.virtualDev = "pcieRootPort"
pciBridge5.functions = "8"
pciBridge6.present = "TRUE"
pciBridge6.virtualDev = "pcieRootPort"
pciBridge6.functions = "8"
pciBridge7.present = "TRUE"
pciBridge7.virtualDev = "pcieRootPort"
pciBridge7.functions = "8"
vmci0.present = "TRUE"
roamingVM.exitBehavior = "go"
displayName = "UML Machine"
guestOS = "winxppro"
nvram = "UML Machine.nvram"
virtualHW.productCompatibility = "hosted"
printers.enabled = "TRUE"
extendedConfigFile = "UML Machine.vmxf"
sound.virtualDev = "es1371"
ethernet0.generatedAddress = "00:0c:29:10:10:79"
sound.autodetect = "TRUE"
uuid.location = "56 4d 32 87 54 f5 1b df-46 45 83 91 b9 10 10 79"
uuid.bios = "56 4d 32 87 54 f5 1b df-46 45 83 91 b9 10 10 79"
cleanShutdown = "TRUE"
replay.supported = "FALSE"
replay.filename = ""
scsi0:0.redo = ""
pciBridge0.pciSlotNumber = "17"
pciBridge4.pciSlotNumber = "21"
pciBridge5.pciSlotNumber = "22"
pciBridge6.pciSlotNumber = "23"
pciBridge7.pciSlotNumber = "24"
scsi0.pciSlotNumber = "-1"
usb.pciSlotNumber = "32"
ethernet0.pciSlotNumber = "33"
sound.pciSlotNumber = "34"
ehci.pciSlotNumber = "35"
vmci0.pciSlotNumber = "36"
vmotion.checkpointFBSize = "134217728"
usb:0.present = "TRUE"
usb:1.present = "TRUE"
ethernet0.generatedAddressOffset = "0"
vmci0.id = "-1190129543"
usb:1.deviceType = "hub"
usb:0.deviceType = "mouse"
ide0:0.redo = ""
ide1:0.startConnected = "TRUE"
tools.syncTime = "FALSE"
unity.wasCapable = "FALSE"
ide1:0.fileName = "auto detect"
debugStub.winOffsets.version = "7"
debugStub.winOffsets.value = "0x88,0x84,0x18,0x190,0x174,16,416,0x22c,0x228,0x1f0,0x224,0x20,0x18,0x18,0x20,0x24,4,0x11c,0x8,0x0,0x14,0x100000,0x1b0,0xc,0xc,0x18,0x13c,0x1f4"

Responder1

Você poderia tentar ajustarnumvcpusbaseado emcpuid.coresPerSocketvalor em seu vmx.

Alguns usuários do VMWare descobriram que"o VMware só pode funcionar corretamente com os núcleos originais."

Você poderia tentar configurando

numvcpus

para omesmovalor do que

cpuid.coresPerSocket

no seu arquivo vmx, ou seja

numvcpus = "2"
cpuid.coresPerSocket = "2"

Tenha em mente que, em qualquer caso, é preciso

"Ensure that the number of vCPUs is divisible by the number of cpuid.coresPerSocket
in the virtual machine. That is, when you divide the number of vCPUs by the number
of cpuid.coresPerSocket , it must return an integer value. For example, if your
virtual machine is created with 8 vCPUs, coresPerSocket can only be 1, 2, 4, or 8."

(fonte)

informação relacionada