Unity中物体碰撞后去掉相互之间的反弹力
最近自制了一个的角色控制器(没有重力的角色)时发现,角色碰撞到墙壁之后会有一个小小的反弹力导致角色有一个微弱的反弹位移,这样给人一种不好的感觉。
研究了一下,除了限制坐标轴( Rigidbody---Constraints---Freeze Rotation)外,还需要在FixedUpdate(注意这里是物理特性,应在这里写而不是Update函数内)里面写一句代码如下:
player.GetComponent<Rigidbody>().velocity = Vector3.zero;( Vector3.zero=new Vector3(0, 0, 0))
角色添加的组件Rigidbody设置如图所示:
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】凌霞软件回馈社区,博客园 & 1Panel & Halo 联合会员上线
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】博客园社区专享云产品让利特惠,阿里云新客6.5折上折
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步