SmoothStep(float, float, float)
Interpolates between from and to with smoothing at the limits.
Read time 1 minuteLast updated 4 days ago
Definition
- Type: Method
- Namespace: UnityEngine
- Assembly: UnityEngine.CoreModule
public static float SmoothStep(float from, float to, float t)
Parameters
Returns
Type | Description |
|---|---|
| float | The interpolated float result between |
Remarks
This function interpolates between and in a similar way to Mathf.Lerp. However, the interpolation will gradually speed up from the start and slow down toward the end. This is useful for creating natural-looking animation, fading and other transitions.
fromtoThe parameter is clamped to the range [0, 1].
tExamples
using UnityEngine;public class Example : MonoBehaviour{ // Minimum and maximum values for the transition. float minimum = 10.0f; float maximum = 20.0f; // Time taken for the transition. float duration = 5.0f; float startTime; void Start() { // Make a note of the time the script started. startTime = Time.time; } void Update() { // Calculate the fraction of the total duration that has passed. float t = (Time.time - startTime) / duration; transform.position = new Vector3(Mathf.SmoothStep(minimum, maximum, t), 0, 0); }}