|
Wwise SDK 2025.1.3
|
鉴于 2024.1 中的有些新增功能(参见 新增功能概述 2024.1 章节),在迁移到 Wwise 2024.1 之前有些重要事项需要注意。
取消了 Wwise 对 XMA 编解码器的支持。对于在 Conversion Settings 中使用 XMA 格式的现有 Wwise 工程,将自动改为使用 Vorbis 格式。对于旧的媒体素材,必须重新转码,兼容的软件编解码器才能发挥作用。
现已移除 2023.1 中已弃用的原有 Authoring Plug-in API。 若要将插件移植到 2021.1 最新引入的 API,请参阅 Migrating a pre-2021.1 Authoring Plug-in 章节。
在 WAAPI 中,ak.wwise.core.profiler.enableProfilerData 函数不再接受 preparedEvents 作为有效的数据类型。现已重命名为 preparedObjects。这一新的数据类型支持通过 AK::SoundEngine::PrepareEvent 预备的 Event 和通过 AK::SoundEngine:PrepareBus 预备的 Bus。
在 WAAPI 中,ak.wwise.waapi.getFunctions 和 ak.wwise.waapi.getTopics 函数现在仅返回受支持的函数或主题(具体取决于调用来自控制台还是 UI 模式)。
从底层 I/O 接口中移除了 IAkLowLevelIOHook::BatchCancel 函数。若工程使用 IAkLowLevelIOHook 的自定义实现,请删除 BatchCancel 覆盖函数。若使用 Wwise SDK 的示例实现,则无需做任何调整。
在 WAAPI 中,ak.wwise.ui.captureScreen 函数之前使用显示名称(标题)作为参数来识别视图。现在,该函数使用其唯一 ID 名称。如需查看所有可用视图名称,请参阅 Wwise Authoring View Identifiers 章节。
因为现在 AkMemoryArena 是默认内存分配器,所以对部分初始化设置和内存系统回调做了更改。
AkMemSettings::uMemAllocationSizeLimit。现在每个 Arena 都有单独的 AkMemoryArenaSettings::uMemReservedLimit 值。AkMemSettings::pfAllocVM、AkMemSettings::pfFreeVM、AkMemSettings::pfAllocDevice 和 AkMemSettings::pfFreeDevice。现在改用 AkMemoryArenaSettings::fnMemAllocSpan 和 AkMemoryArenaSettings::fnMemFreeSpan 为各个 AkMemoryArena 预留内存块。AkMemSettings::bEnableSeparateDeviceHeap。若要禁用 Device AkMemoryArena,请将 AkMemoryArenaSettings::fnMemAllocSpan 设为 nullptr。AkMemSettings::uVMPageSize、AkMemSettings::uDevicePageSize、AkMemSettings::uMaxThreadLocalHeapAllocSize、AkMemSettings::uVMSpanCount 和 AkMemSettings::uDeviceSpanCount(因为它们都是针对 rpmalloc 的架构的)。有关如何在 AkMemSettings 结构中配置 AkMemoryArena 的详细信息,请参阅 AkMemoryArena 的配置和调整 章节。
另外,还相应地更新了 AKPLATFORM::AllocVM、AKPLATFORM:FreeVM、AKPLATFORM::AllocDeviceVM 和 AKPLATFORM:FreeDeviceVM 函数,分别将其重命名为了 AKPLATFORM:AllocSpan、AKPLATFORM::FreeSpan、AKPLATFORM:AllocDeviceSpan 和 AKPLATFORM::FreeDeviceSpan。
in_fHeightAngle 参数(定义高度分层的角度)现在默认设为 30 度。现在即使当前扬声器配置没有高度声道也不允许将该值设为 0。
对以下属性进行了重命名。若在制表符分割的导入文件中使用这些属性,则须做相应的更改。
| 旧名称 | 新名称 |
| Enable Diffraction | Diffraction and Transmission |
| Enable Envelope | Enable Envelope Tracking |
| Global Or Per Object | Scope |
| Grid Frequency Preset | Grid Frequency |
| Grid Offset Preset | Grid Offset |
| Is Looping Enabled | Loop |
| Is Looping Infinite | Loop Infinite |
| Is Streaming Enabled | Stream |
| MIDI tracking root note | MIDI Note Tracking Root |
| Output Bus High-pass Filter | Output Bus HPF |
| Output Bus Low-pass Filter | Output Bus LPF |
| Override Parent MIDI Target | Override MIDI Target |
| Random or Sequence | Play Type |
| Step or Continuous | Play Mode |
| Switch/State | Default Switch/State |
| Use Priority Distance Factor | Use Offset Priority |
| User Auxiliary Send 0 | User-Defined Auxiliary Send 0 |
| User Auxiliary Send 1 | User-Defined Auxiliary Send 1 |
| User Auxiliary Send 2 | User-Defined Auxiliary Send 2 |
| User Auxiliary Send 3 | User-Defined Auxiliary Send 3 |
| Virtual voice behavior | When Limit is Reached |
| Voice High-pass Filter | Voice HPF |
| Voice Low-pass Filter | Voice LPF |
注意,属性名称 When Limit is Reached 仅适用于属性 ID OverLimitBehavior。该属性名称不适用于属性 ID BelowThresholdBehavior。