Hey nehvaleem, yeah timeline signals kind of suck. "Markers" are really the way to go, but you have to learn how to set them up.
Here is an example for a Wwise Switch - I haven't tested it out, but I think it should work (we don't really use Switches in our project so don't have anything to test it on easily). With Markers, you can use "Exposed References" to link up to stuff that exists in your current Scene (the "exposed audio source game object"):
using UnityEngine;
using UnityEngine.Playables;
using UnityEngine.Timeline;
[CustomStyle("WirelessSignal")] //<-------Use this to create a custom icon for the Marker, see below
public class Marker_AudioSwitch : Marker, INotification
{
public PropertyName id => new PropertyName();
public AK.Wwise.Switch akSwitch;
[SerializeField] public ExposedReference<GameObject> exposedAudioSourceGameObject;
public void Activate(Playable origin) {
GameObject resolvedAudioSourceGameObject = exposedAudioSourceGameObject.Resolve(origin.GetGraph().GetResolver());
akSwitch.SetValue(resolvedAudioSourceGameObject);
}
}
To use a custom icon for the Marker you have to set up a file called "common.uss". I can't remember exactly, but you may have to place the common.uss file inside of a folder structure like this:
Editor > StyleSheets > common.uss
Then here is an example of what would be inside of the common.uss file, in order to set up one icon (they can have different versions for "hover" and "checked" etc, so that when you click on it it changes color, or whatever you want it to do:
WirelessSignal
{
width: 20px;
height: 20px;
background-image: resource("Assets/Cutscene/Editor/WirelessSignal - dark.png");
}
WirelessSignal:checked
{
width: 20px;
height: 20px;
background-image: resource("Assets/Cutscene/Editor/WirelessSignal - dark.png");
}
WirelessSignal:hover:focus:checked
{
width: 20px;
height: 20px;
background-image: resource("Assets/Cutscene/Editor/WirelessSignal.png");
}
And then place the images you want for the icon at those locations (like how mine is assets/cutscene/Editor). I think the icons need to be in a folder called "Editor".
Hope this helps!