c5d6198fc21ad2294ed9003a8ede8b365d6b934f
[blender.git] / source / blender / draw / modes / shaders / paint_wire_frag.glsl
1
2 flat in int finalFlag;
3 out vec4 fragColor;
4
5 #define VERTEX_SELECTED (1 << 0)
6 #define VERTEX_HIDE     (1 << 4)
7
8 void main()
9 {
10         if (bool(finalFlag & VERTEX_HIDE)) {
11                 discard;
12         }
13
14         /* Apply depth offset by taking slope and distance into account. */
15         gl_FragDepth = gl_FragCoord.z - mix(exp2(-10), exp2(-23), gl_FragCoord.z) - 2.0 * fwidth(gl_FragCoord.z);
16
17 #ifdef VERTEX_MODE
18         vec4 colSel = colorEdgeSelect;
19         colSel.rgb = clamp(colSel.rgb - 0.2, 0.0, 1.0);
20 #else
21         const vec4 colSel = vec4(1.0, 1.0, 1.0, 1.0);
22 #endif
23
24         fragColor = bool(finalFlag & VERTEX_SELECTED) ? colSel : colorWire;
25 }