Qt/openGL Error on Solaris10 x86 !!



  • I have installed Qt-4.7.3 on Solaris. I tried to run few of the OpenGL examples. Only 'hellogl' ,'grabber', 'texture' examples run properly. Other buffer examples like 'pbuffer' , 'pbuffer2' , 'framebufferobject' throws an error which reads 'OpenGL/ buffer not supported in this system' and the remaining examples opens an empty window and dumps a core file...

    its important to get openGL running properly on my Solaris system...

    Please help me...



  • Hello Again Vijaeendra,

    As you know I might not be the best person to answer that to you. I am only answering this, because I was waiting for the other guys to answer your previous post regarding examples and stuff.

    First and of Ultimate Importance:
    Please provide us the Video Card you are using and also the driver version.
    Maybe the thing is that your card really does not support these features.
    Man, in openGL one thing is always true, keep everything current, really :-) , this is important.

    Last: Libs and libs
    Another thing, some OS provided OpenGL lib versions are really old (like 1.1). OpenGL itself, as I told you, is really moving forward fast. Also, several board manufacturers use extensions that are registered with the name _EXT (functions, defines, etc.). Sometimes these features, such as Framebuffer Object, Geometry Shader, Mesh refinement, OpenGL 3.0, OpenGL 4.0 (yeah, crazy huh?), etc. are only available through these special packages. That is, programming with new features (openGL 3 and 4) sometimes might require these these special libs.

    pBuffer itself is really old (Approved by ARB on December 7, 2004.), however, you are using a system that is not directed to Graphics. Thus, I believe your openGL version is indeed old (old defines, old functions, etc.). Try to use glew, "The OpenGL Extension Wrangler Library":http://glew.sourceforge.net/ . It overwrite old stuff with new stuff. There is Also something called GLEE, but I never used it.

    You can download the source code and compile it to your system. Take a good look at the documentation, but some advises:
    -Include glew header before any opengl include
    -in the initializeGL the first thing you must call is glewInit()

    @ //Starting GLEW
    GLenum err = glewInit();
    if (GLEW_OK != err)
    Q_ASSERT(true);@

    If your problem is not old hardware and drivers, this might solve your problem.

    Otherwise... time to go shopping :-) . I will explain you why: old video cards were only prepared to use a fixed pipeline, newer cards now use a programmable pipe line with shaders and stuff, if your card is old, you will never be able to do the actual heavy metal stuff available with OpenGL.

    Use newer cards such as NVidia GeForce 6 and up, for ATI I don't remember the first one to use programmable pipeline, but you can use any of the HD series.

    NOTE: if anyone can help this guy further, that is the time, because I am no Unix expert.

    Regards,


Log in to reply
 

Looks like your connection to Qt Forum was lost, please wait while we try to reconnect.