Choose your operating system:
Windows
macOS
Linux
Sequencer 提供了一个名为 Material Parameter Collection 的特殊轨迹,用于使用 材质参数集合 并对其设置动画。需要更新数个 材质 时它十分实用,因为无需在每个材质实例上对每个参数值设置动画(以便共享动画更新)。
在此指南中,您将使用一个 Material Parameter Collection 和 Sequencer 溶解并变更玩家周围的环境颜色。
步骤
在此指南中,我们使用的是启用了 Starter Content 的 Blueprint Third Person Template 项目。
在此 纹理范例 中点击右键并选择 Save target as...,然后将其拖放到项目的 Content Browser 中进行导入。
在 Content Browser 中点击 Add New 按钮,然后在 Materials & Textures 下创建一个名为 Sample_MPC 的 Material Parameter Collection。
在 Sample_MPC 中添加一个名为 DissolveValue 的 标量参数(设为 1.0),以及一个名为 ColorValue 的 矢量参数(RGB 全部设为 0.18)。
在主编辑器视口中,选择关卡中的其中一面墙壁,然后双击 Details 面板中的 CubeMaterial 打开 材质编辑器。
在图表中选中 CubeMaterial 节点,在 Details 面板中将 Blend Mode 改为 Masked。
在图表中点击右键并添加一个 CollectionParameter 节点,然后在节点的 Details 面板中指定 Sample_MPC 和 ColorValue。
添加另一个 CollectionParameter 节点,设为 Sample_MPC 和 DissolveValue,然后将 ColorValue 连接到 CubeMaterial 节点上的 Base Color。
长按 T 并在图表中点击左键创建一个 Texture Sample,然后长按 1 并创建两个 Material Expression Constant 节点。
设置 Texture Sample 节点使用步骤 1 的纹理范例并将其中一个 Constant 节点的默认值设为 1。
我们将把此纹理用作溶解的一部分。
添加一个 If 数学表达式,然后如下图所示将节点连接到 CubeMaterial 节点上的 Opacity Mask 值,然后点击工具栏上的 Apply。
这将使我们在无溶解(DissolveValue 为 1)或完全溶解(DissolveValue 为 0)之间切换。
在主编辑器工具栏中点击 Cinematics 和 Add Level Sequence 按钮,然后指定命名和保存路径。
在新序列的 Details 面板中,勾选 Auto Play 和 Loop Indefinitely 选项。
在 Sequencer 编辑器 中,点击 Add 按钮并选择 Material Parameter Collection Track,然后再选择 Sample_MPC。
点击 Parameter 按钮并添加 DissolveValue 和 ColorValue 参数。
将 时间条标记 前移至 50,然后为 DissolveValue 添加一个键(设为 0),ColorValue 的 Blue 设为 1.0。
将上个步骤的键复制粘贴到时间条上的 100 处,然后在 150 处将 DissolveValue 重新设为 1.0,Blue 重新设为 0.18。
这将返回 DissolveValue 和 ColorValues 到其默认值。
选择关卡中的楼梯,然后在 Details 面板中打开 RampMaterial,进而打开 材质编辑器。
关卡中的其余物体使用上方的材质,添加 CollectionParameter 设置到其材质图表后即可将它们纳入溶解。
选中 RampMaterial 节点后,在 Details 面板中将 Blend Mode 改为 Masked。
如下图所示将 CubeMaterial 中使用的图表设置复制粘贴到 RampMaterial 中,然后点击工具栏中的 Apply。
在主编辑器工具栏中,点击 Play 按钮在编辑器中进行游戏。
最终结果
在关卡中进行游戏时,玩家周围的环境将从灰色变至紫色并溶解,然后重回正常,并重复此过程。