GLSL extensions missing?


Results 1 to 8 of 8

Thread: GLSL extensions missing?

  1. #1
    Join Date
    Jan 2003
    Location
    Seattle, Washington
    Posts
    337

    GLSL extensions missing?

    I have the newest nvidia drivers installed on my system. Everything is fine until I try to run a GLSL program. It says my GLSL extensions are missing. It's directly from the book's cd, so one would think that's not the problem.

    Do I have to do anything special to get the shading language up?
    "Pick a number between 1 and 3. Your number is 42! Why? Because it is!"
    ~Brandon

  2. #2
    Join Date
    Jul 2003
    Posts
    28
    Are you trying to compile a source or run an executable? What exactly is the error message? If you are compiling you might need a more recent glext.h which you can get here http://oss.sgi.com/projects/ogl-sample/ABI/glext.h . Or if you are trying to run an executable then your video card might not support GLSL. This program will tell you what extensions your video card supports http://members.cox.net/gradyfield/glcaps.c . The instruction for compiling is at the top of the file.
    Last edited by grady; 08-26-2004 at 11:13 PM.

  3. #3
    Join Date
    Jan 2003
    Location
    Seattle, Washington
    Posts
    337
    I'm compiling them. The executable pops out fine enough, but it says I'm missing the extensions and segfaults. I'm going to see if I can find some other glsl programs to test out. According to that program, my videocard does support the extensions.
    "Pick a number between 1 and 3. Your number is 42! Why? Because it is!"
    ~Brandon

  4. #4
    Join Date
    Jul 2003
    Posts
    28
    Does it actually say "you are missing the extensions" before it segfaults? What is the error message exactly? Is it an error message coded into the program? If so, can you post the section of the code used to determine that 'the extensions are missing'. If not, I'm guessing you aren't using glXGetProcAddressARB to get the pointers to the extension's functions. You can search on opengl.org's linux forum for "glXGetProcAddressARB" to get information on this if you think this is the problem.
    Last edited by grady; 08-27-2004 at 01:56 PM.

  5. #5
    Join Date
    Jan 2003
    Location
    Seattle, Washington
    Posts
    337
    It's built into the code, which is why I wanted to get some different samples, but I ended up falling asleep. I'll post the entire thing as an attachment. It's pretty obvious where the error code is.

    I'll have to tar up the entire thing, it includes several files in some of its subdirectories. Until then, I'll be looking for some different demos.

    This is the part of the code that does it, but you'll probably need more than this.
    Code:
    if (!gltIsExtSupported("GL_ARB_vertex_shader") ||
            !gltIsExtSupported("GL_ARB_fragment_shader") ||
            !gltIsExtSupported("GL_ARB_shader_objects") ||
            !gltIsExtSupported("GL_ARB_shading_language_100"))
        {
            fprintf(stderr, "GLSL extensions not available!\n");
            usleep(2000);
            exit(0);
        }
    Ohhhh, I don't think I have GL_ARB_fragment_shader. Is it something my video card has to support or can I get that feature?
    "Pick a number between 1 and 3. Your number is 42! Why? Because it is!"
    ~Brandon

  6. #6
    Join Date
    Jul 2003
    Posts
    28
    Your video card needs to support it. That extension is implemented in the latest nvidia driver and would show up if you had a newer card. You can still write GLSL vertex programs but fragment shaders won't work in hardware.
    Last edited by grady; 08-27-2004 at 05:30 PM.

  7. #7
    Join Date
    Jan 2003
    Location
    Seattle, Washington
    Posts
    337
    So I'll need to get something newer than GeForce4 Ti 4200, no?
    "Pick a number between 1 and 3. Your number is 42! Why? Because it is!"
    ~Brandon

  8. #8
    Join Date
    Apr 2001
    Location
    SF Bay Area, CA
    Posts
    14,947
    Looks that way. My GF4 Ti4200 doesn't support GL_ARB_fragment_shader (but it does support the other 3 out of the 4 extensions that are needed). Which is exactly what grady said, isn't it.

    I would plug in the GF 6800GT that I got yesterday to see if it supports the new extension, but my tiny little 350W power supply isn't nearly big enough to run it properly...

Posting Permissions

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