Timeline编辑器扩展
PlayableDirector(控制器)
创建一个Track的方式(感谢。。。。。大佬)
PlayableDirector.playableAsset as TimelineAsset;
TimelineAsset.CreateTrack
TrackAsset(自定义轨道类型)
接口
CreatePlayable //创建一个PlayableBehaviour时触发,有多少个片段触发多少次
CreateTrackMixer //至少有一个片段,创建轨道时触发,已经获取所有的Clip实例
类Attribute
[TrackClipType(typeof(MyPlayableAsset))] //轨道的信息资源
[TrackBindingType(typeof(GameObject))] //决定Track能放什么类型的参数
[TrackColor(0, 1, 0)] //给轨道定义颜色
PlayableAsset(资源)
API
ScriptPlayable.Create() //创建Playable
GetGameObjectBinding(director); //获得轨道绑定的game object
PlayableBehaviour(行为)
接口
PrepareFrame //循环播放刷新时调用
OnBehaviourPlay //进入该行为片段时调用
OnBehaviourPause //退出该行为片段时调用
OnPlayableCreate //创建时、编辑器模式选中tiemline时
OnGraphStart //创建后、播放时
OnGraphStop //停止时,编辑器模式选中其他对象时
OnPlayableDestroy //同上,在停止后调用
Playable
API
playable.GetTime() //获取该片段当前的播放时间进度
QA
如何把PlayableBehaviour的变量显示在面板上?
通过PlayableAsset声明一个PlayableBehaviour(需要打上Serializable)
然后ScriptPlayable.Create(,);将其PlayableBehaviour放到第二个参数
如何获得PlayableDirector以控制播放?
PlayableBehaviour:playable.GetGraph().GetResolver() as PlayableDirector;
PlayableAsset:graph.GetResolver() as PlayableDirector;
如何把场景的Object设置到剪辑的成员变量?
使用声明ExposedReference变量就可以拖拽了
一个轨道可以有多种Clip吗?
可以,TrackAsset上的TrackClipType写的是PlayableAsset的父类,这样只需新增PlayableAsset基层写的那个就可以有多种了。
————————————————
版权声明:本文为CSDN博主「秋雨之忆」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/qq_36633019/article/details/92841612
相关文章
- 04-05jdk8中CompletableFuture的各个API用法,极大扩展了Future
- 04-05Unity编辑器扩展中,使用Unity自带的GUIStyle
- 04-05CocosCreator插件-初探编辑器扩展
- 04-05DevExpress控件扩展之表达式编辑器
- 04-05OpenStack kilo 扩展nova api方法
- 04-05win10桌面和手机的扩展API,判断是否有实体后退键API
- 04-05如何在调用Marketing Cloud contact创建API时增加对扩展字段的支持
- 04-05Unity扩展编辑器学习笔记--从路径下找到拥有某个组件类型的预设
- 04-05编辑器扩展 --- 自动化处理之AssetPostprocessor资源导入
- 04-05[Unity编辑器扩展基础总结] 第4章 脚本化对象 ScriptableObject