我有一艘船,那是Rigidbody
. 船上有一个MeshCollider
。这个对撞机被设置为凸的。
我已经有了以编程方式创建的基础Mesh
。那个网格上有一个MeshCollider
。这个对撞机没有设置为凸的。
大多数情况下,这是有效的。我不会从地板上摔下来。大约 40% 的时间我可以开车穿过墙壁。
为了解决这个问题,我为每个墙部分添加了一个GameObject
标记为静态的子项。这GameObject
有一个BoxCollider
。我将对撞机的大小设置为比墙的截面大 0.1。这意味着对撞机重叠,并且不应该有可以掉下来的间隙。
正如你在下图中看到的那样,我仍然可以开车穿过墙壁。
我应该怎么做才能不能开车穿过墙壁?
我试过了:
也将 a 添加
Rigidbody
到地面,标记为运动学。为此,我将MeshCollider
all 一起删除并使用了 allBoxCollider
s。我不得不使用所有BoxCollider
的 s,因为你可以有一个凸刚体。这并没有解决问题。我从播放器中删除
MeshCollider
并使用单个BoxCollider
. 此时MeshCollider
场景中不再有任何 s。这并没有解决问题。两者
Rigidbody
都设置为连续碰撞检测。
我想知道 UNity3d 物理系统是否可以正常工作:/