PDA

View Full Version : Shading Language Compiler Quality



marksibly
07-31-2006, 08:46 PM
[edit - oops, this is be in glsl forum - sorry!]

Just having a play around with gl shading language, and noticed that the compiler seems to optimize out dead uniforms OK, but not always dead attributes.

Example vertex shader:

attribute vec3 dummy;

void main(){
vec3 t=dummy;
gl_Position=gl_ModelViewProjectionMatrix * gl_Vertex;
}GL reports 2 active attributes (gl_Vertex and dummy) and 1 active uniform (gl_ModelViewProjectionMatrix). However, the 'dummy' attribute is dead so should really have been stripped.

If I change dummy to a uniform it is successfully stripped. Also, if I leave it as an attribute and remove the 't=dummy' assignment.

I am currently doing this sort of dead code analysis on GL ASM code very successfully. I was hoping I could move to high level code and get it done for me, but this kind of inconsistency makes me nervous!

Zengar
08-01-2006, 01:49 AM
Yep, it should be done by the compiler. Only speaks for low-quality implementation. What card and driver is it?

marksibly
08-01-2006, 03:55 PM
Hi,


What card and driver is it?
GeForce 6600 with ForceWare 91.31 (I assume this is 'driver version' - it's recent anyway).