バージョン
Wwiseでは、非常に柔軟にインタラクティブミュージックを作成することができます。インタラクティブミュージック用のオブジェクトを組み合わせてゲーム用のスコアを作る方法は、ほぼ無数にあります。However, adopting a coherent strategy at the beginning of a project can save you time and effort later on. インタラクティブミュージックを使ったプロジェクトに採用できる、2つの基本的なプロジェクト構造を以下に示します。
垂直(縦型)のプロジェクト構造: これは、1つのMusic Segmentに含まれる複数のトラックをシャッフルして、ゲームのミュージックスコアを変える構造です。音楽制作の現場で行われるトラックのミキシングと似ています。いくつかの長い、マルチトラックのセグメントを元に、変化あるミュージックスコアを作ることができます。
水平(横型)のプロジェクト構造: これは、再生するセグメントを随時変えて、ゲームのミュージックスコアを変化させる構造です。複数の短い単独セグメントを、Interactive Music Hierarchyでアレンジする方法であり、Actor-Mixer Hierarchyでオブジェクトをアレンジする方法と似ています。これによって、ゲーム機に対する負荷を最小限に抑え、限定された数の短い音楽セグメントから、魅力的なミュージックスコアを作り出せます。
この2つの構造を組み合わせて、プロジェクトに与えられたリソースを効率的に使うのが、一般的な手法です。優れた構造であれば、際立つ音楽を生み出しながら、ゲーム機のリソースを上手に活用できます。
The following sections provide details on implementing either of these structures or a combination of the two.
垂直(縦型)のプロジェクト構造とは、複数のトラックからなるセグメントを、少数使うもので、それらのセグメントの繰り返しと切り替わりを利用します。基本的な垂直(縦型)プロジェクト構造の例を、以下に示します。
この例では、インタラクティブミュージックの基盤として、4トラックからなるMusic Segmentを1つ、使っています。図の上半分では、このセグメントが、Stateを指定しない状態で再生されます。4トラックのうち、「Bass Clip」と「Drum Clip」の2トラックは「Normal track」設定なので、常に同じクリップが再生されます。一方、「Guitar」のトラックは「Sequence step track」設定なので、このトラックに入っている複数のクリップは、事前に指定した順番(Sequence)に従い再生されます。また、「Piano」のトラックは「Random step track」設定なので、このトラックの複数のクリップはランダム(Random)な順番で再生されます。「Sequence step」や「Random step」の場合、変化のあるトラックをもたらす鍵となるのが、元のトラックに入っている1つのクリップの代わりとして使える複数のクリップが入った、複数のサブトラックを作成することです。
図の下半分の例では、Stateの変化に反応するように、4トラックがそれぞれ、調整されています。ゲームのStateが比較的静かな「Exploration(探検)」の時は、「Drum」が聞こえません。その代わりに、「Piano」のトラック(様々なサブトラックからなるもの)が再生されます。次に、動きのある「Fight」にStateが変わると、「Piano」トラックのボリュームが下げられ聞こえなくなり、「Drum」トラックのボリュームが上がります。同時に、「Guitar」ボリュームも上がります。全体的に、ミュージックがゲームのアクションに合わせて切り替わる結果となります。
垂直(縦型)プロジェクトでは、再生するトラックを変化させる方法として、以下を利用できます。
Stateの変化
Random stepサブトラック
Sequence stepサブトラック
垂直(縦型)アプローチは特に、少数の複雑なミュージックピースを使った、State間の切り替わりが比較的少ないプロジェクトにむいています。
水平(横型)プロジェクトは、複数の短いセグメントをアレンジした階層構造に基づいています。基本的な水平プロジェクト構造の例を、以下に示します。
この例では、「Exploration」と「Fight」の2種類のゲームStateを表すMusic Playlist Containerがあり、それぞれに、Stateに対応する複数のMusic Segmentが入っています。1つ目のコンテナの4つのセグメントは、「Random Group」としてアレンジされているので、ランダム(Random)な順番で再生されます。2つ目のコンテナの4つのセグメントは、「Sequence Group」としてアレンジされているので、事前に設定された順番(Sequence)に従い再生されます。Stateが「Exploration」から「Fight」に切り替わると、コンテナ「Exploration」の、再生中の最後のセグメントが、コンテナ「Fight」の最初のセグメントに、トランジションします。この結果、ミュージックの種類が完全に切り替わります。
水平(横型)プロジェクトでは、再生するセグメントを変化させる方法として、以下を利用します。
Stateの変化
Random Container
Sequence Containers.
水平(横型)アプローチは、比較的シンプルで短いミュージックピースを多く用いるプロジェクトに推奨され、特にStateが頻繁に変化するプロジェクトに向いています。