『デュバルドライブの謎』が本物らしく、信じられるものに感じられるように、私たちは開発のすべての段階で雰囲気を重視しました。私たちは、スクリプト化されたオーディオイベント、音楽、キャラクターの音、ポイントソースオーディオを含め、「草は常に緑である」というアプローチをサポートしました。つまり、プレイヤーが家のどこにいても、遠くにもっと興味深い音があるようにしたいと考え、各部屋をさらに探求したくなるようにしました。これらの音は、寝室で音楽を流すラジオ、キッチンのシンクの水滴、屋根裏の雨音、または家の中心にある振動する儀式のオーブなど、さまざまなものでした。
ホラーをテーマにしたゲームのサウンドデザインは、現実的な音と抽象的な音の両方を埋め込むバランスを取ることです。現実的な音は、世界に没入感と信憑性を提供しますが、抽象的な音は、物語を前進させる異世界の要素にプレイヤーの注意を引きます。両方の音のタイプはそれぞれに強みがありますが、一緒に使うことで、本物らしく、信じられ、恐ろしいダークサウンドスケープを作り出すことができます。このセクションでは、ボリュメトリックオーディオとネストされた SoundGroup ミキシングを使用して、どのようにしてダークサウンドスケープのバランスを取り、3D空間に命を吹き込んだのかを示します。

ボリュメトリックオーディオ
ボリュメトリックオーディオ は、スタジオでの音の最も現実的なオプションであり、音が耳からの距離に応じてどのように知覚されるかを示します。このタイプのオーディオでは、Sound オブジェクトを BasePart に配置し、その BasePart を使用してオーディオを再生したいエリア全体をカバーします。これは、滝、車両、大都市など、音を出す大きなオブジェクトに非常に便利です。プレイヤーがボリュメトリックオーディオが有効な子 Sound オブジェクトを持つ BasePart 内にいると、オーディオはプレイヤーの周りで再生され、ヘッドフォンで音楽が同じ音量で再生されるのと似ています。ユーザーがオブジェクトから出ると、オーディオは徐々に音量が減少し、スピーカーごとにより方向性が強くなり、リスナーが回転すると音がユーザーの頭の周りを移動します。つまり、音がリスナーの左側から発せられている場合、音は右のスピーカーよりも左のスピーカーで大きく再生されます。

プレイヤーのオーディオ体験は、聞こえる音だけでなく、どの方向からその音が来るかにも依存します。現実の世界では、フィールドの向こう側から名前を呼ばれると、部屋のエアコンの柔らかなハム音や洞窟の反響よりも、はるかに方向性が強く感じられます。これは、音波が跳ね返り、壁、舗装、木などの固体物体に当たると、散乱し、さまざまな方向から耳に戻ってくるためです。実際、音波は自分の頭のような物体の周りを曲がることさえできます!

ボリュメトリックオーディオの前は、オーディオを空間の単一ポイントから発信させるか、音楽のように両方のヘッドフォンで再生させることに制限されていました。私たちは、オーディオをできるだけ現実的にし、さまざまな音のタイプを表現したかったため、これらの以前の実装のいずれも、私たちがこのゲームで捉えたかった没入型の世界を作成するには不十分でした。その結果、私たちは、屋外の雨、室内の部屋のトーン、破損したゾーンの雰囲気、テレビの静電気、さまざまな表面に当たる雨音を含む、ほとんどのサウンドエフェクトにボリュメトリックオーディオエミッターを使用しました。プロジェクトでボリュメトリックオーディオを無効にすると、これらの音はすべて質量の中心での単一の発信ポイントに収束し、プレイヤーがカメラを回転させるたびにサウンドスケープ全体が耳の間でシフトします。これにより、空間全体が非現実的でデジタルに感じられ、音の動きはプレイヤーにとって非常に不快で望ましくないものになります。


ボリュメトリックオーディオエミッターにより、サウンドスケープの方向性を制御し、空間を通る動きの実感を与えることができました。影響がより広いエリアに広がり、オーディオが自然に両耳に広がるため、ゲーム全体のサウンドベッド、つまりオーディオ活動の一定のハム音の音量レベルがはるかに予測可能で安定したものになります。これにより、プレイヤーのキャラクターが何もしていないときにゲームが静かになるのを防ぎ、現実の生活では完全に無音の空間は非常に少ないため、ゲームが現実的に感じられます!

