Opened 14 years ago
Closed 8 years ago
#8666 closed defect (obsolete)
OpenGL calls fail starting with VBox 4.x
Reported by: | Mark Vejvoda | Owned by: | |
---|---|---|---|
Component: | guest additions | Version: | VirtualBox 4.0.4 |
Keywords: | opengl | Cc: | |
Guest type: | Windows | Host type: | Linux |
Description (last modified by )
I am an opensource developer working on an RTS game called Megaglest (see megaglest.org). In previous versions of Virtual Box i was able to successfully test under virtual box using client extensions and 3d support. My host is Linux and guests are Windows XP and also many flavours of Linux including Ubuntu 8 - current. Starting in Virtualbox 4.x the game gets weird OpenGL errors returned, but the same binaries run fine on the native operating systems and ran fine in 3.x.
I refer to v3.4.0 and the current developer svn version. Source code is available at sourceforge.net here: http://sourceforge.net/projects/megaglest/develop, our dev wiki is here: http://glest.wikia.com/wiki/MG/Development
*NOTE: When disabling 3D guest additions the game does not work as it requires open GL 1.3 or higher reported by the OS.
For additional details join us on freenode.net IRC channel #glest
Thanks
Attachments (1)
Change History (4)
by , 13 years ago
Attachment: | VBoxOpenGL.zip added |
---|
comment:1 by , 13 years ago
comment:2 by , 12 years ago
Ok the problem is related to using display lists. I replaced code that did this:
list3d= glGenLists(1); glNewList(list3d, GL_COMPILE_AND_EXECUTE); render3dSetup(); glEndList(); assertGl();
After removing the use of lists, our program works fine in virtualbox. It should be noted that doing a selection quad in virtualbox DOES NOT work using the normal selection buffer. But when i set our game to use an alternative method (color picking) everything works in virtualbox. Clearly the virtualbox opengl drivers are buggy on windows and they appear to return the 'invalid enum or variant' error when using display lists, and selection buffer does not work at all.
comment:3 by , 8 years ago
Description: | modified (diff) |
---|---|
Resolution: | → obsolete |
Status: | new → closed |
Please reopen if still relevant with a recent VirtualBox release.
Hi, I came over a very similar problem. My host system is an Ubuntu 11.10 (32 bit) and the guest system is a Windows 7 (32 bit). In order to reproduce the problem, I wrote a minimum C++ OpenGL application, that uses glut to create a window, and and a display list, that renders a colored quad. Running this test application on the guest system Windows 7 from my host system Ubuntu 11.10 using Virtualbox 3.2.14 r75509 works well (I see the colored quad and get no OpenGL error). Running the same scenario using Virtualbox 4.1.8 r75467 also gives me the colored quad but additionally gives me the OpenGL error "invalid enumerant" after the call to glEndList(). See the attached files for further details (main.cpp contains the sample application).