Version: 2022.2
public static float LerpAngle (float a, float b, float t);

参数

a The start angle. A float expressed in degrees.
b The end angle. A float expressed in degrees.
t The interpolation value between the start and end angles. This value is clamped to the range [0, 1].

返回

float Returns the interpolated float result between angle a and angle b, based on the interpolation value t.

描述

与 Lerp 相同,但是在值环绕 360 度时确保值正确插入。

This method returns the shortest path between the specified angles. This method wraps around values that are outside the range [-180, 180]. For example, LerpAngle(1.0f, 190.0f, 1.0f) returns -170.0f. To find the longest path use Lerp.

using UnityEngine;

public class Example : MonoBehaviour { float minAngle = 0.0f; float maxAngle = 90.0f;

void Update() { float angle = Mathf.LerpAngle(minAngle, maxAngle, Time.time); transform.eulerAngles = new Vector3(0, angle, 0); } }

另请参阅:Lerp。