屋外のサウンドスケープに詳細を追加する際、雨を単なるループする雨音効果ではなく、生き生きとしたものに感じさせることが重要でした。これを達成する方法の一つは、さまざまなオブジェクトに雨の表面音を追加し、嵐の影響を周囲で感じられるようにすることでした。このプロジェクトでは、一般的な屋外の雨音もありますが、窓、プラスチック、屋根などのオブジェクトに当たる雨のためのボリュメトリックオーディオエミッターもあります。たとえば、次のプロセスを通じて車にボリュメトリックオーディオエミッターを追加し、プレイヤーに雨滴が車のボンネットの単一ポイントではなく、車全体の表面に影響を与えている印象を与えました:
- Explorer ウィンドウで SoundService を選択しました。
- Properties ウィンドウで VolumetricAudio プロパティに移動し、Enabled に設定しました。これにより、プロジェクト全体のボリュメトリックサウンドの動作が有効になりました。
- ビューポートで、車のサイズに合わせた新しい Part を作成しました。これにより、音を発信したい全体の領域が定義されました。
- Properties ウィンドウで、パートが地面を貫通したり、車のモデルと衝突したり、車の視認性を妨げたりしないように、次のプロパティを設定しました:
- Part.Anchored = Enabled
- Part.CanCollide = Disabled
- 次に、見えないパートに Sound オブジェクトを追加し、プレイヤーがゲームに入ったときに雨音が再生され、継続的にループし、プレイヤーが60スタッド離れたときに音が聞こえ始め、15スタッド離れたときに最大音量に達するように、次のプロパティを設定しました:
- Sound.SoundId = 9178663282
- Sound.Playing = Enabled
- Sound.Looped = Enabled
このプロセスにより、音は見えないパートの全表面から発信されました。プレイヤーがパートの中にいると、雨音はプレイヤーの頭の周りで再生されます。ボリュメトリックオーディオエミッターを大きくするほど、ボリュメトリックサウンドがカバーする範囲が広がるため、さまざまなサイズや形状のエミッターを試して、自分のゲームに合ったサウンドスケープを得てください!
ネストされたSoundGroupミキシング
人間として、私たちは優れたマルチタスクができると思いたいですが、実際には、特に複数のオーディオソースを聞くことに関しては、一度に2つ以上のことに集中するのは非常に難しいです!『デュバルドライブの謎』では、雰囲気、音楽、足音、雨、UI通知など、任意の時点で12の音が再生される可能性がありますが、それらがすべてあなたの注意を奪い合っているように感じさせない方法が必要でした。このため、私たちは SoundGroups を親子関係でネストすることに決め、オーディオミックスを作成してプロジェクトのサウンドデザインの組織と一貫性を確保しました。
SoundGroupsのネスト は、SoundGroups を意味のあるカテゴリに整理し、さらなるオーディオ機能のためのミックスツリーの下に配置する新しい機能です。これにより、複数のオーディオソースの音量を一度に微調整したり、共通のオーディオ効果を低いCPUコストで適用したりできます。このプロジェクトでは、ミックスに非常に進行指向のアプローチを取ったため、パズルの進行に直接寄与する音(パズルやキーオブジェクトのインタラクション音)を、進行に寄与しない音(風、雨、足音、雰囲気音)よりも優先させたいと考えました。低優先度の SoundGroups を異なる優先度レベルの親 SoundGroups にネストすることで、CompressorSoundEffect を追加し、高優先度の SoundGroups のオーディオが再生されるときに、低優先度の SoundGroups の音量をリアルタイムで下げることができました。このプロセスはダッキングと呼ばれます。


CompressorSoundEffect には、低優先度のオーディオの音量を下げるために設定する必要がある5つの主要なプロパティがあります:
| プロパティ | 説明 |
|---|---|
| CompressorSoundEffect.Threshold | 音量を下げるためにコンプレッサーが受信信号にどれだけ敏感であるか。数値が低いほど、高優先度の音が効果を発揮するために必要な音量が小さくなります。 |
| CompressorSoundEffect.Ratio | 低優先度の音をどれだけ下げたいか。数値が高いほど、より多くの音量ダッキングが行われます! |
| CompressorSoundEffect.Attack と CompressorSoundEffect.Release | アクティブになったときに音量の減少がどれだけ早くフェードインおよびフェードアウトするか。ここには厳密なルールはありませんので、自分の判断と耳を使ってサウンドスケープに合うように調整してください! |
| CompressorSoundEffect.Sidechain | 低優先度の音をダッキングしたい SoundGroup。これが魔法を生み出します! |
これらのプロパティや、異なる SoundGroups からのオーディオの優先順位付けの全プロセスについての詳細は、SoundGroupsのネスト と ダッキング を参照してください。
