サウンド構造の詳細設定は、オブジェクトのProperty EditorのAdvanced Settingsタブにあり、同時に再生できるサウンド数の制限や、聞こえない時のサウンドの動作などを設定できますが、それぞれ、以下のようなメリットがあります:
Advanced Settingsの調整を、制作プロセスの遅い段階に後回ししないでください。具体的には、ミキシング前またはミキシング中に、少なくとも1回目の確認を行うようにします。早い段階でミキシングに手を加えすぎて、後でオーディオがリソースを消費しすぎていることに気づき、Advanced Settingsを積極的に使い、オーディオ処理を制約範囲内に収めようとすると、ミックスが大々的に変わってしまう恐れがあります。
Playback Limit(再生制限)は、実はミキシングを助ける機能です。ダイナミックミキシングの一種として利用すれば、ユーザーがサウンドに圧倒されずに重要なサウンドにフォーカスできます。この他にも、バスダッキング、Set Voice Volume Action、State、RTPCなどを使ってミックスを整理できます。
Playback Limit(再生制限)をサウンド構造に適用すると、同時再生できる最大サウンド数を、ゲームオブジェクト毎に設定したり(Actor-Mixer階層やInteractive Music階層の場合)、グローバル(全体)に設定したり(Master-Mixer Hierarchyのバスの場合)できます。再生制限のロジックは、再生するサウンドの数に基づいているだけです。しかし、サウンド・デザイナーは階層全体に、様々なオブジェクトへ別々の制限を適用することができます。そして、希望によって、Ignore Parent オプションを選ぶことで別々の階層を作ることができます。つまり、再生制限のそれぞれのレベルはサウンド・デザイナーに、強力かつ簡単に何を再生するかのコントロールを提供します。
再生制限の条件を確認してから、サウンド再生が試みられます。サウンドを再生しようとする時に、既に再生制限に達していれば、このサウンドまたは他のサウンドが停止されます。最初の判断材料がサウンドのプライオリティです。2つのサウンドのプライオリティが同じケースでは、サウンドエンジンが最古または最新のサウンドインスタンスを停止しますが、これはWhen limit is reached(制限に達した場合)や、When priority is equal(プライオリティが同等の場合)の項目に設定されたプロパティで決まります。
注記 | |
---|---|
Playback Limitによってキル(kill)され消されたサウンドは、再生カウントが制限以下に戻っても、再びスタートすることはありません。無限にループするアンビエントサウンドなどでは、特に注意してください。 |
Priority設定は、Playback Limitと一緒に機能します。制限システムのバランスを保つために、階層内のプライオリティを調整してください。絶対に制限システムでキルしてはいけないサウンド、例えばナレーション、BGM、ループするアンビエントサウンドなどは、最高のプライオリティを付与します。さらに、サウンドとリスナーの距離によって最終的なプライオリティが左右されることもあります。
状況がunder Volume Threshold(閾値以下)の設定動作は、Playback LimitやPriorityと無関係です。これは、聞こえなくなったサウンドの動作を設定しているだけです。サウンドが聞こえるかどうかを判断するために、Wwiseはメタデータボリューム、つまり階層、バス、State、RTPC、そしてSet Voice Volumeアクションの全ボリュームを合算した結果を見るだけです。WAVデータの分析は一切行われません。
以下のダイナミックミキシングテクニックが、Advanced Settings タブで設定できます。
バスやアクターミキサー構造の再生を制限して、大事なサウンド用にスペースを確保する
例えば、激しいアクションや爆発などプレイヤーが集中すべきエレメントがある場面では、アンビエントサウンドやフォーリーサウンドの数を減らします。アンビエントやフォーリーが銃撃や爆発とかち合うバスを見つけて、このバスに制限をかけ、前者のプライオリティを下げます。
距離を基準としたオフセットを、プライオリティに適用する
例えば、様々なアンビエンスサウンドのうち、接近しているものにフォーカスがあたるように、距離単位のプライオリティを適用した再生制限を行います。Offset priority byオプションで、最大距離におけるプライオリティオフセットを指定して、オフセット値を0からat max distanceまでの間で補間します。
重要でないサウンドのボリュームをダッキングする
再生制限を全く使えない場合もあります。例えば、あるレベルの最初にアンビエントサウンドを無限ループ再生し始めた場合は、再生制限によって停止させてしまうと、状況が落ち着いてからも再び再生されることはないので、避けるべきです。このようなケースや、その他の妥当だと思われるケースでは、ゲームのオーディオで他の重要な分野にアクションがあった時に、適切なテクニックを使ってアンビエントサウンドのボリュームをダッキングさせると良いでしょう。例えば、ナレーション中やコンバット中は、アンビエンスをシャットダウンすることもできます。また、グレネードが真横で爆発したら、ランプの電池音などは聞こえなくても構わないでしょう。この処理は、メタデータのサイドチェインととらえることができます。ボリュームの増減を、コントロールバスのバスダッキング機能でトリガーさせたり、特定イベント内のSet Voice Volumeアクションでトリガーさせたりします。
ミキシング内容を整理して、特定の状況では重要でないサウンドのボリュームが下がるように設定できたら、それらのサウンドのunder Volume Threshold動作を微調整して、聞こえない時の消費CPUやメモリを最小限に抑えます。
コード側のダイナミックミキシングシステムの実装
なお、再生制限、プライオリティ設定、そしてプライオリティオフセットは、RTPC経由でゲームに露出させることもできます。設定値をゲームで起きている内容によって変化させるシステムを実装するのも、作成者の自由です。