狗屎Minimax坏我代码
This commit is contained in:
@@ -33,6 +33,16 @@ namespace SLSUtilities.Feedback
|
||||
/// Clip 总时长(秒)。
|
||||
/// </summary>
|
||||
public float duration;
|
||||
|
||||
/// <summary>
|
||||
/// 当前 Clip 的综合时间缩放系数(含 Global/Group/Local),由 FeedbackPlayer 每帧动态计算。
|
||||
/// </summary>
|
||||
public float timeScale;
|
||||
|
||||
/// <summary>
|
||||
/// 当前 Clip 是否动态获取当前的时间缩放
|
||||
/// </summary>
|
||||
public FeedbackTimeSettings timeSettings;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
@@ -48,6 +58,11 @@ namespace SLSUtilities.Feedback
|
||||
/// </summary>
|
||||
public virtual string DisplayName => GetType().Name;
|
||||
|
||||
/// <summary>
|
||||
/// 是否忽略时间缩放。如果为true,此Action将使用原始deltaTime,不受TimeScale影响。
|
||||
/// </summary>
|
||||
public virtual bool IgnoreTimeScale => false;
|
||||
|
||||
/// <summary>
|
||||
/// 初始化,FeedbackPlayer 开始播放此 Clip 时调用。
|
||||
/// </summary>
|
||||
@@ -81,5 +96,30 @@ namespace SLSUtilities.Feedback
|
||||
/// 用于 Editor 预览(Runtime 也可用)。
|
||||
/// </summary>
|
||||
public virtual void Preview() { }
|
||||
|
||||
/// <summary>
|
||||
/// 根据归一化时间采样曲线并映射到实际值范围。
|
||||
/// 如果 relativeToInitial 为 true,结果会叠加在 initialValue 上。
|
||||
/// </summary>
|
||||
/// <param name="shakeCurve">震动曲线,X 轴为归一化时间 [0,1],Y 轴为震动强度 [0,1]。</param>
|
||||
/// <param name="remapMin">曲线值 0 对应的实际数值。</param>
|
||||
/// <param name="remapMax">曲线值 1 对应的实际数值。</param>
|
||||
/// <param name="relativeToInitial">是否在初始值上叠加(而非替换)。</param>
|
||||
/// <param name="normalizedTime">归一化时间 [0,1]</param>
|
||||
/// <param name="initialValue">初始值(OnStart 时记录)</param>
|
||||
/// <returns>映射后的最终数值</returns>
|
||||
protected virtual float EvaluateShake(AnimationCurve shakeCurve, float remapMin, float remapMax, bool relativeToInitial,
|
||||
float normalizedTime, float initialValue)
|
||||
{
|
||||
float curveValue = shakeCurve.Evaluate(normalizedTime);
|
||||
float remappedValue = Mathf.LerpUnclamped(remapMin, remapMax, curveValue);
|
||||
|
||||
if (relativeToInitial)
|
||||
{
|
||||
return initialValue + remappedValue;
|
||||
}
|
||||
|
||||
return remappedValue;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user