Part of the Khronos Group
OpenGL.org

The Industry's Foundation for High Performance Graphics

from games to virtual reality, mobile phones to supercomputers

Results 1 to 6 of 6

Thread: OpenGL implementation

  1. #1
    Junior Member Newbie
    Join Date
    Jan 2012
    Posts
    20

    OpenGL implementation

    Hai guys... I wanted to know whether openGL implementation varies from one hardware vendor to other ?? If so, then is Mesa 3D implemenataion based on a specific hardware???

  2. #2
    Junior Member Newbie
    Join Date
    Mar 2012
    Posts
    5

    Re: OpenGL implementation

    I am not an expert when it comes to openGL and beginner myself, but I know there are vendor specific definitions like glATI.h which could very well have non finalized definitions or experimental ones that your driver hardware likely supports. I would say that something like mesa though would only use the officially defined API definitions that are in the OpenGL registry otherwise it would not be portable. I do believe mesa has a fall back software render-er so it might have some other functions and if they fail it could fall back to software instead of the driver, but that would cause a performance hit. I really do not know since I have not worked with mesa. Although I would say its unlikely that it uses some vendor specific implementation, but most likely uses what is defined as the standard by Khronos.

  3. #3
    Super Moderator OpenGL Lord
    Join Date
    Dec 2003
    Location
    Grenoble - France
    Posts
    5,580

    Re: OpenGL implementation

    Of course the implementation varies.
    However all implementations should behave in a way compatible with the GL specification in theory (of course different bugs and different interpretations of complex cases happen in practice).

    Mesa started has a pure software implementation, then specific drivers for some hardware has been added, but not with a wide coverage.

  4. #4
    Super Moderator OpenGL Guru
    Join Date
    Feb 2000
    Location
    Montreal, Canada
    Posts
    4,264

    Re: OpenGL implementation

    Quote Originally Posted by Kinsho
    I am not an expert when it comes to openGL and beginner myself, but I know there are vendor specific definitions like glATI.h ........
    glATI.h is just a text file for your compiler. You can make your own header file if you want and call it myglfavoritefile.h

    A GL implementation means a actual driver that talks to the hardware. Each vendor writes their own GL driver (at least on Windows).

    From the FAQ
    http://www.opengl.org/wiki/FAQ#How_D..._On_Windows.3F
    ------------------------------
    Sig: http://glhlib.sourceforge.net
    an open source GLU replacement library. Much more modern than GLU.
    float matrix[16], inverse_matrix[16];
    glhLoadIdentityf2(matrix);
    glhTranslatef2(matrix, 0.0, 0.0, 5.0);
    glhRotateAboutXf2(matrix, angleInRadians);
    glhScalef2(matrix, 1.0, 1.0, -1.0);
    glhQuickInvertMatrixf2(matrix, inverse_matrix);
    glUniformMatrix4fv(uniformLocation1, 1, FALSE, matrix);
    glUniformMatrix4fv(uniformLocation2, 1, FALSE, inverse_matrix);

  5. #5
    Junior Member Newbie
    Join Date
    Jan 2012
    Posts
    20

    Re: OpenGL implementation

    Thanks all... So Mesa 3D implementation is not targeted to one particular hardware. Hardware vendors can alo write their own OpenGL implementations and drivers like Nvidia... Otherwise vendors like intel, AMD/ATI use Mesa implementation and write the drivers acoordingly is it...Is my understanding correct..Any help would be most welcome..

  6. #6
    Super Moderator OpenGL Guru
    Join Date
    Feb 2000
    Location
    Montreal, Canada
    Posts
    4,264

    Re: OpenGL implementation

    For Windows, hardware vendors write their own drivers and no, they do not use Mesa. On Linux, they probably port a portion of their GL front end to Linux and rewrite the Linux specific parts.

    If you are interested in Linux, I think you should contact those companies directly to make sure how they conduct their business practices. Or contact Brian Paul from mesa3d.org if you want to know the inards of his project.
    ------------------------------
    Sig: http://glhlib.sourceforge.net
    an open source GLU replacement library. Much more modern than GLU.
    float matrix[16], inverse_matrix[16];
    glhLoadIdentityf2(matrix);
    glhTranslatef2(matrix, 0.0, 0.0, 5.0);
    glhRotateAboutXf2(matrix, angleInRadians);
    glhScalef2(matrix, 1.0, 1.0, -1.0);
    glhQuickInvertMatrixf2(matrix, inverse_matrix);
    glUniformMatrix4fv(uniformLocation1, 1, FALSE, matrix);
    glUniformMatrix4fv(uniformLocation2, 1, FALSE, inverse_matrix);

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •