Parcourir la source

Fix WebXR Hand pointer examples (#22815)

DM il y a 3 ans
Parent
commit
f27b3ce7de

+ 6 - 6
examples/jsm/webxr/OculusHandPointerModel.js

@@ -329,31 +329,31 @@ class OculusHandPointerModel extends THREE.Object3D {
 
 
 	}
 	}
 
 
-	intersectObject( object ) {
+	intersectObject( object, recursive = true ) {
 
 
 		if ( this.raycaster ) {
 		if ( this.raycaster ) {
 
 
-			return this.raycaster.intersectObject( object );
+			return this.raycaster.intersectObject( object, recursive );
 
 
 		}
 		}
 
 
 	}
 	}
 
 
-	intersectObjects( objects ) {
+	intersectObjects( objects, recursive = true ) {
 
 
 		if ( this.raycaster ) {
 		if ( this.raycaster ) {
 
 
-			return this.raycaster.intersectObjects( objects, false );
+			return this.raycaster.intersectObjects( objects, recursive );
 
 
 		}
 		}
 
 
 	}
 	}
 
 
-	checkIntersections( objects ) {
+	checkIntersections( objects, recursive = false ) {
 
 
 		if ( this.raycaster && ! this.attached ) {
 		if ( this.raycaster && ! this.attached ) {
 
 
-			const intersections = this.raycaster.intersectObjects( objects, false );
+			const intersections = this.raycaster.intersectObjects( objects, recursive );
 			const direction = new THREE.Vector3( 0, 0, - 1 );
 			const direction = new THREE.Vector3( 0, 0, - 1 );
 			if ( intersections.length > 0 ) {
 			if ( intersections.length > 0 ) {
 
 

+ 1 - 1
examples/webxr_vr_handinput_pointerclick.html

@@ -101,7 +101,7 @@
 					this.queries.intersectable.results.forEach( entity => {
 					this.queries.intersectable.results.forEach( entity => {
 
 
 						const object = entity.getComponent( Object3D ).object;
 						const object = entity.getComponent( Object3D ).object;
-						const intersections = hp.intersectObject( object );
+						const intersections = hp.intersectObject( object, false );
 						if ( intersections && intersections.length > 0 ) {
 						if ( intersections && intersections.length > 0 ) {
 
 
 							if ( distance == null || intersections[ 0 ].distance < distance ) {
 							if ( distance == null || intersections[ 0 ].distance < distance ) {

+ 1 - 1
examples/webxr_vr_handinput_pointerdrag.html

@@ -151,7 +151,7 @@
 					this.queries.intersectable.results.forEach( entity => {
 					this.queries.intersectable.results.forEach( entity => {
 
 
 						const object = entity.getComponent( Object3D ).object;
 						const object = entity.getComponent( Object3D ).object;
-						const intersections = hp.intersectObject( object );
+						const intersections = hp.intersectObject( object, false );
 						if ( intersections && intersections.length > 0 ) {
 						if ( intersections && intersections.length > 0 ) {
 
 
 							if ( distance == null || intersections[ 0 ].distance < distance ) {
 							if ( distance == null || intersections[ 0 ].distance < distance ) {