---恢复内容开始---
先看一个TimeLine,如图
再来看看在Inspector中的PlayableDirector
其他参数字面意思很清楚了不再赘述,着重讲一下一个TimeLine绑定的资源。轨道与其资源都是以键值对的方式存储的,其中key对应的都是红色标注部分,value对应的是黑色标注部分,明白了这些就可以动态的修改在TimeLine中的绑定的可播放资源。
- 获取一个TimeLine中所有绑定资源的数据
var bindingDict = new Dictionary<string, PlayableBinding>(); foreach (PlayableBinding pb in ((PlayableDirector)qPlayableDirector).playableAsset.outputs) { if (!bindingDict.ContainsKey(pb.streamName)) { bindingDict.Add(pb.streamName, pb); } }
- 动态修改绑定的资源
// swordPerfab 是要替换的目标资源 ((PlayableDirector)qPlayableDirector).SetGenericBinding(bindingDict["Activation Track"].sourceObject, swordPerfab);
其中key是可以更改名称的,在TimeLine窗口中选中要更改名称的轨道,在Inspector中可更改其名称也就是key的值