// -------------------------------------------------------------------------------------------------------------------- // // Copyright (c) VRMADA, All rights reserved. // // -------------------------------------------------------------------------------------------------------------------- using UnityEngine; namespace UltimateXR.Animation.Interpolation { /// /// Interpolator for float values. /// public class UxrFloatInterpolator : UxrVarInterpolator { #region Constructors & Finalizer /// /// Constructor. /// /// Smooth damp for interpolation [0.0, 1.0] where 0.0 means no smoothing /// Whether to use step interpolation, where the interpolation will always return the start value public UxrFloatInterpolator(float smoothDamp = 0.0f, bool useStep = false) : base(smoothDamp, useStep) { } #endregion #region Protected Overrides UxrVarInterpolator /// protected override float GetInterpolatedValue(float a, float b, float t) { return Mathf.Lerp(a, b, t); } #endregion #region Public Types & Data /// /// Default interpolator with smoothing. /// public static readonly UxrFloatInterpolator DefaultInterpolator = new UxrFloatInterpolator(0.0f, false); #endregion } }