Part of the Khronos Group
OpenGL.org

The Industry's Foundation for High Performance Graphics

from games to virtual reality, mobile phones to supercomputers

Page 2 of 2 FirstFirst 12
Results 11 to 20 of 20

Thread: OpenGL Compilation Killing Me - Nvidia

  1. #11
    Junior Member Newbie
    Join Date
    Aug 2012
    Posts
    10
    Quote Originally Posted by tonyo_au View Post
    You might want to look at freeglut (http://freeglut.sourceforge.net/) in the future. It is more up to date than glut and supports various IDE's. If you switch platforms a lot VS is a bit of a pain but if you are only on Windows there is not much point swimming against the stream.
    As I said in my previous post, I downloaded the latest version of GLUT off of their website (the one you linked). It was OpenGL and GLU that I'm trying to get the latest versions for.

    I do switch platforms quite frequently, so yeah, not all the time on Windows.

  2. #12
    Advanced Member Frequent Contributor
    Join Date
    Jan 2007
    Posts
    965
    Quote Originally Posted by Syndacate View Post
    A) Where I can find the latest OpenGL/GLU libs, as I thought they were supposed to come in with the Nvidia SDK...and I can't find them.
    There are none. What you'll get in the NV SDK are NV-specific libs, but unless you're happy at the prospect of your program running on NV hardware only you'd be well-advised to avoid them. For general vendor-agnostic programming there are no official latest libs, so you need to use the extension-loading mechanism to access higher level functionality. The general advice you'll get is that life is too short to do this by hand so you should use something like GLEW instead.

  3. #13
    Junior Member Newbie
    Join Date
    Aug 2012
    Posts
    10
    Quote Originally Posted by mhagain View Post
    There are none. What you'll get in the NV SDK are NV-specific libs, but unless you're happy at the prospect of your program running on NV hardware only you'd be well-advised to avoid them. For general vendor-agnostic programming there are no official latest libs, so you need to use the extension-loading mechanism to access higher level functionality. The general advice you'll get is that life is too short to do this by hand so you should use something like GLEW instead.
    Hrm, not sure I'm following. Yeah, for extension handling I would use something like GLEW, but I'm just talking about the OpenGL and GLU libraries in and of themselves.

    In any of the Nvidia SDK's I got *NO* OpenGL or GLU libs, not NV-specific nor otherwise.

    I'm not entirely sure why it's so hard to find them...most Linux distributions have a relatively recent version of BOTH (OpenGL and GLU) in the repos...but for Windows, a MUCH more common system, I can't find shit except the ancient (1.1?) version that comes with MS? And that's all I can ever use unless I want to bind it to one card manu? Why isn't it this way in Linux?

    Kind of confused here..

  4. #14
    Super Moderator OpenGL Guru
    Join Date
    Feb 2000
    Location
    Montreal, Canada
    Posts
    4,421
    Quote Originally Posted by Syndacate View Post
    I'm not entirely sure why it's so hard to find them...most Linux distributions have a relatively recent version of BOTH (OpenGL and GLU) in the repos...but for Windows, a MUCH more common system, I can't find shit except the ancient (1.1?) version that comes with MS? And that's all I can ever use unless I want to bind it to one card manu? Why isn't it this way in Linux?

    Kind of confused here..
    This gets repeated so many times, that we explain it in the Wiki.
    http://www.opengl.org/wiki/FAQ#How_D..._On_Windows.3F

    also
    http://www.opengl.org/wiki/FAQ#Where_can_I_download.3F

    also
    http://www.opengl.org/wiki/Getting_started

    The bottom line is, opengl32.lib has never been updated (the latest version is from 1995). It is for GL 1.1.
    If you want to access higher versions, use a library such as GLEW. GLEW isn't just for extensions. It is for getting function pointers for EVERYTHING beyond GL 1.1.

    As for GLU, I already mentioned to get it from www.mesa3d.org.
    They provide the latest version which is 1.3 (probably from 1995 as well).

    Ok, so before this turns into a 10 pages discussion, just get yourself an extension loader and enjoy GL 4.2 or whatever it is that your video card supports.
    As for GLU, it is old crap but if you insist, www.mesa3d.org and compile it yourself.
    As for GLUT, once again, it is old crap. Use freeGLUT. http://freeglut.sourceforge.net
    ------------------------------
    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. #15
    Junior Member Newbie
    Join Date
    Aug 2012
    Posts
    10
    Quote Originally Posted by V-man View Post
    This gets repeated so many times, that we explain it in the Wiki.
    http://www.opengl.org/wiki/FAQ#How_D..._On_Windows.3F

    also
    http://www.opengl.org/wiki/FAQ#Where_can_I_download.3F

    also
    http://www.opengl.org/wiki/Getting_started

    The bottom line is, opengl32.lib has never been updated (the latest version is from 1995). It is for GL 1.1.
    If you want to access higher versions, use a library such as GLEW. GLEW isn't just for extensions. It is for getting function pointers for EVERYTHING beyond GL 1.1.

    As for GLU, I already mentioned to get it from www.mesa3d.org.
    They provide the latest version which is 1.3 (probably from 1995 as well).

    Ok, so before this turns into a 10 pages discussion, just get yourself an extension loader and enjoy GL 4.2 or whatever it is that your video card supports.
    As for GLU, it is old crap but if you insist, www.mesa3d.org and compile it yourself.
    As for GLUT, once again, it is old crap. Use freeGLUT. http://freeglut.sourceforge.net
    Ah, I didn't know GLEW did more than just extension handling. So if I'm understanding this correctly, with the most up to date version of GLEW, and the regular Windows provided OpenGL 1.1, I'll have *full* access to everything in OpenGL that my gfx card supports?

    GLU is old crap? I'm not entirely sure what it does, but I know it has some primitives (spheres and such) as well as other functions that are 'on top of' OpenGL. I'll look more into its functionality, I thought it was necessary. The version I downloaded I believe is freeGLUT (3.6).

    That first FAQ link explained a lot, I know it's a specification, not a lib, which is why I was trying to find the one produced by Nvidia. Though it seems the opengl32 that comes with Windows will take care of that. I'll try out some version checking.

    EDIT:
    I'm pretty new to compiling OpenGL in general, none-the-less in Windows where everything is twice as hard.

  6. #16
    Senior Member OpenGL Guru
    Join Date
    May 2009
    Posts
    4,732
    GLU is old crap? I'm not entirely sure what it does, but I know it has some primitives (spheres and such) as well as other functions that are 'on top of' OpenGL. I'll look more into its functionality, I thought it was necessary. The version I downloaded I believe is freeGLUT (3.6).
    GLUT is not GLU; they have nothing to do with one another. Also, FreeGLUT's highest version is 2.8, so if you're using 3.6, you're not using FreeGLUT; you're using the old GLUT that you should never be using.

  7. #17
    Junior Member Newbie
    Join Date
    Aug 2012
    Posts
    10
    Quote Originally Posted by Alfonse Reinheart View Post
    GLUT is not GLU; they have nothing to do with one another. Also, FreeGLUT's highest version is 2.8, so if you're using 3.6, you're not using FreeGLUT; you're using the old GLUT that you should never be using.
    Yeah, I never said OpenGL and GLUT were the same. It's GLU and OpenGL that I thought got packaged together at some point. I'll have to look into more about GLU when I get a chance, because I really don't get its ties with OpenGL, but moving that one function out of there.

    Oh, nvm, I see where you got that from, thought the functions were gluSolidTorus... and gluSphere, etc. - haven't used those functions in ages.

    Yeah, I have to do more reading to GLU's place in all this, I never really paid attention, just linked against it.

    I'll switch over to free glut, though, thanks.

  8. #18
    Super Moderator OpenGL Guru
    Join Date
    Feb 2000
    Location
    Montreal, Canada
    Posts
    4,421
    Quote Originally Posted by Syndacate View Post
    Yeah, I never said OpenGL and GLUT were the same. It's GLU and OpenGL that I thought got packaged together at some point. I'll have to look into more about GLU when I get a chance, because I really don't get its ties with OpenGL, but moving that one function out of there.

    Oh, nvm, I see where you got that from, thought the functions were gluSolidTorus... and gluSphere, etc. - haven't used those functions in ages.

    Yeah, I have to do more reading to GLU's place in all this, I never really paid attention, just linked against it.

    I'll switch over to free glut, though, thanks.
    GL is a low level library for sending commands to the GPU (basically). It is on the same level as Direct3D.

    GLU is another library that adds a few functions such gluOrtho2D, gluSphere, gluTesselator. It makes use of GL, but is is ancient compared to GL 4.2 core.
    For example, gluSphere makes calls to glBegin, glVertex, glNormal, glTexCoord, glEnd, which are considered deprecated in modern GL.
    gluOrtho2D uses glOrtho, which is also deprecated.

    GLU is on the same level as D3DX, the Direct3D Utility library. But at least D3DX has kept up with Direct3D.

    There are other libraries, created by people at home, that makes GLU obsolete.

    In your case, you are only using gluOrtho2D, possibly the most useless function in GLU.
    All it does is call glOrtho and sets znear to -1.0 and zfar to 1.0. Obviously, you can do that yourself.
    ------------------------------
    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);

  9. #19
    Advanced Member Frequent Contributor
    Join Date
    Apr 2010
    Location
    Germany
    Posts
    906
    Quote Originally Posted by V-man
    [..]glBegin, glVertex, glNormal, glTexCoord, glEnd, which are considered deprecated in modern GL. gluOrtho2D uses glOrtho, which is also deprecated.
    ... and completely removed from the core profile (and GL 3.1 IIRC).

  10. #20
    Junior Member Newbie
    Join Date
    Aug 2012
    Posts
    10
    Quote Originally Posted by V-man View Post
    GL is a low level library for sending commands to the GPU (basically). It is on the same level as Direct3D.

    GLU is another library that adds a few functions such gluOrtho2D, gluSphere, gluTesselator. It makes use of GL, but is is ancient compared to GL 4.2 core.
    For example, gluSphere makes calls to glBegin, glVertex, glNormal, glTexCoord, glEnd, which are considered deprecated in modern GL.
    gluOrtho2D uses glOrtho, which is also deprecated.

    GLU is on the same level as D3DX, the Direct3D Utility library. But at least D3DX has kept up with Direct3D.

    There are other libraries, created by people at home, that makes GLU obsolete.
    Gotcha, I learned this stuff as 'necessary' - I didn't realize it was just utility functions. Thanks for the clarification

    Quote Originally Posted by V-man View Post
    In your case, you are only using gluOrtho2D, possibly the most useless function in GLU.
    All it does is call glOrtho and sets znear to -1.0 and zfar to 1.0. Obviously, you can do that yourself.
    Yeah, that's exactly what I changed to get it to work without GLU.

    Quote Originally Posted by thokra View Post
    ... and completely removed from the core profile (and GL 3.1 IIRC).
    Don't think it was 3.1. I'm using glVertex in my code and it's OpenGL version 3.2 via glGetString. The reason I'm using such an old function is simply because I only need to set some colors here and there (manually). Also, I don't know the newer OpenGL stuff, learned the old stuff, that's all I know .

Posting Permissions

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