版本
Wwise Unreal Integration Documentation
|
此版本是 Wwise Unreal 集成 的一个重要里程碑。就像 Unreal Engine 5 将引擎推向前所未有的高度一样,Audiokinetic 的 Wwise Unreal 集成 让两个工具的协同使用充满无限可能。 为此,我们花了一年多的时间竭力完善开发设计。在此过程中,我们跟开发人员进行了反复的交流和沟通,以便充分发挥 Wwise 和 Unreal 的应用潜能。在过去几年里,我们从持续优化和功能请求当中吸取了很多宝贵的经验。比如,最初我们想为每一种潜在工作流程提供支持。然而,每款游戏事实上都有自己独特的风格和需求。想脱离个性化盲目地加入创意,可以说是白日做梦。所以,我们要特别感谢 Wwise 用户分享自己的喜悦、困窘和挫折经历。毕竟,用户体验才是我们关心的重中之重。
在开始迁移之前,确保可修改 Wwise 和 Unreal 工程中的所有必要文件。
需要在版本控制系统中签出的文件:
除此之外,可能还要签出引用 AkAudioBank 素材的 Map 或 Blueprint,因为在迁移过程中会删除这些文件。
像平常一样,在开始迁移前先打开 Audiokinetic Launcher 并转到 Unreal Engine 页面来升级 Wwise Unreal 集成。
注記: 若工程之前使用 2022.1.0 Beta 2,如有些文件名称的大小写发生更改,在文件系统区分大小写的平台上可能会出现构建问题。在通过 Audiokinetic Launcher 升级后,请确保所有文件名中包含 ShareSet 的文件的名称拼写无误(ShareSet 中的两个 S 均为大写)。 |
在升级完成后,打开 Wwise 工程。这时,会自动显示 Project Migration 对话框。
点击 Update 按钮继续。
在更新并保存 Wwise 工程后,便可打开 Unreal 工程。在打开时,会自动显示 Wwise Integration Migration 对话框。在此对话框中,可选择所要执行的迁移操作。建议马上执行所有迁移操作。不过,必要的话可将迁移流程延迟或单独执行每项操作。若要单独执行这些操作,建议先阅读 部分迁移及工程迁移状态 章节,再尝试迁移工程。在选择多项迁移操作时,会按照与 Migration Window 中所示相同的顺序予以执行。只要还有尚未执行的迁移操作,就可在 Audiokinetic Migration > Finish Project Migration 下的 Build Menu 中打开迁移对话框。
迁移当中有四项不同的操作:
SoundBank 管理现在重新交由 Wwise 设计工具完成,因此已经不再需要并且必须删除 AkAudioBank 素材。在之前的工作流程中,SoundBank 在 Unreal 工程中表示为手动创建的 AkAudioBank 素材。随后,便可手动将 Event 和 Aux Bus 素材分组存放到这些 SoundBank 中。这在原有 Legacy 工作流程中是必要的,但 Event Based Packaging 并不需要。
对话框中可能会显示以下分区(取决于 Unreal 工程是否包含 AkAudioBank 素材)。在 Wwise 2022.1 中,此迁移操作可帮助您将现有 SoundBank 从 Unreal 工程传回到 Wwise 工程,并清理已被弃用的 AkAudioBank 素材。
选项 | 描述 |
---|---|
Transfer SoundBanks to Wwise | 若选中,须选择传输方法。详见下文 传输方法 章节。 |
Transfer Auto Load property | Unreal 中的 AkAudioBank 素材设有一项属性,其允许用户指定是要自动还是手动加载 SoundBank 数据及素材(比如在 Blueprint 中使用素材时马上自动加载)。若选中,将把此属性的值传到分组存放到 SoundBank 中的素材。 |
|Delete AkAudioBank Assets|将删除工程中的所有 AkAudioBank 素材。若同时选中 Transfer SoundBanks,将在传输完毕后完成此操作。建议删除这些素材,因为其已经没用了。|在将其删除后,无法再执行 Transfer SoundBanks to Wwise 操作。|
用户可通过创建 SoundBank Definition File 或使用 WAAPI 来将 SoundBank 传到 Wwise。
Create SoundBank Definition File 会创建包含一系列 SoundBank 名称及内容的文本文件。此文件随后可导入到 Wwise 中。若选择此选项,会显示相应字段。在此字段中,可选择要将生成的文件放在哪里。有关如何将该文件导入到 Wwise 工程中的具体信息,请参阅官方文档。
WAAPI 会利用 Unreal Editor 和 Wwise 之间建立的 WAAPI 连接来更新 Wwise 工程以将 SoundBank 包含在内。在传输 SoundBank 之后,请务必保存 Wwise 工程。
若要使用所述功能,须打开 Wwise 设计工具。若无法建立 WAAPI 连接,可选择在 Wwise User Settings 中禁用 Auto Connect to WAAPI 工程设置。
若没能通过 WAAPI 将所有 SoundBank 成功传输到 Wwise,或过程当中无法写入到 SoundBank 定义文件,则会显示对话框并列出相应错误。在该对话框中,您可以取消迁移,也可忽略错误并继续。其中有些可能是预期之内并可接受的错误。比如,若已从 Wwise 工程中移除的 Event 仍作为素材存在于 Unreal 工程中,则涉及这些 Event 的 WAAPI 调用将会失败。
之前的 Integration 版本中所用的有些 Wwise 素材类型已被弃用,因此需要从工程中移除。 通过选中 Delete Deprecated Assets 选项,可删除所有 AkMediaAsset、AkFolder 和 AkPlatformAssetData 类型的素材。
Wwise 素材属性已发生更改,其不会再将 SoundBank 或媒体二进制数据序列化。现在只有加载或构建素材时所用的 GUID、ShortID、Name 和类型特定元数据属性才会序列化到 Wwise 素材中。在构建过程中,会将资源加载所需的信息序列化到游戏中打包的素材。
在选中 Migrate Wwise assets 时,会将工程中的所有 Wwise 素材标记为未同步状态并加以保存。若之前使用 EBP 并启用了 Split Switch Container Media,将在保存前把所有 Event 的 EventInfo.SwitchContainerLoading 标记设为 LoadOnReference。
注記: 若选择将 Migrate Wwise Assets 作为唯一的迁移操作,之后将无法执行 Transfer SoundBanks to Wwise 操作,因为这样会从相关素材中清除执行该操作所需的信息。 |
在选中 Update Project Settings 时,会根据是使用 Event-Based Packaging 还是原有工作流程来更新工程设置。在执行更改后,请务必保存工程。
Event-Based Packaging 工作流程:
原有工作流程: 不会在 Wwise 工程中更改任何设置。
在两种情况下:
<Wwise Project\/GeneratedSoundBanks
路径,除非工程有特定的要求。警告: 若在迁移过程中修改 Generated Sound Banks folder location,则可能需要手动更新 Wwise 中的设置。请参阅 需要手动更新的设置 。 |
注記: 在原有工程中,必须将 GeneratedSoundBanks Folder 放在 Unreal 工程的 Content 文件夹内以便进行打包。现在不需要再这样做。为此,建议不要将 GeneratedSoundBanks 文件夹放在 Unreal 工程的 Content 文件夹内。若 GeneratedSoundBanks Folder 在 Unreal 的 Content 文件夹内,则在生成 SoundBank 时将提示导入文件。您可以忽略这些提示。不过,建议将 GeneratedSoundBanks Folder 放在 Unreal 工程以外以免显示这些导入提示。稍后可在 Wwise 设计工具的 Project Settings 和 Unreal 的 Project Settings 中更改 GeneratedSoundBanks Folder。须单独地及时更新两项设置。 |
在完成迁移对话框中的所有操作后,工程也就准备好了。倘若使用外部源(External Source),还需执行附加迁移步骤。
集成包同时提供一个 Commandlet(参见 使用工程迁移 Commandlet 章节)以便通过命令行来执行上节中所述的迁移操作。
Wwise Installation Path (Unreal 中) 若在机器上安装了 Wwise 并想在不使用 WAAPI 的情况下在 Unreal 内生成 SoundBank,则须在 Wwise User Settings 中设定 Wwise Mac/Windows Installation Path 设置。
SoundBanks Root Output Path (Wwise 中) 建议确认 Wwise 设计工具的 SoundBanks Settings 中的 Root Output Path 是否与 Unreal Wwise Settings 的 Generated Sound Banks Folder 中设置的路径对应。
注記: Root Output Path 与 Wwise 工程相对,Generated Sound Banks Folder 与 Unreal 工程的 Content 文件夹相对。 |
对于迁移的原有工程,确保平台特定 SoundBank Folder 设置不指向 Unreal 工程的 Content 文件夹内的位置。
2022.1 中对外部源(External Source)支持的实现做了大幅更改。其允许高级用户通过整合自己的系统来设置和追踪外部源(External Source)。另外,我们还会通过 WwiseSimpleExternalSourceManager 提供基本支持。其使用 Unreal Data Table 追踪外部源(External Source)媒体,并提供 API 和 Blueprint 函数,来为媒体指派外部源 ID。
此模块不再使用 FAkExternalSourceInfo 和 FAkSDKExternalSourceArray 结构。对于 Blueprint 中所要创建的每个 FAkExternalSourceInfo 实例,最好都替换为 "WwiseSimpleExternalSourceManager::SetExternalSourceMedia" Blueprint 节点。
在此之后,可移除 Blueprint 中对它们的所有引用。另外,可能还要重新编译包含与 FAkSDKExternalSourceArrays 关联的 PostEvent 节点的 Blueprint。
有关如何在 Wwise 2022.1 中使用 External Source 的更多详细信息,请参阅 使用 Wwise Simple External Source Manager 章节。
我们建议一并执行所有迁移操作。不过,若要每次执行一项操作,或手动执行特定的操作,请注意以下事项:
工程迁移状态主要使用 DefaultGame.ini 文件中的以下字段来追踪:
bSoundBanksTransfered
:追踪是否执行了 SoundBank Transfer 操作。bAssetsMigrated
:追踪是否执行了 Asset Migration 操作。bProjectMigrated
:追踪是否执行了 Project Migration 操作。在迁移过程中,会根据是否成功执行了对应迁移操作来更新这些设置。
另外,还会基于 Unreal 工程的内容来决定工程迁移状态。若工程不包含 AkAudioBank 素材,则不需要迁移 SoundBank,并会自动更新设置。同样,只有在工程中找到被弃用的素材,才会显示用于删除素材的选项。
在迁移完成后,须重新生成 Wwise SoundBank。用户可通过 Unreal 中的 Wwise Picker 或 Build 菜单或者直接在 Wwise 中执行这一操作(SoundBank 管理已重新交由 Wwise 完成)。
在成功生成 SoundBank 后,便可在 Wwise Picker 中查看 Wwise 工程结构,并在 Play In Editor 模式下试听声音。
注記: 在迁移后可能会显示以下消息:
2022.1 中已不再使用这些素材。您可以手动或 在迁移过程中 删除工程中遗留的所述素材。不然的话,也可忽略这一消息。 |
之前,可通过右键单击素材并选择 Group into Sound Bank 来将 Event 分组存放到 SoundBank 中。现在,没法再这样做了;不过,可使用 Wwise 设计工具中的 User-Defined SoundBank 来获得相同的结果。