MacOS – OpenGL 2.0 on Windows 10 on VirtualBox on El Capitan

graphicsmacosvirtualboxwindows

Some software running on Windows 10 requires me to have OpenGL 2.0.
I'm running Windows 10 in VirtualBox, which is on El Capitan.

How do I install OpenGL 2.0?

Please explain as if speaking to a layman. :)

Error message given by the software:

Required OpenGL extensions: GL_VERSION_2_0, GL_ARB_framebuffer_object, GL_ARB_texture_compression, are unsupported. Please update your computer's graphics drivers or verify that your graphics card supports the listed features. If this error persists after updating the drivers, you will most likely need to upgrade your graphics card.

Best Answer

VirtualBox Guest Additions for Windows 8 or later no longer add the necessary registry entries to enable OpenGL support.

Based on comments in No OpenGL Support for Windows 8 and related links I was able to craft the following Registry file to add the missing OpenGL keys...

Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Class\{4d36e968-e325-11ce-bfc1-08002be10318}\0000]
"OpenGLDriverName"="VBoxOGL.dll"
"OpenGLDriverNameWow"="VBoxOGL-x86.dll"
"OpenGLFlags"=dword:00000001
"OpenGLFlagsWow"=dword:00000001
"OpenGLVersion"=dword:00000001
"OpenGLVersionWow"=dword:00000001

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

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.
  4. Import the above Registry file and reboot.

Note that this is limited OpenGL support - it only enables things up to API Level OpenGL 2.1. Some things work fine, others not so much. e.g.: Blender 2.78 refused to start before this change, citing lack of OpenGL support, but afterwards it starts... and just displays a white window.

Update 2017-03-04:

Blender's all-white window issues were fixed by downloading their software-based OpenGL driver, ftp://ftp.blender.org/sergey/softwaregl/win64/opengl32.dll, and copying it into the folder C:\Program Files\Blender Foundation\Blender

It obviously won't be performant like this but at least it's usable... which is important because a lot of Blender add-ons only work on Windows (e.g.: Bos FBX Importer/Exporter only works on win64 systems).