Hello Robert,

Sorry to respond this late, I have some more info on this issue:

if you google to "GL_VERSION returns 1.1.0", you'll find similar reports:
such as:
http://www.gamedev.net/community/forums/topic.asp?topic_id=373109
http://www.codeguru.com/forum/archive/index.php/t-283819.html
http://www.opengl.org/resources/faq/technical/mswindows.htm

Apparently, in a windows environment, the creation of an opengl context is done 
in two steps:
One needs to create an initial display context to be able to query the exact 
capabilities of the display and select the correct pixelformat.
See the opengl superbible, fourth edition, p 680.

This is done in the osgViewer::Win32WindowingSystem class, and seems correct to 
me - as far as I can tell.

However, when the first display context is created, a 24 bits color dept is 
requested, while my graphics card doesn't support this.
This could be one reason why the returned display context is - sometimes - 
backed up by the generic GDI driver, supporting only opengl version 1.1.0.
 
So, I changed the code in Win32WindowingSystem to request a 32 bit color depth 
instead:

Line 700:
PIXELFORMATDESCRIPTOR pixelFormat =
    {
        sizeof(PIXELFORMATDESCRIPTOR),
        1,
        PFD_DRAW_TO_WINDOW | PFD_SUPPORT_OPENGL,
        PFD_TYPE_RGBA,
        32,                     // color dept, used to be 24    
        0, 0, 0, 0, 0, 0, 
        8, 0,           // 8 alpha bits, was 0
        0, 0, 0, 0, 0,
        16,                     // 16 bits depth buffer, used to be 24
        8,                      // 8 stencil bits, used to be 0
        0,
        PFD_MAIN_PLANE,
        0,
        0, 0, 0
    };

This works perfectly! ...and almost every time :-(      

It seems that when I end and restart the application quickly enough, I 
sometimes still get the generic GDI version but not nearly as often as before.

I can reproduce this with the osgViewer application.

I can imagine that if the driver lags a bit behind, the system still falls back 
to the SW version.
(BTW, the scene contains 12 x 1Mp bitmaps)

I hope this makes sense to you experts out there.

Thanks for the help and best regards,
Christophe

OSG 2.8.1, Visual C++ 2005-SP1, Windows XP-SP3
HP EliteBook 8730w, Nvidia Quadro 2700 FX  

The OSG examples all work correctly.

------------------
Read this topic online here:
http://forum.openscenegraph.org/viewtopic.php?p=14437#14437





_______________________________________________
osg-users mailing list
[email protected]
http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org

Reply via email to