# 前言 1. 角色需要`BP_LiveArea`(LiveAreaActor) 2. Sequence与Camera需要`CameraRoot`Actor(需要与LiveArea完全重叠) 1. ~~FollowMovementComponent编写各种相机跟踪物体(IdolName、Socket、Bone)~~ 2. 摄像机挂载FollowingComponment。 # LiveDirector ## BP_LiveArea 基类为**ALiveAreaActor**,位于Source/LiveDirector/DirectorFramework/LiveAreaActor.h。直播区域占位用Actor,可以用于定义: - WeatherOverride:进入该区域后天气系统重载。 - WeatherBlendDuration:天气系统重载过渡时间。 - CareLayers:该区域加载时会自动加载关联的 DataLayer 层级。 # DirectorCam ## Core ### BP_CamPlacement_LiveArea 一般挂载在**BP_LiveArea**下面。使用LiveDirector - DirectorCam - Template下的模板生成。继承关系为**BP_CamWorkShopPlacement -> ACamWorkShopPlacementActor**,位于Modules/DirectorCam/Core/CamWorkShopPlacementActor.h ## Data ### UDirectorCamGroupData 镜头组数据资产,里面存储***各个镜头LevelSequence***。 ### UDirectorCamSetupData 里面存储各种***UDirectorCamGroupData***。 # LevelSequences LevelSequence的帧数为30fps。 - DirectorCamSetupData - Example5400x4800(大动捕室):/Game/LevelSequences/Example5400x4800/CamSetup_5400x4800 - DirectorCamGroupData:/Game/LevelSequences/Example5400x4800/General - Dance ## 创建一个新镜头的步骤 ***推荐直接复制之前制作的镜头,并在此基础上进行编辑。*** 1. 在LevelSequences目录下新建一个LevelSequence资产。 2. 拖入角色蓝图资产到到LevelSequence中(Spawnable),并且Attach指定的**LiveArea**Actor下,对齐直播场景的原点。拖入SoundBase资产到LevelSequence中(可选)。 3. 角色蓝图添加CharacterMesh轨道,并且给CharacterMesh轨道指定对应的AnimationSequence资产。 4. 添加摄像机 1. CinemaCamera 1. 如果需要追踪则给CinemaCamera,添加FollowingMovement组件以及轨道,并且指定组件的FollowingActor为对应Actor,并且***填写FollowingIdolName***(例如Idol.BeiLa)。以及FollowingSocketName 2. DirectorCamera为场景相关的相机(静态镜头) 1. Sequence中添加DirectorCamera,之后Attach到CameraRoot下。 2. 如果需要追踪则给DirectorCamera,添加FollowingMovement组件以及轨道,并且指定组件的FollowingActor为对应Actor,并且***填写FollowingIdolName***(例如Idol.BeiLa)。以及FollowingSocketName 5. 将LevelSequence添加到对应的`UDirectorCamGroupData`资产中。 6. 将`UDirectorCamGroupData`放入到对应`UDirectorCamGroupData`资产中。 7. 点击ASoul工具-配置ShotGroupBroad通用按钮。配置StreamDock面部按钮以及图标。