目次

概要

今日のゲーム、特にスポーツゲームでは、多くの場合、ダイナミックなオーディオコンポーネントを用いて、ゲームで起きるActionに対応させています。従来の方式で信ぴょう性のあるダイアログを成立させるには、何千ものアセットを作成して、全ての可能なシナリオに対して、複雑なSwitch Container階層を1つ1つ構築する必要がありました。メモリ容量が限られる中で、プロジェクトのアセットを効率的に管理する必要があります。

このような限界に対応するために、Wwiseではダイナミックダイアログの新しいとらえ方を導入しています。ゲームの様々な条件や結果を、StateやState Groupを用いて、Wwiseで事前に定義します。StateやState Groupはゲームに存在する様々なカテゴリーを表します。例えば、アメフトゲームのStateやState Groupとして「Team」「Players」「Action」などが考えられます。また全てのStateやState Group、つまりカテゴリーに、対応するいくつかのState値を設定する必要があります。アメフトの例でいうと、Teams State GropuにDallas、Pittsburgh、New EnglandなどのState値を設定できます。

State GroupやStateを組み合わせたダイアログイベントで、あらゆるゲーム条件を全て再現します。この条件はパスと呼ばれ、それぞれ特定のボイスオブジェクトにアサインされます。ゲームのプレイ中に、現在のStateを、Wwiseのダイアログイベントの中の、作成したStateと比較することで、どのダイアログ(台詞)を再生するかが決まります。

ダイナミックダイアログでの、State活用例

例えば、実況中継付きのゴルフゲームを考えましょう。ゲーム中のカテゴリーに合わせてStateやState Groupを作ります。次に、このカテゴリーに該当する全てのStateを、StateやState Groupに設定します。ゴルフゲームの例では、「Players」「Clubs」「Courses」「Shots」「Locations」「Reactions」など様々なStateやState Groupが必要です。

下表は、ゴルフゲームにおける各種カテゴリーをStateやState Groupに分け、それぞれに該当するStateを整理した例です。

State GroupやStateが定義できたら、これらをゲームに必要なダイアログイベントに追加し始めます。Dialogue Eventの作成については「ダイアログイベントの作成」を参照してください。