# 前言 默认存储数据路径:C:\LiveDirectorSaved\Sequoia 操作方式: 1. 4级中使用`Ctrl + Shift + D`,勾选Sequoia编辑器后显示。 2. Ctrl + ? 剪切轨道。 # 相关类 - TS:`LiveDirector\Script\Sequoia` - TsSequoiaManagerActor - OnPlayButtonClicked():Sequoia播放函数。主要逻辑是打开Sequoia的序列化数据,之后创建或取得播放器斌进行播放/停止。 - c++:`LiveDirector\Source\Modules\Sequoia` - SequoiaPlayer # 播放逻辑 ```c++ TsSequoiaManagerActor@OnPlayButtonClicked: start play : 大聲鑽石 [2024.11.26-04.21.03:648][613]Puerts: (0x00000BD7686682F0) SequoiaManager@ Composer: On start playing... [2024.11.26-04.21.03:649][613]Puerts: (0x00000BD7686682F0) DirectorCamSequoiaHandle : Enter CamTarget Section: Idol.JiaRan [2024.11.26-04.21.03:649][613]Puerts: (0x00000BD7686682F0) DirectorCamSequoiaHandle : play Cam Section: ZhuJiwei_Zheng16-24mm group:CC8F4D734664869EC8FE788E7550AC31 index:0 scrub:false [2024.11.26-04.21.03:665][614]Puerts: (0x00000BD7686682F0) request PGM: WorkShop ``` # 其他 ## 添加自定义轨道 往Sequoia添加一个自定义轨道,可以按照以下大体步骤进行开发 1. 大部分的拓展逻辑都写在SequoiaCustomBuilderTool.ts 2. 在SequoiaCustomBuilderTools.ts 的BindingType,TrackType,SectionType中添加组定义类型.在关系Map(BindingToTrackMap)中添加从属关系 3. 在Sequoia代码文件夹下创建拓展文件夹,创建对应的TsBinding,TsTrack,TsSection等对应的UObject以及Model类,可以参考DirectorCam. 4. Model文件用于数据序列化和存储,通常不要使用UE类型,UObject文件是真正的逻辑类 5. 创建Binding和BindingModel类,分别定义AssignModel和构造函数用来承接数据 1. 在SequoiaCustomBuildertool.CreateBindingModel 和 CreateEmptyBindingModelByBindingType中新增新类型的Model创建。 2. 在SequoiaCustomBuildertool.CreateBinding中添加新Binding类型的创建 3. Track,Take,Section也是类似于Binding的方式在CustomBuilderTool中添加创建代码。 4. 至此就完成了数据部分的定义和代码。 1. 录制逻辑,需要首先创建对应的录制逻辑,继承自ISequoiaTakeRecorder. 2. 在SequoiaHelper.BuildTakeRecorders 中根据参数创建对应的recorder.