ファイルロケーションの解決で、説明したように、言語固有ファイル(サウンドバンクとストリーミングオーディオファイル)は、低レベルI/Oシステムに管理されます。デフォルトの低レベルI/Oシステム CAkDefaultLowLevelIO は、AKStreamMgr::SetCurrentLanguage() への呼び出しで、言語固有のサブディレクトリ名を設定した場合、これをサポートします。
次のコードは、以下の方法で現在の言語を変更します:
#define BANKNAME_HUMAN L"Human.bnk" (...) // Unload language-specific banks that are currently loaded AK::SoundEngine::UnloadBank( BANKNAME_HUMAN, NULL ); // Change the language-specific path AK::StreamMgr::SetCurrentLanguage( AKTEXT("French(Canada)/") ); // Reload the banks we've just unloaded, this time in the new language AkBankID bankID; AK::SoundEngine::LoadBank( BANKNAME_HUMAN, AK_DEFAULT_POOL_ID, bankID );
サンプルプログラム内の"Current language(現在の言語)"ドロップダウンリストでこれを試すことができます。
デフォルト低レベルI/Oモジュールについての更なる情報は、デフォルト低レベル I/O の実装 を、ファイルのローカリゼーション詳細については、ファイルロケーションの解決 を参照してください。
サウンドバンク識別の詳細については、バンクの識別 をご覧ください。
|
Note: このサンプルコードは、サンプル セクションにある Sound Engine Integration Sample Project(サウンドエンジン統合サンプルプロジェクト)に由来しています。詳細は、Integration Demoサンプル をご覧ください。 |