Unity3d刚体Rigidbody与碰撞检测Collider
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Unity3d刚体Rigidbody与碰撞检测Collider相关的知识,希望对你有一定的参考价值。
做了一个碰撞的小Demo,用一个球去撞击一堵墙,结果在球和墙都设置了刚体和碰撞体的情况下,球穿过了墙。移动球的位置,球有时能穿过墙,有时会被墙阻挡。
对于球穿过了墙,这个问题,在网上找了一下答案,基本可以确定原因是:球的速度过快,碰撞检测设置了离散检测,即相隔一段比较长的时间检测一次碰撞是否发生,而在这个比较长的时间内,球和墙确实发生了碰撞,只是没有检测到;移动球的位置时,球相对墙的距离改变,也就改变了检测的时间点,所以有时候能穿过墙,有时候会被阻挡。
解决方法:1、增大碰撞体积,即修改碰撞体Collider的体积属性,Box Collider的Size,Sphere Collider的Radius属性。
2、缩短碰撞检测时间,即刚体Rigidbody的检测方式改为连续碰撞检测。
以上是关于Unity3d刚体Rigidbody与碰撞检测Collider的主要内容,如果未能解决你的问题,请参考以下文章
转载 unity3d 理解刚体(Rigidbody)和碰撞体(Collider)以及触发器(Is Trigger)
unity同一个gameobject上可以同时存在碰撞体和触发器吗