diff options
author | Brecht Van Lommel <brechtvanlommel@gmail.com> | 2019-12-08 18:34:41 +0300 |
---|---|---|
committer | Brecht Van Lommel <brechtvanlommel@gmail.com> | 2019-12-08 18:39:06 +0300 |
commit | 5c234a558c1ac0921f171fa38c59bb51b21e2b74 (patch) | |
tree | 3ee3e616b503c806df5d943456698137c3d998cb /source/blender/gpu/shaders/material | |
parent | 03cb991618b5ca0263c2fb4b3487b49143cf18fa (diff) |
Fix T72269: crash with Eevee and normal maps after recent math node changes
Reusing math node functions for normal map node caused problems.
Diffstat (limited to 'source/blender/gpu/shaders/material')
-rw-r--r-- | source/blender/gpu/shaders/material/gpu_shader_material_math_util.glsl | 5 | ||||
-rw-r--r-- | source/blender/gpu/shaders/material/gpu_shader_material_normal_map.glsl | 5 |
2 files changed, 5 insertions, 5 deletions
diff --git a/source/blender/gpu/shaders/material/gpu_shader_material_math_util.glsl b/source/blender/gpu/shaders/material/gpu_shader_material_math_util.glsl index d4f7866b206..e8487fb5d42 100644 --- a/source/blender/gpu/shaders/material/gpu_shader_material_math_util.glsl +++ b/source/blender/gpu/shaders/material/gpu_shader_material_math_util.glsl @@ -93,11 +93,6 @@ vec3 c_mod(vec3 a, vec3 b) return vec3(c_mod(a.x, b.x), c_mod(a.y, b.y), c_mod(a.z, b.z)); } -void vector_mix(float strength, vec3 a, vec3 b, out vec3 outVector) -{ - outVector = strength * a + (1 - strength) * b; -} - void invert_z(vec3 v, out vec3 outv) { v.z = -v.z; diff --git a/source/blender/gpu/shaders/material/gpu_shader_material_normal_map.glsl b/source/blender/gpu/shaders/material/gpu_shader_material_normal_map.glsl index a9be6bfa0ff..2b4a0204d97 100644 --- a/source/blender/gpu/shaders/material/gpu_shader_material_normal_map.glsl +++ b/source/blender/gpu/shaders/material/gpu_shader_material_normal_map.glsl @@ -20,3 +20,8 @@ void color_to_blender_normal_new_shading(vec3 color, out vec3 normal) { normal = vec3(2.0, -2.0, -2.0) * color - vec3(1.0); } + +void node_normal_map_mix(float strength, vec3 newnormal, vec3 oldnormal, out vec3 outnormal) +{ + outnormal = normalize(mix(oldnormal, newnormal, max(strength, 0.0))); +} |