Documentation

Unity Engine


User Manual

Script Reference

Unity Engine


LerpAngle(float, float, float)

Same as Mathf.Lerp but makes sure the values interpolate correctly when they wrap around 360 degrees.
Read time 1 minuteLast updated 6 days ago

Definition

  • Type: Method
  • Namespace: UnityEngine
  • Assembly: UnityEngine.CoreModule
public static float LerpAngle(float a, float b, float t)

Parameters

The start angle. A float expressed in degrees.

The end angle. A float expressed in degrees.

The interpolation value between the start and end angles. This value is clamped to the range [0, 1].

Returns

Type

Description

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

Remarks

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 Mathf.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); }}
Additional Resources: Mathf.Lerp.