当我只按一次"c“键时,角色就会像我想要的那样蜷缩。但是当我抱着"c“蹲下时,这个角色就会被埋在地面的对撞机下面。
//Crouch + Animation
if (Input.GetButtonDown("Crouch"))
{
spriteRenderer.sprite = crouching;
player_collider.size = crouching_size;
anim.SetBool("crouch_ing", true);
}
if (Input.GetButtonUp("Crouch"))
{
spriteRenderer.sprite = standing;
player_collider.size = standing_size;
anim.SetBool("crouch_ing", false);
}
//--------------------发布于 2022-08-30 22:18:09
我使用这段代码来再现问题,但我无法完全实现它。我跳过了动画部分,但在点击按钮和按住按钮时,我得到了完全相同的结果。
我设法让玩家出现在平台内,通过改变对撞机的偏移量。对撞机的大小在两种姿势中都是正确的,但是当你不调整偏移量到新的尺寸时,它可能会使你的对撞机不在你想要的地方。
尽管如此,玩家出现在地面对撞机下面的原因是玩家的对撞机边界与图形不匹配。我有两个想法来解决这个问题:
https://stackoverflow.com/questions/73546852
复制相似问题