瀏覽代碼

Added morphTargets support to MeshNormalMaterial. Fixes #3200.

Mr.doob 12 年之前
父節點
當前提交
905ab19acc
共有 3 個文件被更改,包括 7 次插入3 次删除
  1. 2 0
      src/materials/MeshNormalMaterial.js
  2. 1 1
      src/renderers/WebGLRenderer.js
  3. 4 2
      src/renderers/WebGLShaders.js

+ 2 - 0
src/materials/MeshNormalMaterial.js

@@ -23,6 +23,8 @@ THREE.MeshNormalMaterial = function ( parameters ) {
 	this.wireframe = false;
 	this.wireframeLinewidth = 1;
 
+	this.morphTargets = false;
+
 	this.setValues( parameters );
 
 };

+ 1 - 1
src/renderers/WebGLRenderer.js

@@ -6431,8 +6431,8 @@ THREE.WebGLRenderer = function ( parameters ) {
 
 		].join("\n");
 
-		var glFragmentShader = getShader( "fragment", prefix_fragment + fragmentShader );
 		var glVertexShader = getShader( "vertex", prefix_vertex + vertexShader );
+		var glFragmentShader = getShader( "fragment", prefix_fragment + fragmentShader );
 
 		_gl.attachShader( program, glVertexShader );
 		_gl.attachShader( program, glFragmentShader );

+ 4 - 2
src/renderers/WebGLShaders.js

@@ -2448,12 +2448,14 @@ THREE.ShaderLib = {
 
 			"varying vec3 vNormal;",
 
+			THREE.ShaderChunk[ "morphtarget_pars_vertex" ],
+
 			"void main() {",
 
-				"vec4 mvPosition = modelViewMatrix * vec4( position, 1.0 );",
 				"vNormal = normalize( normalMatrix * normal );",
 
-				"gl_Position = projectionMatrix * mvPosition;",
+				THREE.ShaderChunk[ "morphtarget_vertex" ],
+				THREE.ShaderChunk[ "default_vertex" ],
 
 			"}"