Is there a way to create a copy of a TimelineAsset so I can modify the contents without having a reference to the original asset?
I am working on a project where we need to modify the bindings of a track and the contents of a clip but it generates changes for the reference TimelineAsset and will flag up a change in our version control.
This isn’t really desirable because the content changes continuously which means team members will have changes in these timeline assets by just running the game.
Unfortunately no, or at least, not at runtime. Object.Instantiate won’t work with Timeline assets because it will reference the tracks from the original instead of copying them.
You can use the AssetDatabase to make a copy, but that only works in the Editor, not in a player.
Why is the behavior like this? Seriously… I spend hours of my life creating a tool that can bind new dependencies to a cloned timeline (i.e change an audio clips clip), only to find out it changes the dependencies of the original asset. Great!