使用网格对撞机检测触发器但没有凸面检查

时间:2017-02-22 04:30:08

标签: c# unity3d mesh-collider

我想要一个精确的网格对撞机用于触发但问题是我无法在不使网格对撞机凸出的情况下进行触发。是否有任何方法可以检测触发器而不会使网格对撞机凸出。或者我可以通过凸面检查使网格对撞机精确。

2 个答案:

答案 0 :(得分:1)

网格实际上是凸的吗?如果您可以从每个顶点到每个其他顶点绘制一条光线而不穿过网格的任何面,则它是凸的。如果你做不到,那就是凹陷。

凸面网格对撞机非常简单:启用convex设置,即可完成。

凹面网格对撞机是个问题。让他们表现得很好是很棘手的,而且他们的表现并不好。而不是这样做,几乎总是优选的是从多个凹面网格对撞机(或其他原始对撞机)中创建“复合对撞机”。只要您附加父组件(Rigidbody或脚本)来接收来自子项的碰撞事件,它就像它是一个实体对象一样。

答案 1 :(得分:0)

触发器必须凸出。这是PhysX的限制。最好的方法是在您使用的建模程序中打开对撞机网格,并将其拆分为多个网格,直到所有网格都凸出。