浏览代码

MeshMatcapMaterial: Add support for vertex tangents (#22248)

* Clean up

* Added vertex tangent support
WestLangley 4 年之前
父节点
当前提交
2aebeebd21

+ 7 - 0
src/renderers/shaders/ShaderLib/meshmatcap_frag.glsl.js

@@ -11,6 +11,13 @@ varying vec3 vViewPosition;
 
 	varying vec3 vNormal;
 
+	#ifdef USE_TANGENT
+
+		varying vec3 vTangent;
+		varying vec3 vBitangent;
+
+	#endif
+
 #endif
 
 #include <common>

+ 14 - 0
src/renderers/shaders/ShaderLib/meshmatcap_vert.glsl.js

@@ -7,6 +7,13 @@ varying vec3 vViewPosition;
 
 	varying vec3 vNormal;
 
+	#ifdef USE_TANGENT
+
+		varying vec3 vTangent;
+		varying vec3 vBitangent;
+
+	#endif
+
 #endif
 
 #include <common>
@@ -34,6 +41,13 @@ void main() {
 
 		vNormal = normalize( transformedNormal );
 
+		#ifdef USE_TANGENT
+
+			vTangent = normalize( transformedTangent );
+			vBitangent = normalize( cross( vNormal, vTangent ) * tangent.w );
+
+		#endif
+
 	#endif
 
 	#include <begin_vertex>