VirtualBox

Opened 11 years ago

Last modified 6 years ago

#12048 new defect

No OpenGL Support for Windows 8

Reported by: muhkuh Owned by:
Component: 3D support Version: VirtualBox 4.2.16
Keywords: windows 8 opengl Cc:
Guest type: Windows Host type: Windows

Description

Host: Windows 7 64 bit Guest: Windows 8 32 bit Problem: No opengl GL support.

I'm trying to get accelerated opengl in my Windows 8 guest. All I get is the Microsoft Software OpenGL 1.1 driver.

Additional Info:

  • guest additions installed and selected the D3D support during installation
  • 3D hardware acceleration enabled in the VM settings
  • Direct 3D 9 acceleration works

To make sure it's not a problem with my host I installed Windows 7 32 bit as a guest. In this virtual machine the OpenGL Adapter of the host seems to be passed through to the guest.

I will attach a log for the windows 8 guest where OpenGL is not working.

Attachments (13)

Win8.log (68.9 KB ) - added by muhkuh 11 years ago.
VMlog of the windows 8 guest that doens't provide accelerated opengl
Win7.log (73.0 KB ) - added by muhkuh 11 years ago.
VMlog of the windows 7 guest that works
VBoxVideoWddm.inf (3.6 KB ) - added by entalpia2 9 years ago.
VBoxVideoW8.inf (3.4 KB ) - added by entalpia2 9 years ago.
VBoxVideoW8OGL.inf (3.6 KB ) - added by entalpia2 9 years ago.
INFFileComparison.png (171.7 KB ) - added by entalpia2 9 years ago.
W8RegistryBefore.png (139.2 KB ) - added by entalpia2 9 years ago.
W8RegistryAfter.png (140.4 KB ) - added by entalpia2 9 years ago.
W8OpenGLInfoBefore.png (118.8 KB ) - added by entalpia2 9 years ago.
W8OpenGLInfoAfter.png (122.7 KB ) - added by entalpia2 9 years ago.
AddOGLW8and10x86.reg (865 bytes ) - added by entalpia2 8 years ago.
AddOGLW8and10x64.reg (1.2 KB ) - added by entalpia2 8 years ago.
AddOGLW8and10x64Corrected.reg (1.5 KB ) - added by entalpia2 6 years ago.

Download all attachments as: .zip

Change History (26)

by muhkuh, 11 years ago

Attachment: Win8.log added

VMlog of the windows 8 guest that doens't provide accelerated opengl

by muhkuh, 11 years ago

Attachment: Win7.log added

VMlog of the windows 7 guest that works

by entalpia2, 9 years ago

Attachment: VBoxVideoWddm.inf added

comment:1 by entalpia2, 9 years ago

I think I've discovered what the source of the problem. Since VirtualBox 4.2.0, the VBoxGuestAdditions install a new graphic driver for Windows 8, VBoxVideoW8. The old WDDM driver's INF file for Vista and W7 (VBoxVideoWddm) contained in the registry keys for OpenGL ICD, but in the new INF file that are missing. After adding the registry keys manually to the file (new file VBoxVideoW8OGL.inf attached) everything works fine.

by entalpia2, 9 years ago

Attachment: VBoxVideoW8.inf added

by entalpia2, 9 years ago

Attachment: VBoxVideoW8OGL.inf added

by entalpia2, 9 years ago

Attachment: INFFileComparison.png added

by entalpia2, 9 years ago

Attachment: W8RegistryBefore.png added

by entalpia2, 9 years ago

Attachment: W8RegistryAfter.png added

by entalpia2, 9 years ago

Attachment: W8OpenGLInfoBefore.png added

by entalpia2, 9 years ago

Attachment: W8OpenGLInfoAfter.png added

in reply to:  description comment:2 by entalpia2, 9 years ago

I believe this problem affects all versions since version 4.2.0, including the latest version 5.0.0.

Replying to muhkuh:

