バージョン
menu_open
Wwise Unity Integration Documentation
WwiseとUnityでDLCをつくる

Wwiseのファイルパッケージの利用

DLCをWwiseでサポートするデフォルトの手段は、File Packageの利用です。 機能の説明は、Authoringに関するドキュメント: Wwise > Help > Finishing Your Project > Managing File Packages > Downloadable Content Overviewにあります。パッケージに入れるBNKやWEMの置換用ファイルや追加ファイルについて、またそれらを自由にロードしたりアンロードしたりすることでDLCを有効・無効にする方法などが、簡単に説明されています。このパッケージフォーマットの使用は必須ではありませんが、現在のWwise/Unityプラグインに組み込まれて提供されています。自分のパッケージフォーマットを書くには、新しいLow-Level IOを書いてデフォルトのものと置き換えてください。

Unityでパッケージに使うには、パッケージをAkInitializerのプロパティとしてBase Pathに設定したパスに置くだけです。次に、 AkSoundEngine.LoadFilePackage() をコールします。Wwiseはファイルをロードする時に、必ずファイルパッケージ経由で、逆順でロード(最後に追加したものを最初にサーチ)しようとします。

この方法は、ゲーム出荷後にBase Pathにディスク書き込みができる全てのプラットフォームで利用できます。残念ながら、iOSやAndroidはこれが行えません。

AndroidとiOSの場合は全てのデータをリードオンリーのファイルシステムにバンドル化するため、パッケージを別のディレクトリに入れる必要があります。これを行うには AkSoundEngine.LoadFilePackage() の前に、 AkSoundEngine.AddBasePath() をコールします。複数のパスを追加でき、最後に追加したものを最初にサーチします。制約事項については、該当するOperating Systemドキュメントを確認してください。以下のコードは、ファイルを保存する場所のパスを選択するためのコードの例です:

#if UNITY_IPHONE
string fileNameBase = Application.dataPath.Substring(0, Application.dataPath.LastIndexOf('/'));
fileName = fileNameBase.Substring(0, fileNameBase.LastIndexOf('/')) + "/Documents/" + FILE_NAME;
#elif UNITY_ANDROID
fileName = Application.persistentDataPath + "/" + FILE_NAME ;
#else
fileName = Application.dataPath + "/" + FILE_NAME;
#endif

なおAndroidでは、sdcardや同様のメモリデバイスなど他にも書き込み可能なパスがいくつかあります。

Addressablesを使う

UnityのAddressablesシステムを使い、SoundBankのパッケージングや配信と、メディアファイルのストリーミングができます。 詳細は UnityのためのWwise Addressablesパッケージ ページを参照してください。

UnityWebRequestを使ってバンクをストリーミングする

UnityのUnityWebRequestクラスを利用して、直接DLCオーディオファイルを取得してロードすることも可能です。 これはメモリ内にバンクをロードして行い、AkMemBankLoader.csで実現できる通りです。 Unityの古いバージョンでは、AkMemBankLoaderで、WWWクラス(すでに廃止)のあるバンクもロードできます。 既存のバンクを新しいバンクで置き換えたい場合は、まず以前のバンクをアンロードする必要がありますが、その理由は、Wwise IOシステムがそのコードについて認識していないので、同じバンクをあなたが誤ってもう一度ロードしようとしているのか、それとも置き換えようとしているのかを、判断できないからです。


このページはお役に立ちましたか?

サポートは必要ですか?

ご質問や問題、ご不明点はございますか?お気軽にお問い合わせください。

サポートページをご確認ください

あなたのプロジェクトについて教えてください。ご不明な点はありませんか。

プロジェクトを登録していただくことで、ご利用開始のサポートをいたします。

Wwiseからはじめよう