构建配置
Wwise 声音引擎 SDK 随附三种构建配置:Debug、Profile 和 Release。
声音引擎的 Debug(调试)
版本是非优化构建配置,带有额外调试信息,例如断言和调试输出字符串。我们不推荐使用此配置,因为使用此配置时,性能将受到重大影响。尽管如此,如果在早期集成过程中发生问题,此版本可用于验证集成工作。
声音引擎的 Profile(性能分析)
版本是优化过的构建版本,为与 Wwise 通信提供支持。此配置适用于日常开发过程。由于它有通信功能,因此不应该用于游戏的最终零售版本。
最后,声音引擎的 Release(发布)
版本是不带通信支持的优化构建版本。使用此配置时,必须在编译时定义预处理器定义 AK_OPTIMIZED
。CommunicationCentral 库也应从链接依赖中移除。此构建配置提供所有三种配置中最高的性能,应该用于最终零售版本。
|
备注: 在 Windows 中,如果项目需要使用 C 运行时库的静态版本(/MT 或 /MTd),它应与 Debug(StaticCRT) 、 Profile(StaticCRT) 和 Release(StaticCRT) 文件夹中的 Wwise 库而非标准配置相链接。 |
库依赖要求
以下是每个构建配置所要求的库依赖。当同一库有多个版本时,注意只有一个会标记为必需。由音频程序员决定应用程序需要哪个 Wwise SDK 版本。
声音引擎
下表列举声音引擎集成所需要的输入库。
库 |
说明 |
AkSoundEngine |
声音引擎核心 |
AkMemoryMgr |
内存管理器 |
AkStreamMgr |
I/O 管理器 |
AkMusicEngine |
音乐引擎 |
AkSpatialAudio |
内置 Spatial Audio 功能 |
CommunicationCentral |
Wwise 通信 * |
* Release 配置不需要。 |
|
备注: Microsoft 平台所用库文件使用 .lib 文件扩展名。而 Nintendo 平台的库使用 .a 扩展名。其它平台使用库前缀和 .a 扩展名。 |
|
备注: 不使用互动音乐功能的应用程序不必与 AkMusicEngine 链接。AkMemoryMgr 和 AkStreamMgr 分别是 Audiokinetic 对内存管理器和流管理器的默认实现。如果您决定不沿用它们,则要与您自己的库链接(请参阅 取代管理器 )。 |
源与效果器插件
下表列出了 Wwise 随附的所有源插件的输入库。它们适用于 Wwise 支持的所有平台。
源插件库 |
库 |
说明 |
AkAudioInputSource |
Audio Input 样本源插件(提供了源码,位于 samples/Plugins/AkAudioInput 下) |
AkSilenceSource |
Silence Generator 源插件 |
AkSineSource |
Sine 源插件(提供了源码,位于 samples/Plugins/AkSineTone 下) |
AkSoundSeedGrainSource |
SoundSeed Grain - Grain 源插件 * |
AkSoundSeedWindSource |
SoundSeed Air - Wind 源插件 * |
AkSoundSeedWooshSource |
SoundSeed Air - Woosh 源插件 *
|
AkSynthOneSource |
Synth One 源插件 |
AkToneSource |
Tone Generator 源插件(提供了源码,位于 samples/Plugins/AkToneGenerator 下)
|
* Wwise 提供,但需要单独授权。 |
下表列出了 Wwise 随附的所有效果器插件的输入库 。它们适用于 Wwise 支持的所有平台。
效果器插件库 |
库 |
说明 |
AkCompressorFX |
Wwise Compressor 效果器插件 |
AkConvolutionReverbFX |
Wwise Convolution Reverb 效果器插件 * |
AkDelayFX |
Delay 效果器插件(可用源位于 samples/Plugins/AkDelay 下) |
AkExpanderFX |
Wwise Expander 效果器插件 |
AkFlangerFX |
Wwise Flanger 效果器插件
|
AkGainFX |
Wwise Gain 效果器插件 |
AkGuitarDistortionFX |
Wwise Guitar Distortion 效果器插件 |
AkHarmonizerFX |
Wwise Harmonizer 效果器插件
|
AkMatrixReverbFX |
Wwise Matrix Reverb 效果器插件 |
AkMeterFX |
SoundSeed Meter 效果器插件
|
AkParametricEQFX |
Wwise Parametric EQ 效果器插件 |
AkPeakLimiterFX |
Wwise Peak Limiter 效果器插件 |
AkPitchShifterFX |
Wwise Pitch Shifter 效果器插件 |
AkRecorderFX |
Wwise Recorder 插件 |
AkReflectFX |
Wwise Reflect 插件 |
AkRoomVerbFX |
Wwise RoomVerb 高品质混响效果器插件 |
AkSoundSeedImpactFX |
SoundSeed Impact 效果器插件 *
|
AkStereoDelayFX |
Wwise Stereo Delay 效果器插件 |
AkTimeStretchFX |
Wwise Time Stretch 效果器插件 |
AkTremoloFX |
Wwise Tremolo 效果器插件 |
* Wwise 提供,但需要单独授权。 |
|
备注: 各个插件库都是非强制的,除非要在 Wwise SoundBank中使用。 |
编解码器插件
下表列举 Wwise 随附的所有编解码器插件的输入库 。
编解码器插件库 |
库 |
说明 |
平台可用性 |
AkAACDecoder |
AAC 解码器库 |
Apple 平台(即 Mac、iOS 和 tvOS)可用。 |
AkVorbisDecoder |
Vorbis 解码器库 |
所有 Wwise 支持的平台均可用。 |
AkOpusDecoder |
Opus 解码器库 |
所有 Wwise 支持的平台均可用。 |
振动
下表列出了Motion(振动)相关输入库 ,所有支持 Wwise Motion 的平台均可用。
振动相关库 |
库 |
说明 |
AkMotionGeneratorSource |
控制器振动源插件。仅在 Wwise 工程中使用控制器 Motion Generation 源插件(已弃用)时需要。 |
AkMotionSink |
控制器振动设备插件。只有您在 Wwise 工程中使用控制器 Motion 效果时才需要。 |
AkMotionSourceSource |
Wwise Motion Source 付费插件 * |
* Wwise 提供,但需要单独授权。 |
Waapi
下表列出了 WAAPI 相关输入库,适用于所有支持通过 WAAPI 连接 Wwise 设计工具的平台。
WAAPI 库 |
库 |
说明 |
AkAutobahn |
WAMP_POCO 库的改良版、civetweb 库和所需 Client 类。 |
外部库依赖
下表按平台列出了声音引擎集成所需的外部输入库。
|
备注: 记住,如需查看所需平台对应的表格,请务必参阅以下资源:
- 相应平台对应的 Wwise SDK CHM
- 在线帮助:登录并访问您所注册的所有平台相关信息。
|
Windows |
库 |
说明 |
dinput8.lib |
Microsoft DirectX DirectInput。使用 Motion 功能时需要,以用来支持 DirectInput 设备。 |
Winmm.lib |
Microsoft Multimedia API. 使用 Motion 时需要,用于内部设备定向管理。 |
dsound.lib |
Microsoft DirectX DirectSound 库 |
dxguid.lib |
Microsoft DirectX Audio GUID |
ws2_32.lib * |
Microsoft Winsock 2 库(用于 Wwise 性能分析) |
xinput.lib |
Microsoft XInput。使用 Motion 功能时需要,用来支持 XInput 设备(Xbox 控制器)。 |
* 对于 Release 配置则不需要。 |
Mac |
Framework |
说明 |
AudioToolbox.framework |
Audio Toolbox 框架包含提供应用级服务的 API。 |
AudioUnit.framework |
Audio Unit 框架包含专门用于音频单元和音频编解码器的 API。 |
CoreAudio.framework |
此框架包含构成硬件抽象层(HAL)服务的所有 API。 |
Android |
SoundBank |
说明 |
android |
Android 的基本库 |
OpenSLES |
Android 的自带音频库 |
zip |
用于读取压缩文件的库。由 Dieter Baron 和 Thomas Klausner 开发。此 SoundBank 与 SDK 一起发布。 |
z |
Android z SoundBank |
iOS/tvOS |
框架 |
说明 |
AudioToolbox.framework |
Audio Toolbox 框架包含提供应用层服务的 API。 |
CoreAudio.framework |
此框架包含构成硬件抽象层(HAL)服务的所有 API。 |
在 XCode 中链接静态 iphone 库
为了能够正确地链接相应的库(真机或者模拟器),您必须按照以下说明操作:
- 在 XCode 工程中创建以下配置:Debug、Profile 和 Release。
- 打开工程的 Build Settings(构建设置)页面,并将“library search path”(库搜索路径)设为“/Developer/SDKs/Wwise/SDK/iOS//lib”或“/Developer/SDKs/Wwise/SDK/tvOS//lib”。(假设您已将 Wwise SDK 安装在默认位置)
- 打开目标应用程序的 Info(信息)页面。在“Other linker Flags”下为您要链接的各个库添加 -l[libraryName]。在大多数基本设置中,需要添加“-lAkMemoryMgr -lAkMusicEngine -lAkSoundEngine -lAkStreamMgr”。
|
备注: "$(CONFIGURATION)" 将自动替换成 Debug、Profile 和 Release 中之一;根据 XCode 中的活跃配置,
"$(EFFECTIVE_PLATFORM_NAME)" 将自动替换成 -iphoneos 或 -iphonesimulator
Integration Demo 以此方式设置,因此请查看它来了解进一步信息: SDK/samples/IntegrationDemo/iOS/IntegrationDemo.xcodeproj or SDK/samples/IntegrationDemo/tvOS/IntegrationDemo.xcodeproj
|
|
技巧: 请注意,如果您不按照这些说明操作,可能必须使用单独的 XCode 目标创建设备和模拟器应用程序。否则,在从创建设备应用程序切换为创建模拟器应用程序(或者相反)后,您可能会遇到增量构建错误。 |
Wwise SDK 库依赖 Android NDK 中的以下基础库。
Android |
SoundBank |
说明 |
libandroid.a |
基础 Android API |
libOpenSLES.a |
原生音频 API |
请参阅 SDK 输入库 与分布式二进制文件