包含此页的版本:
不含此页的版本:
网格碰撞器自由形状的碰撞器组件,它接受网格体参考来定义其碰撞表面形状。更多信息
请参阅术语表匹配网格Unity 的主要图形原语。网格体构成了 3D 世界的很大一部分。Unity 支持三角或四边形多边形网格。Nurbs、Nurms、Subdiv 曲面必须转换为多边形。更多信息
请参阅术语表准确地说,为了极其精确碰撞当物理引擎检测到两个游戏对象的碰撞器接触或重叠时,当至少一个游戏对象具有刚体组件并且处于运动状态时,就会发生碰撞。更多信息
请参阅术语表模拟。
网格体碰撞体一种不可见的形状,用于处理对象的物理碰撞。碰撞体不需要与对象的网格体完全相同的形状 - 在游戏中,粗略的近似值通常更有效且难以区分。更多信息
请参阅术语表构建其碰撞几何体以匹配分配的网格体,包括其形状、位置和比例。这样做的好处是,你可以使碰撞器的形状与可见网格体的形状完全相同,以便游戏对象Unity 场景中的基本对象,可以表示角色、道具、风景、相机、航路点等。游戏对象的功能由附加到它的组件定义。更多信息
请参阅术语表,从而创建更精确、更真实的碰撞。
网格体碰撞器的精度比原始碰撞器(如球体、盒体和胶囊体碰撞器)具有更高的处理开销。因此,最佳做法是仅将网格体碰撞器用于不需要大量处理能力的碰撞器,或者用于原始碰撞器或复合碰撞器开销较大的碰撞。一个好的方法是将网格体碰撞器用于静态场景场景包含游戏的环境和菜单。将每个唯一的场景文件视为一个独特的关卡。在每个场景中,你放置你的环境、障碍物和装饰品,基本上是将你的游戏设计和构建成碎片。更多信息
请参阅术语表geometry 和用于移动游戏对象的复合碰撞器。
在大多数情况下,网格碰撞器提供与复合碰撞器类似的解决方案:它们的主要目的是为具有复杂形状的项目提供精确的碰撞。在考虑网格体碰撞器的优点和局限性时,你通常会将它们与复合碰撞器进行比较。
网格碰撞器的主要优点是:
但是,网格碰撞器也有一些重大限制:
该决定始终是项目唯一的,因此您应该测试每个配置并使用 物理分析器帮助您优化游戏的窗口。它显示了在游戏的各个领域花费了多少时间。例如,它可以报告渲染、动画制作或游戏逻辑所花费的时间百分比。更多信息
请参阅术语表以了解碰撞器设置的效率。
网格碰撞器的行为取决于它们被标记为凹面还是凸面。默认情况下,PhysX 将网格碰撞体视为凹面。
在数学中,“凹”和“凸”是用于描述形状的术语:
凸形只有向外弯曲的线条(例如,球)。连接其边界上两点的任何线段都完全保留在形状内。 凹形至少有一个边界向内弯曲的“凹陷”或凹痕(例如,香蕉)。连接其边界上两点的线段有时可能会穿过形状外部的空间。
凹面碰撞器有一些限制: 凹面网格体碰撞器只能是静态的(即,它们没有物理形体)或运动学的(它们具有运动学物理形体)。有关更多详细信息,请参阅碰撞体类型。 凹面网格体碰撞器只能与凸面碰撞器碰撞。如果两个凹面碰撞器接触,则不会发生碰撞。
如果你有两个需要碰撞的凹面网格体碰撞器,你可以执行以下作之一,具体取决于碰撞所需的准确度:
如果不需要在形状的凹面部分发生精确碰撞,请在检查器一个 Unity 窗口,显示有关当前选定游戏对象、资产或项目设置的信息,允许您检查和编辑值。更多信息
请参阅术语表(启用“凸”)。这将生成一个新的凸面碰撞器形状,称为“外壳”,它类似于指定的凹面网格体,但填充了任何凹线,以使它们凸出。
如果需要在形状的凹面部分发生精确的碰撞,请使用由凸面碰撞器制成的复合碰撞器。
理想情况下,分配给网格体碰撞体的网格体不应在运行时改变形状。
每次网格体改变形状时,都会物理引擎模拟物理系统各个方面的系统,使物体能够正确加速并受到碰撞、重力和其他力的影响。更多信息
请参阅术语表需要重新计算网格碰撞体几何体,这会导致大量性能开销。因此,你不应修改网格体碰撞器正在使用的网格体的几何体。如果网格体需要在运行时碰撞和改变形状,通常最好使用基元碰撞器或复合碰撞器来近似网格体形状。
碰撞网格中的面是单侧的。这意味着游戏对象可以从一个方向穿过它们,但从另一个方向与它们发生碰撞。
有关网格碰撞器使用的底层算法和数据结构的详细信息,请参阅有关几何体的 Nvidia PhysX 文档。