blob: aa544ea82ee1d98741f7cc6f595bf9690101cfe5 (
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
28
29
30
|
uniform mat4 ModelViewProjectionMatrix;
in vec3 pos;
#ifndef UNIFORM_ID
uniform uint offset;
in uint color;
flat out vec4 id;
#endif
void main()
{
#ifndef UNIFORM_ID
id = vec4(
(((color + offset) ) & uint(0xFF)) * (1.0f / 255.0f),
(((color + offset) >> 8) & uint(0xFF)) * (1.0f / 255.0f),
(((color + offset) >> 16) & uint(0xFF)) * (1.0f / 255.0f),
(((color + offset) >> 24) ) * (1.0f / 255.0f));
#endif
vec4 pos_4d = vec4(pos, 1.0);
gl_Position = ModelViewProjectionMatrix * pos_4d;
#ifdef USE_WORLD_CLIP_PLANES
/* Warning: ModelMatrix is typically used but select drawing is different. */
world_clip_planes_calc_clip_distance(pos);
#endif
}
|