计算网格碰撞体在 Unity C# 中是否需要凸面或凹面?



在 Unity 中,在运行时,在处理我们现在想要为其创建网格碰撞器的未知用户生成的形状时,有没有办法计算网格是否应该设置为凸,即 meshFilter 是否有向内曲线?(通过查看手动设置此属性很容易,但在这里我处理的是未知的事先形状。谢谢!

对于网格中的每个三角形,您需要计算其面法线。 然后对于每个面法线,检查每个顶点的点积符号,看看它是否在三角形后面。如果所有顶点都在所有三角形后面,则它是凸的。

就个人而言,我只会标记所有凹陷并继续前进。

最新更新