请注意gif:
有两个对象。
左圆对象=圆colider2D +刚体2D(冻结位置Y,冻结旋转Z,移动脚本
移动脚本:
void Update()
{
if(Input.GetAxisRaw("Horizontal") > 0){
transform.Translate(Vector2.right * 2f * Time.deltaTime);
}
}
直角正方形物体=正方形colider2D +刚体2D(冻结位置Y,冻结位置X,冻结旋转Z)
当两个对象相遇时,将左对象向右移动,左对象向左和向右摇动。我不知道为什么 我希望这两个对象不要重叠。
如何预防该问题?
答案 0 :(得分:0)
您正在使用Transform移动非运动刚体,但您不应该这样做。要么使用AddForce()
移动对象,要么使用运动刚体和“平移”,但这需要做更多的工作,因为如果您想要干净整洁的东西需要自己管理碰撞。