角色控制器不再掉落

问题描述

这个问题可能已经在某处被问到并得到了回答,但我没有看到 StackOverflow 上提到过这种情况。

问题:几天以来,我的带有 CharacterController 组件的游戏对象不再服从重力。它们可以在 X 和 Z 上按预期移动,但无论如何都不会掉到地上。

我不认为问题来自我制作的脚本,因为我用一个完全没有任何代码的对象进行了测试,它仍然停留在空中。我以为这是我仅在我的一个项目中意外修改属性,但事实证明该问题影响了我的所有 Unity 项目。

我应该重新安装 Unity,还是从头开始重新创建所有项目?

对象“3rd Person Player”是一个空的,圆柱和头部是它的父级。

编辑:按照 amitklein 的要求,这是视图和检查器的图像:

[

View and Inspector image

编辑 2 :正如在 reddit 上所问的,这是运动脚本:

[代码]

// Character Controller
public CharacterController devonController;

//Values and movement tools
public float walkSpeed = 4.0f;
public float unchargedJumpForce = 10.0f;
public float chargedJumpForce;
public Vector3 floorMotionVector;
public Vector3 jumpVector;
public float Gravity = -9.81f;
void Start()
{
    devonController = GetComponent<CharacterController>();
}

void Update()
{
    float horizontal = Input.GetAxisRaw("Horizontal");
    float vertical = Input.GetAxisRaw("Vertical");

    floorMotionVector = new Vector3(horizontal,vertical).normalized;

    if(floorMotionVector.magnitude >= 0.1f && Input.GetKey(KeyCode.LeftShift))
    {
        devonController.Move(floorMotionVector * (6 * walkSpeed) * Time.deltaTime);
    }

    else
    {
        devonController.Move(floorMotionVector * walkSpeed * Time.deltaTime);
    }
}

[/CODE]

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)