与 MoveTowards 相同,但是在值环绕 360 度时确保值正确插入。
假设变量 current
和 target
以度为单位。
出于优化原因,负值的 maxDelta
不受支持,可能会导致振荡。若要将 current
推离目标角度,请改为向该角度加上 180。
using UnityEngine;
using System.Collections;
public class ExampleClass : MonoBehaviour {
public float target = 270.0F;
public float speed = 45.0F;
void Update() {
float angle = Mathf.MoveTowardsAngle(transform.eulerAngles.y, target, speed * Time.deltaTime);
transform.eulerAngles = new Vector3(0, angle, 0);
}
}