Class PlaybackBehavior
This is used for animating a recording inside the scene.
Inheritance
Inherited Members
Namespace: Recolude.Core.Playback
Assembly: Recolude.Core.dll
Syntax
public class PlaybackBehavior : MonoBehaviour
Remarks
I would recommend using Build() for setting up the playback for a recording.
Methods
Build(IRecording)
Creates an empty GameObject and attatches an instance of the PlaybackBehavior to it.
Declaration
public static PlaybackBehavior Build(IRecording recording)
Parameters
Type | Name | Description |
---|---|---|
IRecording | recording | The recording to playback. |
Returns
Type | Description |
---|---|
PlaybackBehavior |
Build(IRecording, IActorBuilder, Boolean)
Creates an empty GameObject and attatches an instance of the PlaybackBehavior to it.
Declaration
public static PlaybackBehavior Build(IRecording recording, IActorBuilder actorBuilder, bool loop)
Parameters
Type | Name | Description |
---|---|---|
IRecording | recording | The recording to playback. |
IActorBuilder | actorBuilder | What is used to build the actors. |
System.Boolean | loop | Whether or not for the recoding playback to start over when it reaches the end. |
Returns
Type | Description |
---|---|
PlaybackBehavior | A controller for playback. |
Build(IRecording, IActorBuilder, Boolean, ITimeProvider)
Creates an empty GameObject and attatches an instance of the PlaybackBehavior to it.
Declaration
public static PlaybackBehavior Build(IRecording recording, IActorBuilder actorBuilder, bool loop, ITimeProvider timeProvider)
Parameters
Type | Name | Description |
---|---|---|
IRecording | recording | The recording to playback. |
IActorBuilder | actorBuilder | What is used to build the actors. |
System.Boolean | loop | Whether or not for the recoding playback to start over when it reaches the end. |
ITimeProvider | timeProvider | How the playback will perceive time. |
Returns
Type | Description |
---|---|
PlaybackBehavior | A controller for playback. |
Build(IRecording, Boolean)
Creates an empty GameObject and attatches an instance of the PlaybackBehavior to it.
Declaration
public static PlaybackBehavior Build(IRecording recording, bool loop)
Parameters
Type | Name | Description |
---|---|---|
IRecording | recording | The recording to playback. |
System.Boolean | loop | Whether or not for the recoding playback to start over when it reaches the end. |
Returns
Type | Description |
---|---|
PlaybackBehavior |
CurrentlyPaused()
Returns whether or not the current recording loaded is paused or not.
Declaration
public bool CurrentlyPaused()
Returns
Type | Description |
---|---|
System.Boolean |
|
CurrentlyPlaying()
Whether or not the playback service is currentely active.
Declaration
public bool CurrentlyPlaying()
Returns
Type | Description |
---|---|
System.Boolean |
|
CurrentlyStopped()
Returns whether or not the current recording loaded is stopped or not.
Declaration
public bool CurrentlyStopped()
Returns
Type | Description |
---|---|
System.Boolean |
|
GetPlaybackSpeed()
The current playback speed.
Declaration
public float GetPlaybackSpeed()
Returns
Type | Description |
---|---|
System.Single | The current playback speed. |
GetRecording()
The recording that is being played back.
Declaration
public IRecording GetRecording()
Returns
Type | Description |
---|---|
IRecording | The recording being animated. |
GetTimeThroughPlayback()
The time in seconds of how long the recording has been playing.
Declaration
public float GetTimeThroughPlayback()
Returns
Type | Description |
---|---|
System.Single | The time through recording. |
Exceptions
Type | Condition |
---|---|
System.InvalidOperationException | Thrown when there is no playback occuring. |
Pause()
If a recording is playing, then it will become paused.
Declaration
public void Pause()
Play()
Start reenacting a recording.
Declaration
public void Play()
Play(Single)
Start reenacting a recording at a specified time.
Declaration
public void Play(float timeThroughRecording)
Parameters
Type | Name | Description |
---|---|---|
System.Single | timeThroughRecording | The time we want to start playing at. |
PlayBackwards()
Multiplies the current playback speed by -1 (or by nothing if it's already negative) and sets the current time through the playback to the end of the recording if we're at the begining of the recording.
Declaration
public void PlayBackwards()
PlayBackwards(Single)
Multiplies the current playback speed by -1 (or by nothing if it's already negative).
Declaration
public void PlayBackwards(float timeThroughRecording)
Parameters
Type | Name | Description |
---|---|---|
System.Single | timeThroughRecording |
RecordingDuration()
Gets the length of recording.
Declaration
public float RecordingDuration()
Returns
Type | Description |
---|---|
System.Single | The length of recording. |
Exceptions
Type | Condition |
---|---|
System.InvalidOperationException | Thrown when there is no playback occuring. |
SetPlaybackSpeed(Single)
Changes the speed in which the recording will be played back as. A positive speed means the recording processes normally. A negative speed means the recording processes backwards. A speed of 0 means the recording does not budge. A speed of 1 is default.
Declaration
public void SetPlaybackSpeed(float newSpeed)
Parameters
Type | Name | Description |
---|---|---|
System.Single | newSpeed | The speed for the playback to run at. |
SetTimeThroughPlayback(Single)
Sets the time we want the playback to be at in the recording. Useful for seeking.
Declaration
public void SetTimeThroughPlayback(float time)
Parameters
Type | Name | Description |
---|---|---|
System.Single | time | Time. |
Stop()
Stops the loaded recording.
Declaration
public void Stop()
Exceptions
Type | Condition |
---|---|
System.InvalidOperationException | Thrown when there is no playback occuring. |
UpdateState()
Progresses the playback. You probably don't want to call this, as this is normally handeled by the monobehaviors, Update() lifecycle event. The one notable exception is when you're writing unit tests around a playback.
Declaration
public void UpdateState()