目录

DLC 注意事项及限制

为了让 DLC 中的声音结构符合要求,您必须了解在已有结构基础上进行更改和添加将产生哪些影响。有一些常见情况需要特别注意,下面将详细介绍。

添加子项

对于一些特定对象,在 DLC 中为其添加子项时,必须重新打包现有的 SoundBank 并包含在 DLC 中;但对一些其它对象,则可以通过新增 SoundBank 在 DLC 中为其添加子项。下表列出了需要重新打包 SoundBank 来添加子项的对象,以及可以在 DLC 中新增 SoundBank 来添加子项的对象。

需重新打包 SoundBank 才能将子项添加到 DLC 的对象

可使用新增 SoundBank 将子项添加到 DLC 的对象

  • Random/Sequence Container(随机/序列容器)

  • Switch Container(切换容器)

  • Blend Container(混合容器)

  • Music Switch Container(音乐切换容器)

  • Music Playlist Container (音乐播放列表容器)

  • Music Segment (音乐段落)

  • Actor-Mixer(角色混音器)

  • Folder

  • Work Unit(工作单元)

例如,假设有以下层级结构:

  • WorkUnit

    • ActorMixer

      • ContainerA

        • Sound1

        • Sound2

如果您将 ContainerA 放在主版本的 SoundBank1 中,那么对于 DLC,可以顺利地在 Actor-Mixer Hierarchy 内添加新容器。

  • WorkUnit

    • ActorMixer

      • ContainerA

        • Sound1

        • Sound2

      • ContainerB

        • Sound1

        • Sound2

随后您可以创建一个新的 SoundBank2 并添加 ContainerB ,加载 SoundBank1 和 SoundBank2 时,其中的结构将自动合并。但 DLC 中,不能在 ContainerA 下添加声音,并将其加入新的 SoundBank 中进行打包。如果必须添加,则必须重新生成 SoundBank1 并包含在 DLC 中,它将替换主发布版本中的 SoundBank。

[备注] 备注

将 Event 和 Structure 与 Media 文件分离,这对计划发布 DLC 的游戏来说是一个很好的策略,因为重新打包 SoundBank 时,不会导致 DLC 容量剧增。

修改 Init Bank

对于 DLC,不管以何种方式修改了总线、游戏同步器(游戏参数,切换开关和状态)或环境效果后,都必须将新的 Init.bnk 文件重新打包到 DLC 中。

发布多个 DLC

在同时或依次发布多个 DLC 时需特别小心,持续更新内容时,必须基于之前的 DLC 工程来构建新的 DLC 版本。

例如,假设您发布了主版本(包括 Init.bnk + RTM.bnk)、DLC-A(包括 Init.bnk + DLC-A-specific.bnk)和 DLC-B(包括 Init.bnk + DLC-B-specific.bnk)。如果 RTM、DLC-A 和 DLC-B 中总线结构不同,则 DLC-A 中的新增总线也必须位于 DLC-B 内。

3 个版本都需要包括含有总线的 Init.bnk 文件,因为用户可能:

  • 没有 DLC

  • 仅有 DLC-A

  • 仅有 DLC-B

  • 有 DLC-A 和 DLC-B

当存在 DLC-A 和 DLC-B 时,将加载 DLC-B 中的 Init.bnk。由于 DLC-B 中的 Init.bnk 是基于 DLC-A 构建的,因此 DLC-A 所需的总线也将可用。