2

通过在 Unity 中使用 Physics.Raycast,我们可以通过点、法线、对撞机名称轻松获取命中信息……但是如何获得光线从对撞机射出的“点”?

非常感谢您花时间思考这个问题。

4

1 回答 1

1

您可以尝试仅在被击中的对撞机上投射反向光线,以便确定光线从后面进入的位置?下面的代码可能有效。

RaycastHit firstHit;
Ray firstRay = new Ray (origin, direction);
Physics.Raycast (firstRay, out firstHit, distance);

Vector3 reverseOrigin = firstRay.origin + (firstRay.direction * distance);
RaycastHit reverseHit;
Ray reverseRay = new Ray (reverseOrigin, (firstRay.direction * -1));
firstHit.collider.Raycast (reverseRay, out reverseHit, distance);
于 2014-07-01T08:26:46.847 回答