平面射线交叉口C#

时间:2012-11-19 21:06:24

标签: game-engine game-physics raytracing

我有这个平面光线交叉代码:http://pastebin.com/2VuPeZ5r 我认为我正确计算,但如果没有交集,我需要返回null。 我该如何检查?

由于

1 个答案:

答案 0 :(得分:1)

“没有交集”是什么意思?任何光线都会在某处与某个平面相交,除了光线与平面法线完全垂直的退化情况。要检测该情况,请测试Vector3.Dot(Norm, ray.Dir) == 0

如果您想知道交叉点是否位于射线原点的前面或后面,请测试t > 0