Host: Windows 7 64 bit Guest: Windows 8 32 bit Problem: No opengl GL support.

I'm trying to get accelerated opengl in my Windows 8 guest. All I get is the Microsoft Software OpenGL 1.1 driver.

Additional Info:

  • guest additions installed and selected the D3D support during installation
  • 3D hardware acceleration enabled in the VM settings
  • Direct 3D 9 acceleration works

To make sure it's not a problem with my host I installed Windows 7 32 bit as a guest. In this virtual machine the OpenGL Adapter of the host seems to be passed through to the guest.

I will attach a log for the windows 8 guest where OpenGL is not working.

comment:3 by gammaburst, 9 years ago

Here is a possibly related discussion about trying to achieve accelerated OpenGL in Win10 64-bit guest: https://forums.virtualbox.org/viewtopic.php?p=330330#p330330

comment:4 by Eric Work, 8 years ago

This is still a problem with Windows 10 64-bit and VirtualBox 5.0.12.

comment:5 by Eric Work, 8 years ago

Running the OpenGL extensions program from the screenshots in Windows 10 x64 it now shows 100% functionality up to OpenGL 2.1 instead of just 1.1 only. Thanks entalpia2 for the information!

I first extracted the drivers using the instructions from the ISO in the 64bit directory. Then I edited the following section of VBoxVideoW8.inf:

[VBoxVideo_SoftwareDeviceSettings]
HKR,, InstalledDisplayDrivers, %REG_MULTI_SZ%, VBoxDispD3D
HKR,, UserModeDriverName,    %REG_MULTI_SZ%, VBoxDispD3D.dll
HKR,, UserModeDriverNameWow,    %REG_MULTI_SZ%, VBoxDispD3D-x86.dll
HKR,, OpenGLDriverName,    %REG_MULTI_SZ%, VBoxOGL.dll
HKR,, OpenGLDriverNameWow,    %REG_MULTI_SZ%, VBoxOGL-x86.dll
HKR,, OpenGLFlags,         %REG_DWORD%,    0x00000001
HKR,, OpenGLFlagsWow,         %REG_DWORD%,    0x00000001
HKR,, OpenGLVersion,       %REG_DWORD%,    0x00000001
HKR,, OpenGLVersionWow,       %REG_DWORD%,    0x00000001
HKR,, VgaCompatible, %REG_DWORD%, 0

I then had to disable driver enforcement through advanced start-up options. Finally under Device Manager I told it to update the driver and went though the steps that let me choose "Have Disk" and picked the modified .inf file. After rebooting the OpenGL extension program now shows 2.1 with a vendor of Chromium or something strange like that.

The final step will be to try running MakerBot Desktop when I get a chance tonight and see if it still crashes.

Last edited 8 years ago by Eric Work (previous) (diff)

comment:6 by Eric Work, 8 years ago

I just wanted to provide an update that even though OpenGL diagnostic tools show OpenGL 2.2 it did not make a difference with MakerBot Desktop and in fact it won't start at all with 3D acceleration enabled. Bummer.

comment:7 by aannoo, 8 years ago

Same here with Windows 10 (64 bit) and VB 5.0.20. Garmin Basecamp is stating that there is no OpenGL 1.3 available and only pops up in 2D mode.

comment:8 by entalpia2, 8 years ago

Another way to add OpenGL support without disabling disable driver signature enforcement. Use the respective attached .reg files to add OpenGL to W8 and W10 VirtualBox guests. It works after reboot. VirtualBox Guest Additions must be installed before.

by entalpia2, 8 years ago

Attachment: AddOGLW8and10x86.reg added

by entalpia2, 8 years ago

Attachment: AddOGLW8and10x64.reg added

comment:9 by entalpia2, 8 years ago

This problem affects all versions since version 4.2.0, including VirtualBox version 5.0.0 and later. Both Windows 8.x and Windows 10 guests.

Last edited 8 years ago by entalpia2 (previous) (diff)

