我正在玩三个JS并且想要确定网格是否完全位于另一个网格中。我写了一个小机器人,应该进入由玩家导航的家庭盒子。我知道如何检测碰撞,但是有一种简单的方法来检测一个物体是否在另一个物体内吗?
我可以计算homebox的中心位置并与机器人位置进行比较,但也许有一些内置于threejs。
答案 0 :(得分:3)
如果您为“机器人”制作了一个边界框({{1}})。和家庭'你可以使用the containsBox
method。所以像这样:
THREE.Box3
var robotBB = new THREE.Box3().setFromObject(robot);
var homeBB = new THREE.Box3().setFromObject(home)
和home
是您的对象。现在你可以做到:
robot
如果var robotIsHome = homeBB.containsBox(robotBB);
完全位于robotIsHome
内, robotBB
将为真。