EffectPlaybackAsset
[CreateAssetMenu(fileName = "New Playback", menuName = "Text Studio/Animation/Effects/Playback", order = 4)]public class EffectPlaybackAsset : ScriptableObject, IEffectPlaybackReusable playback asset that maps elapsed time to normalized effect intensity with delay, looping, hold, and completion policy.
Methods
Section titled “Methods”
Evaluate(float, float)
Section titled “Evaluate(float, float)”public float Evaluate(float time, float duration)Evaluates normalized effect progress for an elapsed time and phase duration.
Parameters
| Name | Type | Description |
|---|---|---|
time |
System.Single | Elapsed time in seconds. |
duration |
System.Single | Fallback forward duration in seconds. |
Returns
System.Single: Normalized effect intensity.
Evaluate(float, float, out bool)
Section titled “Evaluate(float, float, out bool)”public float Evaluate(float time, float duration, out bool complete)Evaluates normalized intensity and reports whether finite playback has completed.
Parameters
| Name | Type |
|---|---|
time |
System.Single |
duration |
System.Single |
complete |
System.Boolean |
Returns
System.Single
GetTotalDuration(float)
Section titled “GetTotalDuration(float)”public float GetTotalDuration(float duration = 0)Calculates total playback time, including delays, holds, returns, and finite repeat cycles.
Parameters
| Name | Type |
|---|---|
duration |
System.Single |
Returns
System.Single: Total seconds, or positive infinity for unbounded playback.
Constructors
Section titled “Constructors”
EffectPlaybackAsset()
Section titled “EffectPlaybackAsset()”public EffectPlaybackAsset()Properties
Section titled “Properties”
public PlaybackMode Mode { get; }Gets how local time is mapped to normalized effect intensity.
Returns
TextStudio.PlaybackMode
DelayBeforeStart
Section titled “DelayBeforeStart”public float DelayBeforeStart { get; }Returns
System.Single
Duration
Section titled “Duration”public float Duration { get; }Returns
System.Single
HoldDuration
Section titled “HoldDuration”public float HoldDuration { get; }Returns
System.Single
ReturnDuration
Section titled “ReturnDuration”public float ReturnDuration { get; }Returns
System.Single
CycleCount
Section titled “CycleCount”public int CycleCount { get; }Returns
System.Int32
DelayBetweenCycles
Section titled “DelayBetweenCycles”public float DelayBetweenCycles { get; }Returns
System.Single
Completion
Section titled “Completion”public EffectPlaybackCompletion Completion { get; }Returns
TextStudio.EffectPlaybackCompletion
ExternalPreviewValue
Section titled “ExternalPreviewValue”public float ExternalPreviewValue { get; }Returns
System.Single
IsInfinite
Section titled “IsInfinite”public bool IsInfinite { get; }Returns
System.Boolean