diff options
author | Clément Foucault <foucault.clem@gmail.com> | 2018-11-07 12:25:30 +0300 |
---|---|---|
committer | Clément Foucault <foucault.clem@gmail.com> | 2018-11-07 15:25:28 +0300 |
commit | faecd16d3168981b5af95be613e5a91de5c28133 (patch) | |
tree | 1b187cd4abde28779791d1178354802512140215 | |
parent | f1fc5ba5375cbdd4677cc7a863b0c1fa7c8e770c (diff) |
Eevee: Fix volumetric broken after recent change
-rw-r--r-- | source/blender/gpu/shaders/gpu_shader_material.glsl | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/source/blender/gpu/shaders/gpu_shader_material.glsl b/source/blender/gpu/shaders/gpu_shader_material.glsl index e5740babebc..eebc19328b2 100644 --- a/source/blender/gpu/shaders/gpu_shader_material.glsl +++ b/source/blender/gpu/shaders/gpu_shader_material.glsl @@ -1734,7 +1734,11 @@ void node_tangentmap(vec4 attr_tangent, mat4 toworld, out vec3 tangent) void node_tangent(vec3 N, vec3 orco, mat4 objmat, mat4 toworld, out vec3 T) { +#ifndef VOLUMETRICS N = normalize(worldNormal); +#else + N = (toworld * vec4(N, 0.0)).xyz; +#endif T = (objmat * vec4(orco, 0.0)).xyz; T = cross(N, normalize(cross(T, N))); } @@ -1746,7 +1750,11 @@ void node_geometry( out float backfacing, out float pointiness) { position = worldPosition; +#ifndef VOLUMETRICS normal = normalize(worldNormal); +#else + normal = (toworld * vec4(N, 0.0)).xyz; +#endif tangent_orco_z(orco, orco); node_tangent(N, orco, objmat, toworld, tangent); true_normal = normal; |