Class UnitySequencePlayerService
Unity-specific minimal sequence player service implementation.
Provides generic orchestration: iterates through stages in order and awaits completion.
This is a MINIMAL orchestration engine:
- Does NOT handle timing, duration, waits, or delays
- Does NOT handle fades, overlays, or visual effects
- Does NOT handle timeline playback or Unity Playables
- Does NOT handle rig instantiation or character prefabs
Cinematic execution logic (fades, timelines, durations) belongs in vertical aggregates
like CutscenePlayer's UnityCutscenePlayerService.
Inheritance
UnitySequencePlayerService
Assembly: Serenity.UnitySequencePlayer.Infrastructure.dll
Syntax
public class UnitySequencePlayerService : MonoBehaviour, ISequencePlayerService, IService, IFoundationSettings
Constructors
UnitySequencePlayerService()
Declaration
public UnitySequencePlayerService()
Properties
Guid
Declaration
public string Guid { get; set; }
Property Value
Id
Declaration
public string Id { get; set; }
Property Value
LogService
Declaration
public ILogService LogService { get; set; }
Property Value
Methods
ExecuteStageAsync(ISequenceStage, CancellationToken)
Executes a single stage. Override in derived classes for custom execution logic.
Default implementation logs the stage and completes immediately (no-op).
Vertical aggregates (e.g., CutscenePlayer) should implement their own service
with full execution logic for their stage types.
Declaration
protected virtual Task ExecuteStageAsync(ISequenceStage stage, CancellationToken ct)
Parameters
Returns
Initialize(ILogService)
Initializes the sequence player service with logging dependency.
Declaration
public void Initialize(ILogService logService)
Parameters
PlayAsync(ISequenceDefinition, CancellationToken)
Plays a sequence asynchronously using a sequence definition interface.
Declaration
public Task PlayAsync(ISequenceDefinition definition, CancellationToken cancellationToken = default)
Parameters
Returns
PlayAsync(string, CancellationToken)
Plays a sequence asynchronously by key identifier.
Declaration
public Task PlayAsync(string sequenceKey, CancellationToken cancellationToken = default)
Parameters
Returns
SetAdaptedDefinitions(ISequenceDefinition[])
Sets adapted sequence definitions from ISequenceDefinition array.
Declaration
public void SetAdaptedDefinitions(ISequenceDefinition[] defs)
Parameters
SetDefinitions(UnitySequenceDefinition[])
Sets sequence definitions array.
Declaration
public void SetDefinitions(UnitySequenceDefinition[] defs)
Parameters
Implements