Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.blender.org/blender.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorClément Foucault <foucault.clem@gmail.com>2018-11-07 12:25:30 +0300
committerClément Foucault <foucault.clem@gmail.com>2018-11-07 15:25:28 +0300
commitfaecd16d3168981b5af95be613e5a91de5c28133 (patch)
tree1b187cd4abde28779791d1178354802512140215 /source/blender/gpu
parentf1fc5ba5375cbdd4677cc7a863b0c1fa7c8e770c (diff)
Eevee: Fix volumetric broken after recent change
Diffstat (limited to 'source/blender/gpu')
-rw-r--r--source/blender/gpu/shaders/gpu_shader_material.glsl8
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;