tilemap设置了碰撞器和static刚体,玩家也设置了碰撞器和动态刚体。
运行时玩家左右移动正常会被墙挡住,
上下移动居然能穿墙,虽然碰到墙时会停住,但继续按住移动就能穿墙。这是为什么?
移动代码如下:
void Update()
{
KeyBoardMove();
}
public void KeyBoardMove()
{
transform.Translate(Vector3.up * Input.GetAxis("Vertical") * playerSpeed * Time.deltaTime);
transform.Translate(Vector3.right * Input.GetAxis("Horizontal") * playerSpeed * Time.deltaTime);
}
tilemap设置

player设置

更奇怪的是玩家中的capsule collider2d中direction换成vertical后,嘿,不能穿墙了。
初学者有许多疑惑,求解答。谢谢 !
后续把移动代码使用velocity控制后能解决问题,但这是为什么啊?我去