Language:
Page Info
Skill Level:
Engine Version:
Share
此中文页面内容对应的英文页面有后续更新,如需浏览最新文档可切换至英文页面浏览。

子场景和合成

在制作过场的过程中,经常会有好几个人同时处理一个场景的不同方面。 Sequencer 通过 子场景轨道 支持这种工作流程,它允许您使 关卡序列 相互分层叠加,产生一个最终序列。

您可以让一个动画师为序列创作动画,同时让另一个人处理摄像机,还有一个人处理同一序列的各个部分的效果。 这样可以让人们都有各自的工作关卡序列并且独立工作,而不必更改其他场景中的内容。

在这个示例中,我们使用子场景轨道和多个关卡序列的合成生成一个小场景。

步骤

在本操作指南中,我们使用 Blueprint Third Person Template 项目,并启用了 起步内容

  1. 使用 内容浏览器 在项目中创建 5 个关卡序列资产。

    SubTrack1.png

    在上图中,我们为了方便整理创建了一个名为 Sequences 的文件夹,并在其中创建了我们的关卡序列资产。

    在此示例中,我们创建了一个 MasterSequence,它将容纳我们的所有镜头,用于创建完整的过场动画序列。 我们创建 Shot_01 作为该系列的第一个镜头,并且预计将有 3 个人对它进行处理。 然后我们为每个人分别创建序列 e01 - e03,它们将会分层合成最终的 Shot_01 序列。

  2. 双击 打开 Shot_01,然后在 Sequencer 中添加一条 子轨道(Sub Track)

    SubTrack2.png

  3. 单击 + 序列(+ Sequence)按钮,然后添加 Shot_01_e01

    SubTrack3.png

  4. Shot_01_e02Shot_01_e03 添加到 子场景轨道 中,然后拖动它们,使它们上下分层叠在一起。

    SubTrack4.png

    当我们播放 Shot_01 时,所有这些子场景不管包含了什么内容,都会同时播放。

  5. 内容浏览器 中的 Content/Mannequin/Character/Mesh 下,将 SK_Mannequin 拖动到关卡中。

    SubTrack5.png

  6. Sequencer 中,双击 Shot_01_e01 子场景将其打开,然后将 SK_Mannequin 添加到场景。

    SubTrack6.png

  7. 单击 Animation 轨道上的 + 号,添加 ThirdPersonWalk 动画,然后拉伸它以填满整个序列。

    SubTrack7.png

  8. Location 轨道上于 0 处添加一个键表示当前位置,将 SK_Mannequin 向前移动到 150 处,添加表示新位置的键。

    SubTrack8.png

    如果需要复习一下如何处理 Sequencer 转换,请参见 处理镜头切换 了解更多信息。

  9. 使用面包屑导航回到 Shot_01,将时间轴重新移动到 0,然后 双击 Shot_01_e02 将其打开。

    SubTrack9.png

    你还会注意到,此时 Shot_01_e01 中已经添加了一条轨道(SK_Mannequin 骨骼网格轨道)。

  10. 添加一条 子场景轨道 并添加 Shot_01_e01(这将用于引用动画)。

  11. 单击 添加摄像机(Add Camera)按钮以添加摄像机,然后创建路径以追踪角色的移动。

    因为我们处理的是自己的场景,所以不影响动画师在 Shot_01_e01 中的工作,我们只是引用它以便设置我们的摄像机运动。 这可以方便我们查看他人的内容并与他人合作,而不处理该内容。 另一种方法是直接跳回到 Shot_01 关卡,以查看各场景的播放效果。

  12. Shot_01_e02 删除 子场景镜头切换 轨道。

    我们添加的子场景轨道是用于移动参考,如果将其保留,则会影响整体转换,如下所示。

    SubTrack11.png

    Shot_01_e02 中删除“子场景”轨道后,转换正确。

    SubTrack12.png

    视口与“镜头切换”轨道中指定的摄像机锁定,所以我们现在要将其移除,以便继续工作。

  13. 打开 Shot_01_e03 场景并添加带有 Shot_01_e01子场景轨道

    SubTrack13.png

    在此序列中,我们的 FX 美工打算在角色每次迈步时添加效果,因此我们需要引用运动,就和我们刚才对摄像机做的一样。 同样地,在我们完成引用后将删除它,否则它会影响 Shot_01 关卡上的转换。

  14. 添加一条 事件轨道,并在角色每次踩到地面时添加名为 FootStep 的键。

    在上文中,我们已添加名为 FootStep 的事件,然后在角色每次行进时复制并粘贴该事件。 虽然这种特定效果也可通过创建 动画通知 来实现,但下文说明 FX 美工可以如何使用自己的轨道为场景应用其他类型的效果。

  15. 设置好事件轨道后,请 删除子场景轨道

  16. 在关卡中选择 SK_Mannequin,然后在工具栏中单击 蓝图(Blueprints)按钮,再单击 打开关卡蓝图(Open Level Blueprint)

    SubTrack15.png

    我们需要指定从我们的事件轨道调用事件时会发生什么。

  17. 在图中 右键单击,然后创建对 SK_Mannequin 的引用。

    SubTrack16.png

  18. 右键单击 并创建一个名为 FootStep定制事件,然后再次 右键单击,并选择 在对应位置生成发射器(Spawn Emitter at Location)

    SubTrack17.png

  19. 使用 P_Explosion 作为 发射器模板(Emitter Template),拖动 SK_Mannequin获取 Actor 位置(Get Actor Location),按图中所示连接。

    SubTrack18.png

  20. 回到 内容浏览器 中,将 Shot_01 拖动到关卡中。

    SubTrack19.png

  21. Shot_01 关卡序列的 细节(Details)面板中,选中 自动播放(Auto Play)选项。

    SubTrack20.png

  22. 单击 播放(Play)按钮在编辑器中播放。

最终结果

在编辑器中播放时,你将看到角色向前行走,每一步都会产生一次爆炸。

以上示例并不包括摄像机工作,该工作只要在 Shot_01_e02 轨道中稍作修改就可添加。

通过重新添加 镜头切换轨道 并指向 CameraActor,我们可以确定应该将哪台摄像机用于场景。 处理摄像机的人员如果需要作调整摄像机运动路径之类的修改,可以继续修改场景。 这些更改只会出现在 Shot_01_e02 轨道中,不会更改其他轨道中的元素。

当我们在关卡中播放时,将播放最终的合成场景。

使用子场景是在有多人参与工作的情况下生成内容的有效方法,因为它允许这些人在同一关卡场景中创建内容,而不会相互影响。