浏览代码

use Matrix3.getNormalMatrix

Lewy Blue 7 年之前
父节点
当前提交
e1af1300ac
共有 1 个文件被更改,包括 7 次插入4 次删除
  1. 7 4
      examples/js/loaders/FBXLoader.js

+ 7 - 4
examples/js/loaders/FBXLoader.js

@@ -1099,12 +1099,15 @@
 
 
 			var normalAttribute = new THREE.Float32BufferAttribute( normalBuffer, 3 );
 			var normalAttribute = new THREE.Float32BufferAttribute( normalBuffer, 3 );
 
 
-			var normalsPreTransform = preTransform.clone().setPosition( new THREE.Vector3() );
+			// var normalsPreTransform = preTransform.clone().setPosition( new THREE.Vector3() );
 
 
-			// required when preTransform has a non-uniform scale component
-			normalsPreTransform.getInverse( normalsPreTransform ).transpose();
+			// // required when preTransform has a non-uniform scale component
+			// normalsPreTransform.getInverse( normalsPreTransform ).transpose();
 
 
-			normalsPreTransform.applyToBufferAttribute( normalAttribute );
+			// normalsPreTransform.applyToBufferAttribute( normalAttribute );
+
+			var normalMatrix = new THREE.Matrix3().getNormalMatrix( preTransform );
+			normalMatrix.applyToBufferAttribute( normalAttribute );
 
 
 			geo.addAttribute( 'normal', normalAttribute );
 			geo.addAttribute( 'normal', normalAttribute );