diff options
author | Brecht Van Lommel <brechtvanlommel@gmail.com> | 2017-08-15 18:52:58 +0300 |
---|---|---|
committer | Brecht Van Lommel <brechtvanlommel@gmail.com> | 2017-08-15 19:52:25 +0300 |
commit | b68b26c265d0984da08773196c0d673881fd6c13 (patch) | |
tree | 68eccc4dd93aff57942913c7df000e3c49d088aa /source/blender/draw/modes/shaders | |
parent | 84d33023ab4dea1424165a293d0fb8fd5f06c3da (diff) |
Attempt to fix GLSL errors on Blender startup.
I couldn't reproduce either, but calling min() with different argument
data types and indexing vectors with an index not known at compile time
seem likely to cause problems.
Ref T52404, T52404.
Diffstat (limited to 'source/blender/draw/modes/shaders')
-rw-r--r-- | source/blender/draw/modes/shaders/object_particle_prim_vert.glsl | 14 |
1 files changed, 8 insertions, 6 deletions
diff --git a/source/blender/draw/modes/shaders/object_particle_prim_vert.glsl b/source/blender/draw/modes/shaders/object_particle_prim_vert.glsl index a950a9b86ba..54ae319307a 100644 --- a/source/blender/draw/modes/shaders/object_particle_prim_vert.glsl +++ b/source/blender/draw/modes/shaders/object_particle_prim_vert.glsl @@ -39,16 +39,18 @@ void main() } #ifdef USE_AXIS - finalColor.rgb = vec3(0.0); - finalColor[axis] = 1.0; + if (axis == 0) + finalColor = vec4(1.0, 0.0, 0.0, 1.0); + else if (axis == 1) + finalColor = vec4(0.0, 1.0, 0.0, 1.0); + else + finalColor = vec4(0.0, 0.0, 1.0, 1.0); #else if (val < 0.0) { - finalColor.rgb = color; + finalColor = vec4(color, 1.0); } else { - finalColor.rgb = texture(ramp, val).rgb; + finalColor = vec4(texture(ramp, val).rgb, 1.0); } #endif - - finalColor.a = 1.0; } |