// --------------------------------------------------------------------------------------------------------------------
//
// Copyright (c) VRMADA, All rights reserved.
//
// --------------------------------------------------------------------------------------------------------------------
using UnityEngine;
namespace UltimateXR.Animation.Interpolation
{
///
/// Interpolator for int values.
///
public class UxrIntInterpolator : 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 UxrIntInterpolator(float smoothDamp = 0.0f, bool useStep = false) : base(smoothDamp, useStep)
{
}
#endregion
#region Protected Overrides UxrVarInterpolator
///
protected override int GetInterpolatedValue(int a, int b, float t)
{
return Mathf.RoundToInt(Mathf.Lerp(a, b, t));
}
#endregion
#region Public Types & Data
///
/// Default interpolator with smoothing.
///
public static readonly UxrIntInterpolator DefaultInterpolator = new UxrIntInterpolator();
#endregion
}
}