I Tested the Signal track in Timeline (Unity 2020.3.14 and 2019.4.14).
Was created a signal asset. After was created the Signal Track and also was created separated GameObject which was planned to use as a “Signal Receiver”. By Drag and Drop it was placed in the left part of Timeline, the Editor make proposal to create the “Signal Receiver component” in this object (I agreed this). After that set the parameters of “Signal Receiver component” (Signal/Object/Action).
- First at all in Editor mode the Signals doesn’t works as same as the “Sound Tracks Action” (but this information absent in docs).
- In that placement of the Signal Receiver component it doesn’t works.
Sometime begin emit the errors:
- I didn’t find in any official docs that that placement is not right.
- The same problem in Unity 2019.4.14.
Workaround (and may be It’s the right path which must described in doc, but see additional note in end):
- Delete all created new components (the asset with the signal can left) and restart Editor (in other cases sometime the errors message can are occur again, but all will work)
- As the Object for “Signal Receiver component” must be select the Object with Timeline asset which you use (which contain the Playable Director component). You receive the proposal to create the “Signal Receiver component”.
- For all other steps, do the same as before.
- After that all works fine (Objects and corresponding actions may be anything, the same as in Unity Events).
Note.
I didn’t understand the reason to give a possibility to select the GameObject which will contain the “Signal Receiver component”, if just now it work only with one certain object.
OFFTOPIC>
And I didn’t absolutely understand why we can’t use the same signal (asset) to make the different reactions in different part of the same Signal track. In current version (2019.4.14, in the “2020” i didn’t test it) all reaction will copy one to one for all case of use the signal in that track.
Whats is the meaning to separate the “signal asset” from the “list of reactions” if they are hard linked, more logical make a one special ScriptableObject (IMHO and i know regarding possibilities of custom signals)