【解决】Non-convex MeshCollider with non-kinematic Rigidbody is no longer supported since Unity 5...
开发平台:Unity 2021.3.7f1c1
一、问题描述
Non-convex MeshCollider with non-kinematic Rigidbody is no longer supported since Unity 5. If you want to use a non-convex mesh either make the Rigidbody kinematic or remove the Rigidbody component. Scene hierarchy path “XXXX”, Mesh asset path “XXX/XXX/XX” Mesh name “XXX”
翻译:自 Unity 5 起,不再支持具有非运动学刚体的非凸网格碰撞体。如果要使用非凸网格,请使刚体运动或移除刚体组件。场景层次结构路径“XXXX”,网格资产路径“XXX/XXX/XXX” 资产名 “XXX”。
注意:这是一个由于 Unity 引擎自身造成的问题。
二、解决方案
2.1 常规处理方法:按照提示要求进行操作
由于 Unity 自5之后舍弃部分支持。根据提示内容大致有一下操作可选项。
-
解决方法01:勾选对应模型下 Mesh Collider 组件中 Convex 选项使用凸面作为替代。
-
解决方法02:删除对应模型下 Rigidbody 组件。不支持非凸面的提示信息是在 Rigidbody 组件被添加时发生。
2.2 特殊情况处理:一些应用场景需要 Mesh Collider 与 Rigidbody 组件进行物理模拟
仍然存在一些行业中某些情况下需要配合两类组件进行某种情况下的屋里模拟。考虑到必要性,建议使用 Box Collider 组合作为 Mesh Collider 的替代方案进行。
对于结构复杂,例如工业上多层架构的物料盘,应建立多个 Box Collider 进行碰撞区域覆盖。(原则上,等价于使用禁用 Mesh Renderer 并附有 Box Collider 的 Cube)