在three.js中编写盒式光线碰撞检测的最佳方法是什么?

时间:2011-09-23 16:45:44

标签: javascript 3d collision-detection webgl three.js

此实验中的对象随机移动:http://deeplogic.info/project/webGL/

使用three.js库为此编写盒式光线碰撞检测的最佳方法是什么?

1 个答案:

答案 0 :(得分:0)

如果你正在使用光线追踪:

对于这两个盒子,检查它的12个边缘与另一个盒子的6个面孔。如果它们都不相交,则可以确定没有碰撞。

要检查一个方框与另一个方框的边缘: 定义直接沿边缘的无限光线。 定义一个位于另一个盒子面部的无限平面。 使用光线平面交点找到无限平面和无限光线的交点。 检查交叉点:a)位于盒子的边缘,b)位于另一个盒子的面部。如果是这样,你有一个交集!

一旦你知道它发生了什么事情,这是一个全新的话题。