查看: 290|回复: 0

[引擎的各个功能] 子场景和合成

[复制链接]

1

主题

342

帖子

7万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
75866
发表于 2017-4-8 07:14:36 | 显示全部楼层 |阅读模式

子场景和合成



       
     
     Advanced

     Unreal Engine 4.12

       
     
         



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


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


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

步骤


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



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


子场景和合成



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


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


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


子场景和合成



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


子场景和合成



将 Shot_01_e02 和 Shot_01_e03 添加到 子场景轨道 中,然后拖动它们,使它们上下分层叠在一起。


子场景和合成



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


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


子场景和合成



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


子场景和合成



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


子场景和合成



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


子场景和合成



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



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


子场景和合成



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


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


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


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


从 Shot_01_e02 删除 子场景 和 镜头切换 轨道。


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


子场景和合成



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


子场景和合成



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


打开 Shot_01_e03 场景并添加带有 Shot_01_e01 的 子场景轨道。


子场景和合成



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


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


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


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


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


子场景和合成



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


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


子场景和合成



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


子场景和合成



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


子场景和合成



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


子场景和合成



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


子场景和合成



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

最终结果


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


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


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


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


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


   
        
            

   

子场景和合成

   




    相关页面


            
            

   
  
     

         Sequencer 概述
     


  
     

         Sequencer 编辑器参考
     


     

            
        
   




                                       
                                       
完整内容索引
                                       
                               
                       
                       
            

            
            

     2004-2017, Epic Games, Inc. 版权所有。Unreal 及相关的商标是 Epic 在美国和其他国家的注册商标。


    使用条款 | 隐私政策

            
        
               
       
   
回复

使用道具 举报

*滑块验证:
您需要登录后才可以回帖 登录 | enginedx注册

本版积分规则

 
 



邮件留言:


 
返回顶部