Documentation

Unity Engine


User Manual

Script Reference

Unity Engine


LerpUnclamped

Linearly interpolates between colors a and b using the interpolation ratio t.
Read time 3 minutesLast updated 4 days ago

Definition

  • Type: Method
  • Namespace: UnityEngine
  • Assembly: UnityEngine.CoreModule

LerpUnclamped(Color, Color, float)

Linearly interpolates between colors
a
and
b
using the interpolation ratio
t
.
public static Color LerpUnclamped(Color a, Color b, float t)

Parameters

The start color, returned when t = 0.

The end color, returned when t = 1.

The interpolation ratio. The ratio will not be clamped, and can be outside of the [0; 1] range.

Returns

Type

Description

ColorThe color resulting from linear interpolation between
a
and
b
.

Remarks

t
is clamped to be between 0 and 1. When
t
is 0, the function returns
a
. When
t
is 1, the function returns
b
.
If
t
is less than 0, or greater than 1, the result will be linearly extrapolated from
a
and
b
. For example,
Color.LerpUnclamped(new Color(0.0f, 0.0f, 0.0f), new Color(0.5f, 0.5f, 0.5f), 3.0f)
will return a color given by
new Color(1.5f, 1.5f, 1.5f)
.
The script below will set the color of MeshRenderer to the result of unclamped interpolation using parameters specified in the inspector. To use the script, attach it to a GameObject with a MeshRenderer.
using UnityEngine;[RequireComponent(typeof(MeshRenderer))]public class ColorLerp : MonoBehaviour{ public Color colorA = Color.white; public Color colorB = Color.red; public float interpolationRatio = 0.5f; private Material material; private void Start() { material = GetComponent<Renderer>().material; } void Update() { material.color = Color.LerpUnclamped(colorA, colorB, interpolationRatio); }}
Additional Resources: Color.Lerp.

LerpUnclamped(Color, Color, float)

Linearly interpolates between colors
a
and
b
using the interpolation ratio
t
.
public static Color LerpUnclamped(in Color a, in Color b, float t)

Parameters

The start color, returned when t = 0.

The end color, returned when t = 1.

The interpolation ratio. The ratio will not be clamped, and can be outside of the [0; 1] range.

Returns

Type

Description

ColorThe color resulting from linear interpolation between
a
and
b
.

Remarks

t
is clamped to be between 0 and 1. When
t
is 0, the function returns
a
. When
t
is 1, the function returns
b
.
If
t
is less than 0, or greater than 1, the result will be linearly extrapolated from
a
and
b
. For example,
Color.LerpUnclamped(new Color(0.0f, 0.0f, 0.0f), new Color(0.5f, 0.5f, 0.5f), 3.0f)
will return a color given by
new Color(1.5f, 1.5f, 1.5f)
.
The script below will set the color of MeshRenderer to the result of unclamped interpolation using parameters specified in the inspector. To use the script, attach it to a GameObject with a MeshRenderer.
using UnityEngine;[RequireComponent(typeof(MeshRenderer))]public class ColorLerp : MonoBehaviour{ public Color colorA = Color.white; public Color colorB = Color.red; public float interpolationRatio = 0.5f; private Material material; private void Start() { material = GetComponent<Renderer>().material; } void Update() { material.color = Color.LerpUnclamped(colorA, colorB, interpolationRatio); }}
Additional Resources: Color.Lerp.