Ffelagund
02-20-2005, 12:54 PM
Hello,
I've detected an strange behaviour with an ATI9600XT and latest Catalyst drivers.
I wasn't able to reproduce the bug with a simple application, but I'm 99% sure that this a driver bug.
This 'problem' could be reproduced with the Shader Designer. Open the dimple shader, and instead of see a dimpled rendered mesh, you will get a gold mesh with a specular effect.
To get the shader running as spected, comment the lines:
uniform float Density;
uniform float Size;
, and uncomment these ones:
//const float Density = 16.0;
//const float Size = 0.25;
Hit F4 to recompile the shader.
I've tested the locations reported when the application uploads the uniforms, and they seems to be valid (0,1,2,3, etc)
As said, I wasn't able to reproduce this issue with a sample application, but this only happens with ATI cards. It seems that uniforms (into Fragment Shaders) aren't correctly updated.
Another test can be tried is to comment all fragment shader lines, and write "gl_FragColor = vec4(Scale);" (and write uniform float Scale; at the beggining, because this is a VS used uniform)
This may produce a white mesh, but if you uncomment all code, leaving the gl_FragColor = vec4(Scale); at the end, and removing the other gl_FragColor line, you will get a dark grey (or other undefined color) mesh.
Anybody has experienced something similar to this? maybe with the brick shader, getting green blocks over a red background?
I've detected an strange behaviour with an ATI9600XT and latest Catalyst drivers.
I wasn't able to reproduce the bug with a simple application, but I'm 99% sure that this a driver bug.
This 'problem' could be reproduced with the Shader Designer. Open the dimple shader, and instead of see a dimpled rendered mesh, you will get a gold mesh with a specular effect.
To get the shader running as spected, comment the lines:
uniform float Density;
uniform float Size;
, and uncomment these ones:
//const float Density = 16.0;
//const float Size = 0.25;
Hit F4 to recompile the shader.
I've tested the locations reported when the application uploads the uniforms, and they seems to be valid (0,1,2,3, etc)
As said, I wasn't able to reproduce this issue with a sample application, but this only happens with ATI cards. It seems that uniforms (into Fragment Shaders) aren't correctly updated.
Another test can be tried is to comment all fragment shader lines, and write "gl_FragColor = vec4(Scale);" (and write uniform float Scale; at the beggining, because this is a VS used uniform)
This may produce a white mesh, but if you uncomment all code, leaving the gl_FragColor = vec4(Scale); at the end, and removing the other gl_FragColor line, you will get a dark grey (or other undefined color) mesh.
Anybody has experienced something similar to this? maybe with the brick shader, getting green blocks over a red background?