1

从屏幕坐标计算世界空间视图矢量(使用 Click to zoom in WebGL)后,给定一个顶点数组,我如何找到世界空间中最近的交点?

4

1 回答 1

0

您针对射线测试每个三角形。如果射线击中三角形,并且如果它比已知的最近击中更近,那么您会记住该点。循环直到你没有更多的三角形。

http://www.lighthouse3d.com/tutorials/maths/ray-triangle-intersection/

如果您使用许多三角形,那可能会很慢,因此您可以构建一个 b-tree、octree、KD-tree 或多分辨率网格碰撞结构,并在测试包含在叶子中的三角形之前首先执行广泛的相位碰撞结构体。

于 2012-01-04T23:42:42.943 回答