向不断移动的物体添加力

时间:2016-01-06 12:47:18

标签: c# unity3d gameobject

一直致力于在3D空间中进行的Unity 3D游戏。我可以在Z轴上不断移动的同时左右上下移动。我希望能够使用Q和E按钮旋转我的Player gameObject以在曲线中移动。 在普通的3D游戏中,这不是问题,但是如何让我的玩家游戏对象不断朝着它的方向移动?

这是我目前的代码,我只能在不断被Z轴推动的同时上,下,左,右。

public float moveSpeed;
private Vector3 input;
private float maxSpeed = 10.0f;
private float bloodStream = 0.5f;
public float timer = 40.0f;



void Update () {
    if (Time.timeSinceLevelLoad >= timer)
    {
        while (bloodStream <= 0.75f)
        {
            bloodStream += Time.timeSinceLevelLoad / 10000;
        }
    }
    if (Time.timeSinceLevelLoad >= timer + 40.0f)
    {
        bloodStream = 0.5f;
    }
    input = new Vector3(Input.GetAxisRaw("Horizontal"), Input.GetAxisRaw("Vertical"), bloodStream);
    if (GetComponent<Rigidbody>().velocity.magnitude < maxSpeed)
    {
        GetComponent<Rigidbody>().AddForce(input * moveSpeed);
    }

0 个答案:

没有答案