版本

menu_open
Wwise SDK 2019.1.11
快速入门示例集成—— SoundBank

SoundBank 集成示例

概念: SoundBank 中所述, SoundBank 分为两种类型:初始化包 和 SoundBank。 每个 Wwise 工程都有一个初始化包,它必须在加载其它 SoundBank 之前加载。工程中会有任意数量的 SoundBank,其中部分可能用于多种语言。

以下代码首先在 Low-Level I/O(底层 I/O)模块中设置基本路径和特定语言的子目录。如果您不沿用此模块或干脆不沿用整个 Streaming Manager,则需要根据情况调整此代码。请参阅 流播放/流管理器 了解更多信息。

代码于是加载初始化包,在默认情况下,初始化包名为“Init.bnk”。如果您决定重命名此文件,则必须相应地更新代码。

最后,此代码加载“Car.bnk”、“Human.bnk”和“MarkerTest.bnk” SoundBank。在我们的工程示例中,它们包含Play_EngineStop_EnginePlay_Hello 等事件。

// SoundBank 文件名称
#define BANKNAME_INIT L"Init.bnk"
#define BANKNAME_CAR L"Car.bnk"
#define BANKNAME_HUMAN L"Human.bnk"
#define BANKNAME_MARKERTEST L"MarkerTest.bnk"
(...)
//
// 设置 SoundBank 路径
//
g_lowLevelIO.SetBasePath( AKTEXT("../../../samples/IntegrationDemo/WwiseProject/GeneratedSoundBanks/Windows/") );
AK::StreamMgr::SetCurrentLanguage( AKTEXT("English(US)") );
//
// (从文件名)同步加载 SoundBank 。
//
AkBankID bankID; // 未使用。这些 SoundBank 可以通过它们的文件名来卸载。
AKRESULT eResult = AK::SoundEngine::LoadBank( BANKNAME_INIT, AK_DEFAULT_POOL_ID, bankID );
assert( eResult == AK_Success );
eResult = AK::SoundEngine::LoadBank( BANKNAME_CAR, AK_DEFAULT_POOL_ID, bankID );
assert( eResult == AK_Success );
eResult = AK::SoundEngine::LoadBank( BANKNAME_HUMAN, AK_DEFAULT_POOL_ID, bankID );
assert( eResult == AK_Success );
eResult = AK::SoundEngine::LoadBank( BANKNAME_MARKERTEST, AK_DEFAULT_POOL_ID, bankID );
assert( eResult == AK_Success );

请参阅 集成详情—— SoundBank 了解声音引擎中有关 SoundBank 的更多信息,并参阅 文件位置解析 了解有关本地化的信息。

备注: 此例程摘自 示例 一节中的“声音引擎集成工程示例”部分。请参阅 Integration Demo 示例 了解更多信息。
AKSOUNDENGINE_API AKRESULT SetCurrentLanguage(const AkOSChar *in_pszLanguageName)
AKSOUNDENGINE_API AKRESULT LoadBank(const char *in_pszString, AkMemPoolId in_memPoolId, AkBankID &out_bankID)

此页面对您是否有帮助?

需要技术支持?

仍有疑问?或者问题?需要更多信息?欢迎联系我们,我们可以提供帮助!

查看我们的“技术支持”页面

介绍一下自己的项目。我们会竭力为您提供帮助。

来注册自己的项目,我们帮您快速入门,不带任何附加条件!

开始 Wwise 之旅