comment:10 by BobRocks, 7 years ago

Walked through the process given by entalpia2. Sadly, it didn't work. Before I did anything, I could start programs without any issue, but then would encounter fatal errors when trying to render 3D data.

After trying the steps above (like 20 times in 20 different ways, using the registry patch alone, using the driver patch alone, together, separate and so forth) it is clear that this hack doesn't work on my system either.

Now when I start the software, it pops an error that says my system has OpenGL1.1 If I check in AIDA64, it is clearly showing 2.1 support.

So I've gone from bad to worse, because now the software won't even load...

It just seems like a registry issue to me, as the software just checks the registry for compatibility and if it isn't found, it pops the error and shuts down.

Any more ideas?

comment:11 by rbarnabas, 6 years ago

So here was my solution.

I am running Mac Pro Osx Sierra 10.12 as host.

In order to get the accelerated 3D going. you must do this prior to installing windows as your virtual machine.

So here are the steps I got from here: https://apple.stackexchange.com/questions/246251/opengl-2-0-on-windows-10-on-virtualbox-on-el-capitan

Due to hardware detection that happens at various points there is proper order of doing this as well:

1.Enable 3D acceleration on your guest before powering it up to install Windows. 2.Install Windows 10. 3.Install VirtualBox guest additions and reboot.

I installed Windows 7 rather than the above directions and it worked. Probably will work with Windows 10 as well.

I didn't have to import the above registry file...etc. from the link directions above.

The sofware I was having issues with was Daz3D and now it works fine!

comment:12 by Socratis, 6 years ago

@rbarnabas
Do you realize that what you're proposing is exactly the same as adding the registry keys? What "prior to installing" are you referring to? Doesn't compute...

by entalpia2, 6 years ago

comment:13 by entalpia2, 6 years ago

The registry file for 64 bit was incomplete. I've corrected.

Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\OpenGLDrivers]

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\OpenGLDrivers\MSOGL]
"DriverVersion"=dword:00000001
"Flags"=dword:00000001
"Version"=dword:00000001
"DLL"="VBoxOGL.dll"

[HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\Windows NT\CurrentVersion\OpenGLDrivers]

[HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\Windows NT\CurrentVersion\OpenGLDrivers\MSOGL]
"DriverVersion"=dword:00000001
"Flags"=dword:00000001
"Version"=dword:00000001
"DLL"="VBoxOGL-x86.dll"

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Class\{4d36e968-e325-11ce-bfc1-08002be10318}\0000]
"OpenGLDriverName"=hex(7):56,00,42,00,6f,00,78,00,4f,00,47,00,4c,00,2e,00,64,\
  00,6c,00,6c,00,00,00,00,00
"OpenGLDriverNameWoW"=hex(7):56,00,42,00,6f,00,78,00,4f,00,47,00,4c,00,2d,00,78,\
  00,38,00,36,00,2e,00,64,00,6c,00,6c,00
"OpenGLFlags"=dword:00000001
"OpenGLFlagsWoW"=dword:00000001
"OpenGLVersion"=dword:00000001
"OpenGLVersionWoW"=dword:00000001

[HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Control\Video\{70849E09-CC3F-417F-B4F5-ED1D9A04CCFE}\0000]
"OpenGLDriverName"=hex(7):56,00,42,00,6f,00,78,00,4f,00,47,00,4c,00,2e,00,64,\
  00,6c,00,6c,00,00,00,00,00
"OpenGLDriverNameWoW"=hex(7):56,00,42,00,6f,00,78,00,4f,00,47,00,4c,00,2d,00,78,\
  00,38,00,36,00,2e,00,64,00,6c,00,6c,00
"OpenGLFlags"=dword:00000001
"OpenGLFlagsWoW"=dword:00000001
"OpenGLVersion"=dword:00000001
"OpenGLVersionWoW"=dword:00000001
Note: See TracTickets for help on using tickets.

© 2023 Oracle
ContactPrivacy policyTerms of Use