[Bf-blender-cvs] [faecd16d316] blender2.8: Eevee: Fix volumetric broken after recent change

Clément Foucault noreply at git.blender.org
Wed Nov 7 13:25:32 CET 2018


Commit: faecd16d3168981b5af95be613e5a91de5c28133
Author: Clément Foucault
Date:   Wed Nov 7 10:25:30 2018 +0100
Branches: blender2.8
https://developer.blender.org/rBfaecd16d3168981b5af95be613e5a91de5c28133

Eevee: Fix volumetric broken after recent change

===================================================================

M	source/blender/gpu/shaders/gpu_shader_material.glsl

===================================================================

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;



More information about the Bf-blender-cvs mailing list