unity3d 如何在C#中使用此移动脚本

9rbhqvlz  于 2022-11-16  发布在  C#
关注(0)|答案(1)|浏览(172)

我在YouTube上看了一个关于运动的C#教程,但是代码不起作用。我试着找到这个问题,但是什么也没找到。有人能帮帮我吗?

public class PlayerMovement : MonoBehaviour
{

    public float moveSpeed;

    CharacterController ch;

    void Start()
    {
        ch = GetComponent<CharacterController>();
    }

    void Update()
    {
        float x = input.GetAxis('Horizontal') * moveSpeed * Time.deltaTime;
        float z = input.GetAxis('Vertical') * moveSpeed * Time.deltaTime;
        ch.Move(x,0, z);
    }
}

我试着移动

zzwlnbp8

zzwlnbp81#

根据文件(https://docs.unity3d.com/ScriptReference/CharacterController.Move.html),(x,y,z)没有多载。
试着这样移动:

float frameSpeed = moveSpeed * Time.deltaTime;
ch.Move(new Vector3(
    Input.GetAxis("Horizontal") * frameSpeed,
    0.0f,
    Input.GetAxis("Vertical") * frameSpeed);

此外,input是Input,字符串需要“",而不是”“(这些是字符)。

相关问题