0

我正在使用投影仪和 raycaster 与 Three.Sprite 对象相交,但是,即使我触摸到图像边界之外,我也可以获得该对象。于是,我深入到了three.js文件中,找到了一段源码:

var intersectObject = function ( object, raycaster, intersects ) {  
if ( object instanceof THREE.Sprite ) {  
   matrixPosition.getPositionFromMatrix( object.matrixWorld ); 
var distance = raycaster.ray.distanceToPoint( matrixPosition );
if ( distance > object.scale.x ) {
    return intersects;
} 
intersects.push( { 
    distance: distance, 
    point: object.position, 
    face: null, 
    object: object 
});

我无法理解if ( distance > object.scale.x ),我认为这是我遇到的问题。我是 Threejs 的新手。我会穿吗?谢谢你的帮助!!

4

0 回答 0