Unity Timeline Modules for SALSA Suite v2

TimelineSalsaCore has been updated to include Eyes module support (TimelineSalsaCore v2.5.0+). Please see the New Features video on our YouTube channel for more information on the features and changes in this new release.

The TimelineSalsaCore module provides basic features for controlling the SALSA Suite modules within the Unity Timeline environment. Written documentation will remain lightweight in lieu of video documentation since we believe the TimelineSalsaCore module is more readily demonstrated than written about. Please see the video playlist below.

Check out our YouTube Tutorial Series


There are three core Timeline modules for SALSA Suite. Each binds to the associated SALSA Suite component and provides essential control of the module for scene manipulation.

SalsaControl Module

SalsaControl integrates the SalsaControl track and clip mechanisms into the Timeline system. This allows the designer to create easy dialogue scenes in Timeline, leveraging the SALSA lipsync component. There is a single track and clip type for this operation. A SALSA component with a valid configuration is required for operation.

Check out our YouTube Tutorial

EmoterControl Module

Similar to the SALSA module, the EmoterControl track provides integration into the Unity Timeline system to control an EmoteR component. A properly configured EmoteR component is required for correct operation.

NOTE: The EmoterControl module binds to EmoteR and operates on the Manual Emote Pool, which includes all configured emotes. Read up on the various pool types and operations in the EmoteR documentation to understand proper implementation for the Timeline module. Remember: Emotes can participate in multiple pool types, so trying to control an emote that is also part of the random pool (for example) can produce strange or undesirable results.

Check out our YouTube Tutorial

EyesControl Module

Keeping in-line with the other Timeline modules, the EyesControl module integrates Eyes component control into the Timeline system. There is a single track and clip type for all operations. Use control clips to turn settings on or off, or to change existing settings.

NOTE: A single clip can be used to apply changes and then revert back to original settings when the clip ends if the 'Reset on Clip End' option is enabled.

Check out our YouTube Tutorial

[Update 2021-09-28: v2.6.2]

This update specifically addresses the EyesControl LookTarget assignment.

Since the LookTarget reference is a scene object, there was an omission in the EyesControl module that prevented the LookTarget assignment from saving and any populated reference would be lost as a result of scene or Unity loads. This field needed to be converted to an ExposedReference<Transform> lookup and is thereby managed by the Unity engine in the drawer display. ExposedReference<> types are tacked on to the end of custom property drawer Inspector implementations and cannot (as far as I can tell) be customized.

This created a bit of an issue with associating other settings with the LookTarget and the Inspector had to be modified in an attempt to (visually) re-associate the setting behaviors. As such, the Affinity setting is now displayed by default instead of only when a LookTarget is populated.

NOTE: Please remember the Affinity setting only affects processing when the underlying Eyes binding has a non-null object assigned to the LookTarget slot.

Old EyesControl Inspector:
TimelineSalsaCore EyesControl old

New EyesControl Inspector:
TimelineSalsaCore EyesControl new

Also note, some descriptions and design of the Inspector have been modified (in v2.6.2) in an attempt to clarify intent. For example, "filter" was changed to "exclusion" to better indicate a particular setting is included or excluded from processing. When the exclusion button is enabled (yellow), the associated setting is NOT processed in the Timeline clip.

Since the LookTarget reference Inspector slot is now managed by Unity, the EyesControl property drawer cannot display the exclusion slot button inline with the LookTarget slot. See the image below.

TimelineSalsaCore EyesControl LookTarget exclusion button