バージョン
menu_open

インタラクティブミュージックに関する、コツとベストプラクティス

インタラクティブミュージックは複雑なツールで、選択肢も多様です。プロジェクトの初期段階で、インタラクティブミュージックに関する一貫した分かりやすい方針を立てることは、以後の時間節約や効率性につながります。インタラクティブミュージックプロジェクトの進め方には様々な手法があり、ゲームで最高の結果を達成するために、Wwiseの使い方を自由に工夫してください。インタラクティブミュージックの実装に関する提案を、以下に紹介します。

垂直(縦型)のプロジェクト構造の実装

垂直(縦型)のプロジェクト構造とは、複数のトラックからなるセグメントを、少数使うもので、それらのセグメントの繰り返しと切り替わりを利用します。基本的な垂直(縦型)プロジェクト構造の例を、以下に示します。

この例では、インタラクティブミュージックの基盤として、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が頻繁に変化するプロジェクトに向いています。

2つのプロジェクト構造の併用

Wwiseを使ったプロジェクトの大半では、水平(横型)と垂直(縦型)の2種類の構造を組み合わせています。どちらの構造をどの程度採用するかは、プロジェクトに合わせて決めてください。例えば、ゲームのStateごとに異なるセグメントを1つずつ作成して(水平)、その中で再生するトラックを、ランダムなサブトラックを使って変化させることができます(垂直)。

複数のレベルにある、複数のMusic Switch Containerの使用

1つのMusic Switch Containerを、複数のStateやState GroupやSwitch Groupに結びつけることができます。ゲームから来る様々なインプットにミュージックが依存するようなシナリオでは、Music Switch Containerのカスケード階層を作成することは避け、全てのインプットを1つのMusic Switch Containerに入れると良いでしょう。ミュージックスイッチコンテナの中身は、仮想フォルダで整理でき、関連付けを設定したシステムなので、様々な関係の中で、複数のステート値やスイッチ値から、コンテナの中身を再利用できます。

トランジションが、異なる複数のグループで設定されている状態では、どのグループにもトランジションの漏れがないようなルールがあり、相互の優劣関係が決らないので、複数のSwitch Containerを様々な階層レベルで設定すると、各トランジションの優先順位を指定することが不可能とに注意してください。その結果、ミュージックトランジションがランダムに感じられ、全ての可能なトランジションを把握することが困難となります。


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

サポートは必要ですか?

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

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

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

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

Wwiseからはじめよう