Przeglądaj źródła

Merge pull request #19420 from Mugen87/dev49

VRMLLoader: Handle Collision node like other grouping nodes.
Mr.doob 5 lat temu
rodzic
commit
cd7a88859b

+ 14 - 6
examples/js/loaders/VRMLLoader.js

@@ -584,6 +584,7 @@ THREE.VRMLLoader = ( function () {
 
 
 					case 'Group':
 					case 'Group':
 					case 'Transform':
 					case 'Transform':
+					case 'Collision':
 						build = buildGroupingNode( node );
 						build = buildGroupingNode( node );
 						break;
 						break;
 
 
@@ -664,7 +665,6 @@ THREE.VRMLLoader = ( function () {
 
 
 					case 'Anchor':
 					case 'Anchor':
 					case 'Billboard':
 					case 'Billboard':
-					case 'Collision':
 
 
 					case 'Inline':
 					case 'Inline':
 					case 'LOD':
 					case 'LOD':
@@ -729,6 +729,14 @@ THREE.VRMLLoader = ( function () {
 
 
 					switch ( fieldName ) {
 					switch ( fieldName ) {
 
 
+						case 'bboxCenter':
+							// field not supported
+							break;
+
+						case 'bboxSize':
+							// field not supported
+							break;
+
 						case 'center':
 						case 'center':
 							// field not supported
 							// field not supported
 							break;
 							break;
@@ -737,6 +745,10 @@ THREE.VRMLLoader = ( function () {
 							parseFieldChildren( fieldValues, object );
 							parseFieldChildren( fieldValues, object );
 							break;
 							break;
 
 
+						case 'collide':
+							// field not supported
+							break;
+
 						case 'rotation':
 						case 'rotation':
 							var axis = new THREE.Vector3( fieldValues[ 0 ], fieldValues[ 1 ], fieldValues[ 2 ] );
 							var axis = new THREE.Vector3( fieldValues[ 0 ], fieldValues[ 1 ], fieldValues[ 2 ] );
 							var angle = fieldValues[ 3 ];
 							var angle = fieldValues[ 3 ];
@@ -755,11 +767,7 @@ THREE.VRMLLoader = ( function () {
 							object.position.set( fieldValues[ 0 ], fieldValues[ 1 ], fieldValues[ 2 ] );
 							object.position.set( fieldValues[ 0 ], fieldValues[ 1 ], fieldValues[ 2 ] );
 							break;
 							break;
 
 
-						case 'bboxCenter':
-							// field not supported
-							break;
-
-						case 'bboxSize':
+						case 'proxy':
 							// field not supported
 							// field not supported
 							break;
 							break;
 
 

+ 14 - 6
examples/jsm/loaders/VRMLLoader.js

@@ -622,6 +622,7 @@ var VRMLLoader = ( function () {
 
 
 					case 'Group':
 					case 'Group':
 					case 'Transform':
 					case 'Transform':
+					case 'Collision':
 						build = buildGroupingNode( node );
 						build = buildGroupingNode( node );
 						break;
 						break;
 
 
@@ -702,7 +703,6 @@ var VRMLLoader = ( function () {
 
 
 					case 'Anchor':
 					case 'Anchor':
 					case 'Billboard':
 					case 'Billboard':
-					case 'Collision':
 
 
 					case 'Inline':
 					case 'Inline':
 					case 'LOD':
 					case 'LOD':
@@ -767,6 +767,14 @@ var VRMLLoader = ( function () {
 
 
 					switch ( fieldName ) {
 					switch ( fieldName ) {
 
 
+						case 'bboxCenter':
+							// field not supported
+							break;
+
+						case 'bboxSize':
+							// field not supported
+							break;
+
 						case 'center':
 						case 'center':
 							// field not supported
 							// field not supported
 							break;
 							break;
@@ -775,6 +783,10 @@ var VRMLLoader = ( function () {
 							parseFieldChildren( fieldValues, object );
 							parseFieldChildren( fieldValues, object );
 							break;
 							break;
 
 
+						case 'collide':
+							// field not supported
+							break;
+
 						case 'rotation':
 						case 'rotation':
 							var axis = new Vector3( fieldValues[ 0 ], fieldValues[ 1 ], fieldValues[ 2 ] );
 							var axis = new Vector3( fieldValues[ 0 ], fieldValues[ 1 ], fieldValues[ 2 ] );
 							var angle = fieldValues[ 3 ];
 							var angle = fieldValues[ 3 ];
@@ -793,11 +805,7 @@ var VRMLLoader = ( function () {
 							object.position.set( fieldValues[ 0 ], fieldValues[ 1 ], fieldValues[ 2 ] );
 							object.position.set( fieldValues[ 0 ], fieldValues[ 1 ], fieldValues[ 2 ] );
 							break;
 							break;
 
 
-						case 'bboxCenter':
-							// field not supported
-							break;
-
-						case 'bboxSize':
+						case 'proxy':
 							// field not supported
 							// field not supported
 							break;
 							break;