Selaa lähdekoodia

poseNode single object or array

Lewy Blue 7 vuotta sitten
vanhempi
commit
9e0ad63d11
1 muutettua tiedostoa jossa 16 lisäystä ja 3 poistoa
  1. 16 3
      examples/js/loaders/FBXLoader.js

+ 16 - 3
examples/js/loaders/FBXLoader.js

@@ -2043,10 +2043,23 @@
 
 				if ( BindPoseNode[ nodeID ].attrType === 'BindPose' ) {
 
-					var poseNode = BindPoseNode[ nodeID ].subNodes.PoseNode;
+					var poseNodes = BindPoseNode[ nodeID ].subNodes.PoseNode;
 
-					var rawMatWrd = new THREE.Matrix4().fromArray( poseNode.subNodes.Matrix.properties.a );
-					worldMatrices.set( parseInt( poseNode.properties.Node ), rawMatWrd );
+					if ( Array.isArray( poseNodes ) ) {
+
+						poseNodes.forEach( function ( node ) {
+
+							var rawMatWrd = new THREE.Matrix4().fromArray( node.subNodes.Matrix.properties.a );
+							worldMatrices.set( parseInt( node.properties.Node ), rawMatWrd );
+
+						} );
+
+					} else {
+
+						var rawMatWrd = new THREE.Matrix4().fromArray( poseNodes.subNodes.Matrix.properties.a );
+						worldMatrices.set( parseInt( poseNodes.properties.Node ), rawMatWrd );
+
+					}
 
 				}