cancel
Showing results for 
Search instead for 
Did you mean: 

Archives Discussions

allforum
Journeyman III

glLineStipple ignored when using a shader

Hello,

If I use a varying float variable in a fragment shader I have no more dashed lines. If I comment the line then all works well...

On an ATI X1300/X1550, with the basic shaders below, glLineStipple has no effect if I uncomment the red line !

And in the sample to reproduce below I do not use this variable !

In my "real" shader I need a variable to compute lighting : so I have light but I have no more dashed lines...

Vertex shader :

#version 110               
varying vec3 N;               
varying float vx;                   

void main(void)
{
gl_ClipVertex = gl_ModelViewMatrix * gl_Vertex; 
vx = 1.0;
N = normalize(gl_NormalMatrix * gl_Normal);
gl_Position = gl_ModelViewProjectionMatrix * gl_Vertex;
}

Fragment shader :

#version 110                   

varying vec3 N;               

varying float vx;

void main (void)   

{  

vec3 L = normalize(gl_LightSource[0].position.xyz);  

float vvx = vx;   // If I comment this useless line the card draws again dashed lines

vec3 R = normalize(-reflect(L,N));           

gl_FragColor = vec4(1,0,0,1);       

return;                       

}

Did you already see some strange things like this ? Do you have an idea of what can cause the problem ?

Thanks.

0 Likes
0 Replies