uSequencer

This page describes how to add Dialogue System support for Well Fired's uSequencer. (uSequencer is required.)

uSequencer copyright © Well Fired.

How to Set Up uSequencer Support

To enable uSequencer support in the Dialogue System, import the package Third Party Support ► uSequencer Support.

This will add a sequencer command that plays uSequencer sequences.

Sequencer Commands

uSeq()

Syntax: uSeq(USSequence[, once|cache[, index, object...]])

Description: Loads a uSequencer sequence from Resources and plays it. To prepare a uSequencer sequence, create it and save a prefab inside a Resources folder. Then provide the path to that prefab to this command.

By default, each uSequencer timeline container remembers the path to its affected object so it can find the object when you instantiate the prefab. However, if the object's actual path is different at runtime, you can set the affected object using the index and object parameters as described below.

Parameters:

  • USSequence: The path to a uSequencer sequence inside a Resources folder.
  • once|cache: (Optional) If once, the sequence is unloaded from memory when done playing; if cache, it's kept in memory. Use once for sequences that only play once, such as a unique one-time sequence. Use cache for generic sequences that may be used again, such as a generic body gesture. Defaults to cache. Note: Since Resources.UnloadAsset() doesn't work for certain types such as uSequencer sequence prefabs, the unload calls Resources.UnloadUnusedAssets(). This command can temporarily slow down framerate, so you may choose to simply keep the sequence in memory and let garbage collection automatically unload it later.
  • index: (Optional) The index number of a USTimelineContainer in the sequence. This parameter must be paired with an object.
  • object: (Optional): The name of an object in the scene, or speaker or listener. The affected object of the USTimelineContainer will be set to this object.
  • Note: You can provide any number of "index, object" parameters to this command.

Examples:

  • uSeq(USCutscene1) (Plays the uSequencer sequence "USCutscene1" located inside a Resources folder.)
  • uSeq(Cutscenes/Curtsey, cache, 1, speaker) (Plays the uSequencer sequence "Cutscenes/Curtsey" using the speaker as the affected object for the USTimelineContainer whose index is 1. Keeps the sequence in memory for re-use.)
  • uSeq(Cutscenes/GetToDaChoppa, once, 1, Arnold, 2, Helicopter) (Plays the uSequencer sequence "Cutscenes/GetToDaChoppa" using the game object "Arnold" as the affected object for the USTimelineContainer whose index is 1 and the game object "Helicopter" as the affected object for the USTimelineContainer whose index is 2. When done playing, removes the sequence from memory.)

<< Third Party Integration