Edit Mesh: Add support for draw option parameters
[blender.git] / source / blender / draw / modes / shaders / edit_mesh_overlay_facefill_vert.glsl
1
2 uniform mat4 ModelViewProjectionMatrix;
3 uniform ivec4 dataMask = ivec4(0xFF);
4
5 in vec3 pos;
6 in ivec4 data;
7
8 flat out vec4 faceColor;
9
10 #define FACE_ACTIVE     (1 << 2)
11 #define FACE_SELECTED   (1 << 3)
12 #define FACE_FREESTYLE  (1 << 4)
13
14 void main()
15 {
16         gl_Position = ModelViewProjectionMatrix * vec4(pos, 1.0);
17
18         ivec4 data_m = data & dataMask;
19
20         if ((data_m.x & FACE_ACTIVE) != 0)
21                 faceColor = colorFaceSelect;
22         else if ((data_m.x & FACE_SELECTED) != 0)
23                 faceColor = colorFaceSelect;
24         else if ((data_m.x & FACE_FREESTYLE) != 0)
25                 faceColor = colorFaceFreestyle;
26         else
27                 faceColor = colorFace;
28 }