diff options
author | mano-wii <germano.costa@ig.com.br> | 2018-10-15 15:50:31 +0300 |
---|---|---|
committer | mano-wii <germano.costa@ig.com.br> | 2018-10-15 15:50:31 +0300 |
commit | c2afa3ef4607d62664e9766f43424c80642bf060 (patch) | |
tree | ceee0817fc16634f7df4c3fd43e3d795c4c50b98 /source/blender/draw | |
parent | 2875fb9e7bbc183ae2c40f9e0c8961ace12e767e (diff) |
Edit Mesh: Add comments explaining weirdness in the code.
Diffstat (limited to 'source/blender/draw')
-rw-r--r-- | source/blender/draw/modes/shaders/edit_mesh_overlay_geom_tri.glsl | 14 |
1 files changed, 8 insertions, 6 deletions
diff --git a/source/blender/draw/modes/shaders/edit_mesh_overlay_geom_tri.glsl b/source/blender/draw/modes/shaders/edit_mesh_overlay_geom_tri.glsl index 9e56a1f2b3c..a2f91381d57 100644 --- a/source/blender/draw/modes/shaders/edit_mesh_overlay_geom_tri.glsl +++ b/source/blender/draw/modes/shaders/edit_mesh_overlay_geom_tri.glsl @@ -41,12 +41,7 @@ out float facing; #define Z_OFFSET 0.0 #endif -/* project to screen space */ -vec2 proj(vec4 pos) -{ - return (0.5 * (pos.xy / pos.w) + 0.5) * viewportSize; -} - +/* Some bugged AMD drivers need these global variables. See T55961 */ #ifdef VERTEX_SELECTION vec3 vertex_color[3]; #endif @@ -55,6 +50,12 @@ vec3 vertex_color[3]; float v_facing[3]; #endif +/* project to screen space */ +vec2 proj(vec4 pos) +{ + return (0.5 * (pos.xy / pos.w) + 0.5) * viewportSize; +} + void doVertex(int v) { #ifdef VERTEX_SELECTION @@ -169,6 +170,7 @@ void main() #endif #ifdef VERTEX_FACING + /* Weird but some buggy AMD drivers need this. */ v_facing[0] = vFacing[0]; v_facing[1] = vFacing[1]; v_facing[2] = vFacing[2]; |