Wwiseの基本的なアプローチ
プロジェクト階層
プロジェクト階層の基盤となるのが、プロジェクトにインポートしたアセットです。プロジェクト階層は従来のミキシング技術から発展したもので、複数の楽器をバスにルーティングし、一つのミキシングしたサウンドとしてサウンドプロパティをコントロールするのと同じことです。例えばハイハット、ライド、クラッシュ、バスドラム、スネアなどのサウンドを一つのバスにルーティングすることで、これらが1つの要素であるかのように、まとめてボリュームやその他のパラメータをコントロールできます。
Wwiseは同様のアプローチでサウンド、モーションオブジェクト、そしてミュージックをプロジェクト内で整理し、グループ化します。オブジェクト(サウンド、モーション、ミュージック)をグループ化することにより、階層型のプロジェクト構造が構築され始め、様々なオブジェクト間に親子関係が発生します。ゲームのオーディオやモーションを、このようにユニークで効率的な方法で作成し管理することで、コントロールと柔軟性が向上し、リアルで没入感のあるゲームを実現できます。
Wwiseのプロジェクト階層は、3つの異なるレベルで構成されています。
アクター・ミキサー階層(Actor-Mixer Hierarchy) ― Wwise独自のオブジェクトを使い、プロジェクトの全てのサウンドアセットやモーションアセットをグループ化し、整理する。
インタラクティブミュージック階層(Interactive Music Hierarchy) ― Wwise独自のオブジェクトを使い、プロジェクトの全てのミュージックアセットをグループ化し、整理する。
マスター・ミキサー階層(Master-Mixer Hierarchy) ― サウンド、モーション、ミュージックの構成のルーティングやアウトプットを、1つまたは複数のアウトプットバスを利用して定義する。
チーム作業を支えるWwiseのプロジェクト階層 | |
---|---|
今日のゲーム開発環境において、チーム作業は欠かせません。1つのゲームにつきWwiseプロジェクトは1つしか使用できませんが、Wwiseプロジェクトの階層をワークユニットに分割することで、複数のチームメンバーがプロジェクトで同時に作業することができます。ワークユニットは独立したXMLファイルで、プロジェクトの一部分または特定の要素に関連した情報が格納されています。ワークユニットはプロジェクトの様々な要素の整理や管理に活用することができます。また、チームで作業をする場合、ワークユニットをソースコントロールシステムで管理することにより、複数のメンバーによる並行作業が円滑に進められます。 |
プロジェクトの全てのサウンドアセットやモーションアセットが、アクター・ミキサー階層でグループ化され、整理されます。階層のベースには、全てのサウンドオブジェクトやモーションオブジェクトがあります。オブジェクトのプロパティや動作(behavior)は個々に定義できますが、いくつかのオブジェクトをグループ化し、1つのユニットとしてまとめてプロパティや動作を定義することも可能です。ゲームの複雑なオーディオ編成に対応するために、異なるタイプのオブジェクトをWwiseのプロジェクト階層に入れることができます。オブジェクトタイプによって、ボリューム、ピッチ、ポジショニングなどのプロパティセットがあり、ランダム再生やシーケンス再生など、固有の動作セットもあります。プロジェクト階層上でオブジェクトタイプを使ってサウンドをグループ分けすることにより、ゲーム中の同じグループのサウンドに特定の再生動作を設定することができます。また、階層の異なるレベルでプロパティや動作を定義し、違った効果を得ることもできます。
ゲームのモーションは、一般的にオーディオとひも付いているため、Wwiseではモーション制作にもオーディオと同じ考え方やワークフローを採用しています。つまり、ゲームのモーションアセットを階層に整理し、オーディオアセットと同様に、プロパティや動作を割り当てることができます。
以下のオブジェクトタイプを利用して、アセットをグループ分けし、プロジェクトの構造を作ることができます。
サウンド(Sound)オブジェクト
モーションエフェクト(Motion FX)オブジェクト
コンテナ(Container)
アクター・ミキサー(Actor-Mixers)
ゲームのボイスアセットやSFXアセットは、Wwiseではサウンドオブジェクトという特殊なオーディオ構造で表現されます。このサウンドオブジェクトに、元のオーディオファイルとリンクしたソースが格納されています。
オーディオソースは、インポートされたオーディオファイルとサウンドオブジェクトの間にある別のレイヤです。この抽象的なレイヤを追加することで、1つのサウンドオブジェクト内に、複数のソースやオーディオファイルを格納することができます。
このため、様々な変換(conversion)設定を簡単に試すことができ、複数言語の対応も効率的に管理できます。
注:Wwiseではプロジェクトのミュージックアセットやモーションアセットも同様の方法で管理します。
サウンドオブジェクトは、オーディオソース以外にプラグインソースにも対応しています。
Wwiseには、音源、サイレンス、オーディオ入力など、様々なソースプラグインが同梱されています。これらのプラグインは開発パイプラインですぐに使用できるほか、プログラマーが独自のプラグインを開発する際に、提供されたソースコードと合わせてレファレンスとして利用できます。Wwiseではオーディオ構造の作成と管理をサウンドデザイナーが行うため、プログラマーが様々なソースプラグインを開発する時間が増え、オーディオデザインの可能性が広がり、ゲーム全体の表現力も強化されます。
サウンドオブジェクトをグループ化することで、プロジェクトの階層が構築されます。階層の様々なレベルでオーディオのプロパティや動作を設定できるため、コントロールと柔軟性が向上し、リアルで没入感のあるゲームを実現できます。
サウンドオブジェクトは、コンテナを使ってグループ化します。コンテナの主な用途は、ランダム、シーケンス、スイッチなど特定の動作を指定してグループのオブジェクトを再生させることです。例えば、全ての銃声音をランダムコンテナにまとめ、ゲームで発砲がある度に、異なる銃声音が再生されるように設定できます。
オーディオ構造は全て、バス階層にルーティングされ、ここでも更にグローバルレベルで、プロパティやエフェクトを設定できます。
下表は、オーディオ構造に関連するタスクの担当者を、サウンドデザイナーとプログラマーに分けたものです。
タスクの内容 |
サウンドデザイナー (Wwise) |
プログラマー(ゲームコード、ツール) |
---|---|---|
サウンドオブジェクトの作成(オーディオアセット用) | ◯ | |
オブジェクトのグループ化、プロジェクト階層のビルド | ◯ | |
サウンドのプロパティや動作の定義 | ◯ | |
オーディオ構造をバスにルーティング | ◯ | |
ソースプラグインの開発 | ◯ |
Wwiseでは、非常に柔軟にインタラクティブミュージックを制作することができます。インタラクティブミュージック用のオブジェクトを組み合わせて曲を作る方法は、ほぼ無数にあります。しかし、ある程度決まった構成に従った方がワークフローとして効率的です。
インタラクティブミュージックを制作する際に採用できる、2つの基本的なプロジェクト構造を下記に示します。
垂直のプロジェクト構造とは、ミュージックセグメントに含まれるトラックをシャッフルして、ゲームの曲を再編するプロジェクト構造です。音楽制作で行われるトラックのミキシングと似ています。長いマルチトラックのセグメントから、変化ある曲を作ることができます。
水平のプロジェクト構造とは、再生するセグメントを随時変えて、ゲームの曲を変化させるプロジェクト構造です。短い単独セグメントをインタラクティブミュージック階層(Interactive Music Hierarchy)でアレンジする方法ですが、アクター・ミキサー階層でオブジェクトをアレンジする方法と似ています。これによって、ゲーム機の負荷を最小限に抑えながら、複数の短い音楽セグメントを使い魅力的な曲を作り出せます。
両方の構造を組み合わせながら、プロジェクトで与えられたリソースを効率的に使うのが一般的な手法です。優れた構造は際立つ音楽を生み出しながら、ゲーム機のリソースを上手に活用します。
アクター・ミキサー階層やインタラクティブミュージック階層の上位にあるのが、マスター・ミキサー階層(Master-Mixer hierarchy)です。マスター・ミキサー 階層は複数のバスを有する別個の階層であり、プロジェクトの様々なサウンド構成、ミュージック構成、モーション構成を再度グループ化してミキシングを行い、出力用に準備します。マスター・ミキサー階層は2つに分けられ、サウンドとミュージックの部分と、モーションの部分があります。どちらも、最上位レベルにマスターバス(Master Bus)があり、その下のチャイルドバスの数は自由に設定できます。
サウンド、ミュージック、モーションの各構成をこれらのバスにルーティングする際、ゲーム内の主要カテゴリを適用することができます。例えば全てのオーディオ構造を、以下の4つのカテゴリにグループ化することができます。
ボイス
アンビエント
サウンドエフェクト
ミュージック
これらのバスは、プロジェクトのサウンド、ミュージック、モーションの各構成をコントロールする最終的なレベルとなるだけでなく、リバーブなど環境エフェクトの対象となるサウンドを決定するバスです。プロジェクト階層の最上位にあるので、ゲームの最終ミキシングに利用できます。またプラットフォームによっては、環境エフェクトなど特定のエフェクトをバスに適用し、ゲームに求められる没入感を創出できます。
また、オーディオバス構造を使ってゲーム内の問題のトラブルシューティングを行うこともできます。例えば、あるサウンドやミュージックを特定するために、ボイス、アンビエントサウンド、サウンドエフェクト・バスなどをソロにすることができます。
下図の例では、Master Audio Bus(マスターオーディオバス)階層において、まず2つのバスでEnvironmental(環境)サウンドとNon-Environmental(非環境)サウンドを分け、さらにアクター・ミキサー階層にあるサウンド構成や、インタラクティブミュージック階層にあるミュージック構成を、別のオーディオバスで改めてグループ化しています。
Note | |
---|---|
Master Motion Bus(マスターモーションバス)においても、この例と同じレベルで同様の階層をつくり、プロジェクトの全てのモーション構成を編成することができます。 |