From f628cfd2970a8c215aa4366e76a642cfec3c43ca Mon Sep 17 00:00:00 2001 From: Luca Rood Date: Wed, 17 May 2017 16:41:42 +0200 Subject: [PATCH] Fix T51535: View vector inverting in pespective/ortho --- .../draw/engines/clay/shaders/particle_strand_frag.glsl | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/source/blender/draw/engines/clay/shaders/particle_strand_frag.glsl b/source/blender/draw/engines/clay/shaders/particle_strand_frag.glsl index 396cc5b7e81..b4dff283b18 100644 --- a/source/blender/draw/engines/clay/shaders/particle_strand_frag.glsl +++ b/source/blender/draw/engines/clay/shaders/particle_strand_frag.glsl @@ -9,6 +9,7 @@ layout(std140) uniform material_block { Material shader_param[MAX_MATERIAL]; }; +uniform mat4 ProjectionMatrix; uniform sampler2DArray matcaps; uniform int mat_id; @@ -116,7 +117,7 @@ void hue_sat(float hue, float sat, float value, inout vec3 col) void main() { - vec3 viewvec = normalize(viewPosition); + vec3 viewvec = (ProjectionMatrix[3][3] == 0.0) ? normalize(viewPosition) : vec3(0.0, 0.0, -1.0); vec3 ortho = normalize(cross(viewPosition, tangent)); vec3 norm = normalize(cross(ortho, tangent));