GTX 470 driver issues

Hi all,

Some issues of the GL4.0 drivers under Vista, to report and to see if others had the same issue(s).

Driver version: 197.44, Vista 32bit, linky: http://developer.download.nvidia.com/ope…ternational.exe from http://developer.nvidia.com/object/opengl_driver.html.

Firstly the driver did NOT recognize the card as is, I modified the .inf file replacing the string 06CD0 with 06CD4. The new value I got from Vista’s device manager, the old value is what was matched to “470 GTX” in the inf file. After doing this the driver installed fine.

Now for GL issues:
(1) doing this:


    for(int i=0;i<some_uniform_int;++i)
    {
        gl_ClipDistance[i]=dot(some_uniform_vec4[i], position);
    }

produced: “lvalue in assignment to complex”.
This error was not reported in the shader compilation log, but in the link log.

getting grungy and doing:


 gl_ClipVertex=position;

produced: “fatal error C9999: *** exception during compilation ***”

On Linux with 195.36.07.04, linky: http://developer.download.nvidia.com/opengl/4.0/linux/NVIDIA-Linux-x86-195.36.07.04-pkg1.run

the driver installed with no issues, but error (1) above did happen where as error (2) did not.

Additionally, changing the code to:


 #ifndef MAX_CLIP_PLANES
 #define MAX_CLIP_PLANES 6
 #endif
 
 for(int i=0;i<MAX_CLIP_PLANES; ++i)
    {
      float r;
      
      r= (i<number_clip_planes)?
        dot( position, clip_planes[i]):
        1.0;

      gl_ClipDistance[i]=dot( position, some_uniform_ver4[i]);
    }

works, so chances are the GLSL compiler is unrolling the above and avoiding the too complicated lvalue, “gl_ClipDistance[i]”.

Note that under older drivers(such as 195.62) with a GeForce9800GT the original code worked just fine.

Best Regards
-Kevin

Thanks kRogue. We’ll take a look.

Barthold
(with my NVIDIA hat on)

Hi kRogue,

The index to gl_ClipDistance needs to be an integral constant, or one that the compiler can derive. Basically we need to know ahead of time how big gl_ClipDistance needs to be, and with constant indexes we can figure that out.

The GLSL spec talks about this requirement of gl_ClipDistance on page 87:
http://www.opengl.org/registry/doc/GLSLangSpec.4.00.7.pdf

cheers
Piers

i don’t want to cross post, but this also fits in here:

http://www.opengl.org/discussion_boards/ubbthreads.php?ubb=showflat&Number=278557#Post278557

This topic was automatically closed 183 days after the last reply. New replies are no longer allowed.