如何在其中一个轴上旋转物体但不停止?

时间:2016-11-02 01:11:50

标签: c# unity3d

问题在于它旋转了一次。

using UnityEngine;
using System.Collections;

public class MakeTwoPoints3D : MonoBehaviour
{
    public float speed = 3f;

    void Start()
    {

    }

    void Update()
    {
        float degrees = 90;
        Vector3 to = new Vector3(degrees, 0, 0);

        transform.eulerAngles = Vector3.Lerp(transform.rotation.eulerAngles, to, Time.deltaTime * speed);
    }
}

我想要做的是,如果我以90度或20度或任何角度给出它将在给定度数的跳跃中旋转。如果我给360它将进行一次360度旋转,如果我给予任何少于360然后在每次旋转之间添加一些等待时间。 例如,如果我给出90度,它应该每次旋转90度,每次旋转之间等待半秒钟。

问题是现在它只会旋转90度。我希望它不停地旋转。

1 个答案:

答案 0 :(得分:1)

每帧围绕Y旋转一度

void OnUpdate()
{
   var p = transform.eulerAngles;
   p.y += 1; // rotate around Y by 1 degree every frame
   transform.eulerAngles = p;
}