Error with NVIDIA ForceWare 84.21


After installing the new NVIDIA ForceWare 84.21 driver, I’ve gotten the following error message while compiling GLSL shaders:

(0): error C9999: symbol “@TMP1” already in table
The unclear thing is that the error didn’t occur before installing the driver and I’ve changed nothing in my shader code after installing it, hence I don’t recognize this is whether the driver’s bug or my shader’s bug.

Any ideas?


I just validated my shader code using 3Dlabs’ GLSL Syntax Validator and found that the cause of the error is a mat4-to-mat3 conversion as follows (where u_RotationMatrix is a mat4 uniform variable):

mat3 rotation = mat3(u_RotationMatrix);

Now, the mat4-to-mat3 conversion is not included in the official GLSL specification? It is quite inconvenient to be unable to use the matrix conversion.

Well, I just solved this problem by doing this:

mat3 rotation = mat3(u_RotationMatrix[0].xyz, u_RotationMatrix[1].xyz, u_RotationMatrix[2].xyz);

But again, this is inconvenient.

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