ゲーム状況に応じてなめらかにモーフする、リアルな雨音をつくる。
ゲームの状況に応じて刻一刻と変化していく、ダイナミックサウンドのデザインは、ADX2の得意とするところです。
最小限の変数でサウンドコントロールができるため、プログラム側からの呼び出し・制御もスムーズです。
今回、ADX2の機能のひとつ「AISAC」利用し、さまざまなキューの再生制御をおこなうことで、
ゲームの状況によって絶えず変化していく雨音(ザア…ゴロゴロ音)を設計してみましょう。
以下から、データをダウンロードできます。
雨音(ザアア…)を作る
まず、「小雨」と「どしゃぶり」とでは、聞こえ方が異なります。
そこで下図のように、ADX2のAISACを使用することで、3つの雨音の効果音素材ループの遷移をデザインすることができます。
- 天気という名前のポリフォニックキューを作成する
- 雨のオーディオループごとにトラックを作成する
- 無限設定がなされたシーケンスループを作成し、トラックの最初と最後をマーカーで囲みます
この段階でキューを再生すると、すべてのループが均等に再生されます。
状況に応じて各雨音のレベルを上げたり下げたりしたいので、以下の流れに乗っ取ってAISACを使用したループを作成します。
- それぞれのトラックごとに同じID名を使用し、AISACを作成する
- カーブをクリックしてノードを作成しながら、段階的な遷移カーブを作成する
AISAC上部にあるスライダーを左右に動かしながら各カーブを調整していくと、最終的な結果は上記のようになります。
雷(ゴロゴロ…)を追加する
次に以下の流れに沿って、ランダムかつ動的に変化していく雷鳴を作成してみましょう。
- thunderという名前のキューを「ランダムノーリピート」設定で作成する
- 雷の音ごとにトラックを作成する
- Thunderキュー自体のピッチランダム幅を250に設定します
これでthunderキューを再生するたびに、いろいろな聞こえ方の雷鳴が聞こえるはずです。
次に以下の方法で、先ほど作ったWeatherキューの中から、この雷音を呼び出してみましょう。
- Weatherキュー上で右クリック -> 新規オブジェクト ->アクショントラックの作成を右クリックします。
- 新しく作成したアクショントラック上で右クリック - >新規オブジェクト - >開始アクションを右クリックします。
- Thunder CueをWorkUnitsツリーから新しく作成したアクショントラックにドラッグ
これで雷鳴のアクショントラックが表示され、薄い緑色のボックスに開始アクションが表示されます。
再生ヘッドがこのアクション位置に達するたび、Thunder Cueがその雷のトラックの1つをランダムに再生します。しかしこのままだと、ループが短いため雷鳴が頻繁に起こってしまいます。雷鳴を鳴らす確率を下げるには、次の2つの方法があります。
①Thunderキューのインスペクターで、再生確率を下げる
②トラック内のランダムウェイトを100未満に調整する
上図の設定ですと、雷鳴が何も再生されない確率は46%(100-9-12-12-11-10%)となります。
現段階で、雨の連続的な音の変化、バラエティに富んだ雷が、かなりうまく表現されているのがわかります。
しかし雷の音は、雨がポツポツ振っているときに大きく聞こえる性質があり、また雨の強さとともにその響き具合も変わってきます。
そこで、先ほど作ったAISIAC値を再度使用して、雷の音もさらにインタラクティブに仕上げてみましょう。
- 以前と同じID名を使用し、ThunderキューでAISACを作成する
- 「ボリューム」と「バンドパス-Cof高域」のコントロールを作成する
- カットオフが時間と共に減少、かつ音量が増加するようにカーブを形作る
これによりAISACの値が低い場合、雷が静かに鳴ります。かつ高音域がカットされているため、「遠くで鳴っている雷」を表現できます。
セッションウィンドウでプレビューをしてみる
これで、たった1つのAISAC値でコントロールできる雨の環境音ができました。次のような方法で、作成したサウンドの視聴ができます。
- セッションビューを開く(表示-> セッションウィンドウ)
- Weatherキューや他のキューを、「ここにキューをドロップ」と表示されている場所へドラッグ&ドロップ。
- トランスポートコントロールを使用して再生・停止
- AISACコントロールを左右に振り、サウンドをチェックする
今回、シンプルながら機能性に富んだ雨音を作ってみました。
こういったテクニックを応用していけば、ゲームを盛り上げる、動的な情景音をいろいろ作り出せるようになるでしょう。
記事上部からサンプルデータをダウンロードできます。ぜひお試しください!