Timeline - 获取所有轨道,轨道的片段信息

#

复制代码
var timelineAsset = director.playableAsset as TimelineAsset;
foreach (PlayableBinding pb in timelineAsset.outputs)
{
    //pb.streamName--轨道名称
    //pb.sourceObject--轨道, 获取到轨道就可以获取ClipAsset
    //pb.outputTargetType--轨道绑定的类型, TrackBindingType

    Debug.Log("=====track");
    Debug.Log($"type:{pb.GetType().Name}, trackName:{pb.streamName}");

    if (null != pb.sourceObject)
    {
        TrackAsset trackAsset = pb.sourceObject as TrackAsset;
        foreach (TimelineClip clip in trackAsset.GetClips()) //轨道上的所有片段
        {
            //...
        }
    }
    if (null != pb.outputTargetType)
    {
        Debug.Log($"[TrackBindingType]: {pb.outputTargetType.Name}");
    }
}
复制代码

 

posted @   yanghui01  阅读(704)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
· C#/.NET/.NET Core优秀项目和框架2025年2月简报
· Manus爆火,是硬核还是营销?
· 终于写完轮子一部分:tcp代理 了,记录一下
· 【杭电多校比赛记录】2025“钉耙编程”中国大学生算法设计春季联赛(1)
点击右上角即可分享
微信分享提示