popcorn/Scripts/Extensions/AnimationCurveExtensions.cs

34 lines
1002 B
C#
Raw Normal View History

using UnityEngine;
public static class AnimationCurveExtensions {
public static AnimationCurve Smooth01;
public static AnimationCurve Smooth10;
static AnimationCurveExtensions(){
Smooth01 = AnimationCurve.EaseInOut(0.0f, 0.0f, 1.0f, 1.0f);
Smooth10 = AnimationCurve.EaseInOut(0.0f, 1.0f, 1.0f, 0.0f);
}
// HACK tangentを見ていないので完璧ではない
public static float GetMax(this AnimationCurve ac){
float result = 0.0f;
foreach(var keyframe in ac.keys){
if(result < keyframe.value){
result = keyframe.value;
}
}
return result;
}
// HACK tangentを見ていないので完璧ではない
public static float GetMin(this AnimationCurve ac){
float result = float.MaxValue;
foreach(var keyframe in ac.keys){
if(result > keyframe.value){
result = keyframe.value;
}
}
return result;
}
}