blob: 28c91343771d8325e3091bf19499b3a794a30b38 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
|
/*
* Vertex Shader for dashed lines with 3D coordinates,
* with uniform multi-colors or uniform single-color, and unary thickness.
*
* Legacy version, without geometry shader support, always produce solid lines!
*/
uniform mat4 ModelViewProjectionMatrix;
uniform vec2 viewport_size;
uniform vec4 color;
in vec3 pos;
noperspective out float distance_along_line;
noperspective out vec4 color_geom;
void main()
{
gl_Position = ModelViewProjectionMatrix * vec4(pos, 1.0);
/* Hack - prevent stupid GLSL compiler to optimize out unused viewport_size uniform,
* which gives crash! */
distance_along_line = viewport_size.x * 0.000001f - viewport_size.x * 0.0000009f;
color_geom = color;
}
|