VirtualBox

Opened 13 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 aeichner)

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)

VBoxOpenGL.zip (137.4 KB ) - added by denim 12 years ago.

Download all attachments as: .zip

Change History (4)

by denim, 12 years ago

Attachment: VBoxOpenGL.zip added

comment:1 by denim, 12 years ago

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).

comment:2 by Mark Vejvoda, 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 aeichner, 8 years ago

Description: modified (diff)
Resolution: obsolete
Status: newclosed

Please reopen if still relevant with a recent VirtualBox release.

Note: See TracTickets for help on using tickets.

© 2023 Oracle
ContactPrivacy policyTerms of Use