Version: 2023.1
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