需要帮助使角色控制器跳跃

时间:2019-05-12 19:07:29

标签: c# unity3d

到目前为止,我有一个角色控制器,可以使我到处移动,冲刺和蹲伏(没有动画),但是我无法使控制器跳动。我知道角色100%正在获得输入来跳跃,并且运动矢量在Y轴上约为40,因此玩家应该在运动。问题是,什么都没有发生。玩家仍然可以四处移动,跌落壁架,但是当我按空格键时什么也没有发生 这是我的代码:

@app.route('<x>.url.com/')

1 个答案:

答案 0 :(得分:0)

CharacterController.SimpleMove来自文档

  

快速移动角色。

     

沿y轴的速度被忽略

     

重力自动应用。

     

https://docs.unity3d.com/ScriptReference/CharacterController.SimpleMove.html


您应该使用CharacterController.Move

  

具有绝对运动增量的更复杂的运动功能。

     

尝试通过运动来移动控制器,该运动只会受到碰撞的限制。它将沿着对撞机滑动

     

...

     

此功能不施加任何重力。

     

https://docs.unity3d.com/ScriptReference/CharacterController.Move.html

使用这种方法,您需要自己施加重力

movement.y -= gravity * Time.deltaTime;

controller.Move(movement * Time.deltaTime);