FMOD Studio User Manual 2.02
实时更新是一种在游戏运行时将 FMOD Studio 连接到游戏的方式,允许您实时更新和监控音频内容。
本章重点介绍如何在编辑 FMOD Studio 项目时使用实时更新。启用实时更新后,在实时更新会话期间对 FMOD Studio 项目所做的几乎任何更改都会在网络连接速度允许的情况下立即在游戏中听到。例如,如果导入新的音频资源并将其添加到游戏中正在播放的事件,则将在瞬间听到游戏开始播放该资源。
能够听到所做的更改意味着可以实时调整、调节和混合游戏的音频内容。这减少了迭代游戏音频内容所需的时间和精力。
几乎对项目的任何更改都可以使用实时更新传播到游戏中。唯一不会传播到游戏的是对游戏 .strings.bank 文件的更改,例如在 FMOD Studio 中创建、重命名或移动事件可能引起的更改。如果做此类更改,则需重建 FMOD Studio 项目的主库以更新 .strings.bank 文件,然后才能在游戏代码中使用新的事件名称和路径。
如果在实时更新会话期间创建新事件,则需为该事件添加适当的触发器至游戏中才能让游戏运行。同样,如果将事件的路径更改为游戏当前用于识别它的其他内容,或者将游戏识别的事件替换为GUID,则在更新游戏代码以使用新的路径或GUID之前,该事件不会播放。
与在其他情况下对 FMOD Studio 项目所做的更改一样,在实时更新会话期间对 FMOD Studio 项目所做的更改只有在保存并构建 FMOD Studio 项目并将建立的库复制到游戏中才会成为游戏的永久组成部分。如果不构建并复制资料库到游戏中,一旦实时更新会话结束,在实时更新会话中所作的更改将不再适用于游戏。
在可以连接到游戏之前,游戏必须准备好接收实时更新连接。视游戏所使用的引擎不同,准备游戏连接的具体细节会有所不同。
使用FMOD Unity Integration时,默认情况下会自动启用实时更新。要检查这一点,请在 Unity 项目的“FMOD”菜单中选择“编辑设置”。
默认情况下,实时更新将被设置为启用“在编辑器中播放”和禁用内置游戏。这些设置下面的文本框会显示正在使用哪个端口。
开始游戏或以“在编辑器中播放”模式开始将通过指定的端口发送信息。
使用用于 Unreal Engine Integration 的FMOD时,默认情况下会自动启用实时更新。要检查这一点,请从虚幻引擎项目的“编辑”菜单中选择“项目设置”,并在“插件”的“FMOD Studio”部分查找。
默认情况下,对于所有非最终版本,实时更新将设置为启用。可在“高级”设置下的“实时更新端口”选项中指定端口号。
开始游戏或以“在编辑器中播放”模式开始将通过指定的端口发送信息。
使用FMOD Studio API时,可在初始化 FMOD Studio 系统时使用FMOD_STUDIO_INIT_LIVEUPDATE来启用实时更新。
默认情况下,FMOD Studio 可侦听 9264 端口上的连接,但可使用system::setadvancedsettings指定不同的端口。
FMOD Studio 实时更新只能与 FMOD Studio API 一起使用。如果游戏只使用 FMOD Core API,则不可能用实时更新连接到游戏。
一旦游戏准备好进行实时更新连接,就可通过网络将 FMOD Studio 连接到游戏。
要将 FMOD Studio 连接到游戏,请在 FMOD Studio 的“文件”菜单中选择“连接到游戏...”。这将打开“连接到游戏”对话框,您可在其中指定运行游戏实例机器的 IP 地址和端口。此对话框接受以下格式:
“本地主机”表示运行 FMOD Studio 的机器。如果不指定端口,FMOD Studio 默认为端口 9264。
如果指定适当的 IP 地址和端口并单击“连接”按钮,将开始实时更新会话。
在实时更新会话期间,每个 FMOD Studio 窗口右下角的 实时更新状态指示器 为绿色并显示“实时更新开启”。此外,整个 FMOD Studio 中的 meters 反映了游戏中播放的音频,而不是 FMOD Studio 中试听的事件。

