Show / Hide Table of Contents

Class PlaybackBehavior

This is used for animating a recording inside the scene.

Inheritance
System.Object
UnityEngine.Object
UnityEngine.Component
UnityEngine.Behaviour
UnityEngine.MonoBehaviour
PlaybackBehavior
Inherited Members
UnityEngine.MonoBehaviour.IsInvoking()
UnityEngine.MonoBehaviour.CancelInvoke()
UnityEngine.MonoBehaviour.Invoke(System.String, System.Single)
UnityEngine.MonoBehaviour.InvokeRepeating(System.String, System.Single, System.Single)
UnityEngine.MonoBehaviour.CancelInvoke(System.String)
UnityEngine.MonoBehaviour.IsInvoking(System.String)
UnityEngine.MonoBehaviour.StartCoroutine(System.String)
UnityEngine.MonoBehaviour.StartCoroutine(System.String, System.Object)
UnityEngine.MonoBehaviour.StartCoroutine(System.Collections.IEnumerator)
UnityEngine.MonoBehaviour.StartCoroutine_Auto(System.Collections.IEnumerator)
UnityEngine.MonoBehaviour.StopCoroutine(System.Collections.IEnumerator)
UnityEngine.MonoBehaviour.StopCoroutine(UnityEngine.Coroutine)
UnityEngine.MonoBehaviour.StopCoroutine(System.String)
UnityEngine.MonoBehaviour.StopAllCoroutines()
UnityEngine.MonoBehaviour.print(System.Object)
UnityEngine.MonoBehaviour.useGUILayout
UnityEngine.MonoBehaviour.runInEditMode
UnityEngine.Behaviour.enabled
UnityEngine.Behaviour.isActiveAndEnabled
UnityEngine.Component.GetComponent(System.Type)
UnityEngine.Component.GetComponent<T>()
UnityEngine.Component.TryGetComponent(System.Type, UnityEngine.Component)
UnityEngine.Component.TryGetComponent<T>(T)
UnityEngine.Component.GetComponent(System.String)
UnityEngine.Component.GetComponentInChildren(System.Type, System.Boolean)
UnityEngine.Component.GetComponentInChildren(System.Type)
UnityEngine.Component.GetComponentInChildren<T>(System.Boolean)
UnityEngine.Component.GetComponentInChildren<T>()
UnityEngine.Component.GetComponentsInChildren(System.Type, System.Boolean)
UnityEngine.Component.GetComponentsInChildren(System.Type)
UnityEngine.Component.GetComponentsInChildren<T>(System.Boolean)
UnityEngine.Component.GetComponentsInChildren<T>(System.Boolean, System.Collections.Generic.List<T>)
UnityEngine.Component.GetComponentsInChildren<T>()
UnityEngine.Component.GetComponentsInChildren<T>(System.Collections.Generic.List<T>)
UnityEngine.Component.GetComponentInParent(System.Type)
UnityEngine.Component.GetComponentInParent<T>()
UnityEngine.Component.GetComponentsInParent(System.Type, System.Boolean)
UnityEngine.Component.GetComponentsInParent(System.Type)
UnityEngine.Component.GetComponentsInParent<T>(System.Boolean)
UnityEngine.Component.GetComponentsInParent<T>(System.Boolean, System.Collections.Generic.List<T>)
UnityEngine.Component.GetComponentsInParent<T>()
UnityEngine.Component.GetComponents(System.Type)
UnityEngine.Component.GetComponents(System.Type, System.Collections.Generic.List<UnityEngine.Component>)
UnityEngine.Component.GetComponents<T>(System.Collections.Generic.List<T>)
UnityEngine.Component.GetComponents<T>()
UnityEngine.Component.CompareTag(System.String)
UnityEngine.Component.SendMessageUpwards(System.String, System.Object, UnityEngine.SendMessageOptions)
UnityEngine.Component.SendMessageUpwards(System.String, System.Object)
UnityEngine.Component.SendMessageUpwards(System.String)
UnityEngine.Component.SendMessageUpwards(System.String, UnityEngine.SendMessageOptions)
UnityEngine.Component.SendMessage(System.String, System.Object)
UnityEngine.Component.SendMessage(System.String)
UnityEngine.Component.SendMessage(System.String, System.Object, UnityEngine.SendMessageOptions)
UnityEngine.Component.SendMessage(System.String, UnityEngine.SendMessageOptions)
UnityEngine.Component.BroadcastMessage(System.String, System.Object, UnityEngine.SendMessageOptions)
UnityEngine.Component.BroadcastMessage(System.String, System.Object)
UnityEngine.Component.BroadcastMessage(System.String)
UnityEngine.Component.BroadcastMessage(System.String, UnityEngine.SendMessageOptions)
UnityEngine.Component.transform
UnityEngine.Component.gameObject
UnityEngine.Component.tag
UnityEngine.Object.GetInstanceID()
UnityEngine.Object.GetHashCode()
UnityEngine.Object.Equals(System.Object)
UnityEngine.Object.Instantiate(UnityEngine.Object, UnityEngine.Vector3, UnityEngine.Quaternion)
UnityEngine.Object.Instantiate(UnityEngine.Object, UnityEngine.Vector3, UnityEngine.Quaternion, UnityEngine.Transform)
UnityEngine.Object.Instantiate(UnityEngine.Object)
UnityEngine.Object.Instantiate(UnityEngine.Object, UnityEngine.Transform)
UnityEngine.Object.Instantiate(UnityEngine.Object, UnityEngine.Transform, System.Boolean)
UnityEngine.Object.Instantiate<T>(T)
UnityEngine.Object.Instantiate<T>(T, UnityEngine.Vector3, UnityEngine.Quaternion)
UnityEngine.Object.Instantiate<T>(T, UnityEngine.Vector3, UnityEngine.Quaternion, UnityEngine.Transform)
UnityEngine.Object.Instantiate<T>(T, UnityEngine.Transform)
UnityEngine.Object.Instantiate<T>(T, UnityEngine.Transform, System.Boolean)
UnityEngine.Object.Destroy(UnityEngine.Object, System.Single)
UnityEngine.Object.Destroy(UnityEngine.Object)
UnityEngine.Object.DestroyImmediate(UnityEngine.Object, System.Boolean)
UnityEngine.Object.DestroyImmediate(UnityEngine.Object)
UnityEngine.Object.FindObjectsOfType(System.Type)
UnityEngine.Object.DontDestroyOnLoad(UnityEngine.Object)
UnityEngine.Object.DestroyObject(UnityEngine.Object, System.Single)
UnityEngine.Object.DestroyObject(UnityEngine.Object)
UnityEngine.Object.FindSceneObjectsOfType(System.Type)
UnityEngine.Object.FindObjectsOfTypeIncludingAssets(System.Type)
UnityEngine.Object.FindObjectsOfType<T>()
UnityEngine.Object.FindObjectOfType<T>()
UnityEngine.Object.FindObjectsOfTypeAll(System.Type)
UnityEngine.Object.FindObjectOfType(System.Type)
UnityEngine.Object.ToString()
UnityEngine.Object.name
UnityEngine.Object.hideFlags
System.Object.Equals(System.Object, System.Object)
System.Object.GetType()
System.Object.MemberwiseClone()
System.Object.ReferenceEquals(System.Object, System.Object)
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

true, if currentely paused, false otherwise.

CurrentlyPlaying()

Whether or not the playback service is currentely active.

Declaration
public bool CurrentlyPlaying()
Returns
Type Description
System.Boolean

true, if currentely playing, false otherwise.

CurrentlyStopped()

Returns whether or not the current recording loaded is stopped or not.

Declaration
public bool CurrentlyStopped()
Returns
Type Description
System.Boolean

true, if currentely stopped, false otherwise.

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()
Back to top Generated by DocFX