Unity3d 游戏墙不起作用

Unity3d 游戏墙不起作用,unity3d,Unity3d,我一直在做一个关于团结的游戏,因为我是新来的,所以我必须研究如何做事。为了确保我的播放器不会飞离平台,所以视频告诉我制作墙壁,然后把它们放在一边。但是,当我试着看看如果我碰到他们会发生什么,如果我只是勉强按一下按钮,我很好,但是当我持续按住箭头键时,我就直接穿过了它。我甚至加厚了墙壁来防止它,但它不起作用。有人能帮我吗?发生这种情况的原因有很多 你的物体移动得太快了 您的一个对象,您的播放器或墙的碰撞器未正确设置 你的刚体设置不正确 你已经试着加厚墙了。你有没有检查过这是否也会使对撞机变厚?(我

我一直在做一个关于团结的游戏,因为我是新来的,所以我必须研究如何做事。为了确保我的播放器不会飞离平台,所以视频告诉我制作墙壁,然后把它们放在一边。但是,当我试着看看如果我碰到他们会发生什么,如果我只是勉强按一下按钮,我很好,但是当我持续按住箭头键时,我就直接穿过了它。我甚至加厚了墙壁来防止它,但它不起作用。有人能帮我吗?

发生这种情况的原因有很多

  • 你的物体移动得太快了
  • 您的一个对象,您的播放器或墙的碰撞器未正确设置
  • 你的刚体设置不正确
  • 你已经试着加厚墙了。你有没有检查过这是否也会使对撞机变厚?(我想您使用的是框对撞机)

    如果这不起作用,试着玩你的刚体配置。进入玩家和墙壁的刚体设置,并将两者的碰撞检测从离散动态设置为连续动态

    另一件可能发生的事情是,你的玩家正在推你的墙。可以通过向墙添加质量或简单地添加约束来防止这种情况发生

    我不完全确定,但我认为物理和碰撞在每次固定更新时都会被检测到。。。如果你的玩家的长度小于对撞机的0.02,你只需传送或卡住

    最简单的解决方案是增加长方体碰撞器。玩RigiBody可能会解决问题,如果这些都不起作用,你可以尝试
    Mathf.Clamp
    ,这也是一个很好的解决方案


    [编辑]根据Andrea的建议ジーティーオー 你也可以在你的刚体上设置“是运动学的”,这实际上是正确的方法。您将只能使用脚本移动

    发生这种情况的原因有很多

  • 你的物体移动得太快了
  • 您的一个对象,您的播放器或墙的碰撞器未正确设置
  • 你的刚体设置不正确
  • 你已经试着加厚墙了。你有没有检查过这是否也会使对撞机变厚?(我想您使用的是框对撞机)

    如果这不起作用,试着玩你的刚体配置。进入玩家和墙壁的刚体设置,并将两者的碰撞检测从离散动态设置为连续动态

    另一件可能发生的事情是,你的玩家正在推你的墙。可以通过向墙添加质量或简单地添加约束来防止这种情况发生

    我不完全确定,但我认为物理和碰撞在每次固定更新时都会被检测到。。。如果你的玩家的长度小于对撞机的0.02,你只需传送或卡住

    最简单的解决方案是增加长方体碰撞器。玩RigiBody可能会解决问题,如果这些都不起作用,你可以尝试
    Mathf.Clamp
    ,这也是一个很好的解决方案


    [编辑]根据Andrea的建议ジーティーオー 你也可以在你的刚体上设置“是运动学的”,这实际上是正确的方法。您将只能使用脚本移动

    你把合适的对撞机添加到墙上了吗?你把合适的对撞机添加到墙上了吗?回答得很好。关于第3点,我会详细说明关于刚体本身“是运动学”属性的控制,这通常是个问题。你是对的。我完全忘记了这个设置。已经编辑了我的答案,谢谢。谢谢,它工作了一段时间,但是,在我做了一些测试并为墙添加了颜色之后,添加了敌人和空的游戏对象(针对他们去的位置),然后墙就不再工作了。我用了“是运动学”,你能再帮我一次吗?我也试着使用continuous,但仍然不起作用。添加颜色、敌人和空对象不应该影响碰撞和刚体。你的播放器有多快?7.5f什么?你需要告诉我你用来移动玩家的确切功能,也许我可以帮你。回答得好。关于第3点,我会详细说明关于刚体本身“是运动学”属性的控制,这通常是个问题。你是对的。我完全忘记了这个设置。已经编辑了我的答案,谢谢。谢谢,它工作了一段时间,但是,在我做了一些测试并为墙添加了颜色之后,添加了敌人和空的游戏对象(针对他们去的位置),然后墙就不再工作了。我用了“是运动学”,你能再帮我一次吗?我也试着使用continuous,但仍然不起作用。添加颜色、敌人和空对象不应该影响碰撞和刚体。你的播放器有多快?7.5f什么?你需要告诉我你用来移动玩家的确切功能,也许我能帮你。