- Part 1. 拡張できるサウンドへ
- Part 2. Crowd Soundboxシステム
- Part 3. 追加レイヤ
PLANET COASTER - 群衆オーディオ: PART 3
追加レイヤ
Soundboxシステムは、入手したデータを通して、ゲームワールドをオーディオ中心の切り口で精査します。これは、収集したデータに基づいてエミッタ―のポジションを仮想化するシステムです。群衆用Soundboxは、カメラ周りにいるゲストの雰囲気を伝えるのに完ぺきなツールですが、素早いカメラの切り替わりや極端なアップなどに対応するために、他に2つのレイヤを用意して、必要に応じて加えたり消したりする必要がありました。
バックグランドレイヤ
Soundboxは、データ収集の際に距離に基づく制限範囲を設けて最適化させています。つまり、視野の隅の方の群衆は、分析範囲を超えているので、上手く表現できません。単純でボリュームが変化するバックグランドループ(ミックス中に静かに居座るもの)を取り入れて、パーク全体の「存在感」を出します。このレイヤはプロダクションの終盤に追加されましたが、パークを遠くから観察した時に、やや「平ら」に聞こえることに気づいたからです。群衆が遠くにいて、フィルターで音が拡散されているという想定なので、正確な同期は不要です。まさに雰囲気です。
クロースアップレイヤ
クロースアップを担うシステムが使うSoundboxは、個々のゲストが今、何をしているのかを見るために最適化されています。このSoundboxは、カメラ直近の複数のセルを見つけ、最も近くにいるゲスト達の周りにエミッタ―を10個分配します。次に、エミッタ―のポジションをトラッキングして、ゲスト達がアニメーション間で切り替わった時を観察します。音を同期させるために、シニアサウンドデザイナーのジェームズ・スタント(James Stant)が、各イベントを適したディレイを設定してオフセットさせました。
通常はイベントをフレームに乗せますが、ここまで沢山のゲストがいては負荷が大きすぎるので、このフォールバックシステムを採用しました。同期が崩れる恐れもあり、アニメーションに修正があった場合はトラッキングが難しくなってしまいますが、実務上はゲストに豊かな個性が加わるので、私たちはこれを実装して維持しようと決めました。
クロースアップオーディオ。カメラ直近にいるゲストやグループをトラッキングして、感動や感情の音を提供。
分野を超えて協力
サウンドコールバックを使い、アニメーションをトリガーする
ミキシング中によくあったことですが、ランダムに発生したイベントが、上手くお互いに溶け合うような嬉しい偶然が起きることがありました。長い間、オーディオから情報を入手できるシステムについて、検討を続けていました。例えば爆発は、サウンドに基づいて粒子のエフェクトの各ステージをトリガーした方が、もっと難しい、ランダムな粒子のタイミングにサウンドを適合させる方法より、映画的な効果があります。

そこで考えたのが、いつもPlanet Coasterのゲストたちにパークのオーディオが反応するのではなく、時々、その逆があったら、どうだろう?
マスコットキャラクターのランダムなアニメーションが、時々、群衆のリアクションと同期する例を、プロダクション、ゲームプレイ、そしてアニメーションの担当者達に披露しました。オーディオから他のシステムに情報を送るのが妥当だと、説得しやすいケースでした。これを、比較的分かりやすい音楽隊で実施しました。音楽隊が一旦配置されると移動しないので、シミュレーショングリッドにマークを残します。ゲストが音楽隊に近いセルに着くと、ダンシングアニメーションを行います。
ランダムに歩き回るマスコットキャラにゲストが反応して音を発生させるという流れの方が、難しいのです。静的グリッドに依存できないので、当初はアニメーションにリアクションするゲストという方法を考えましたが、多くの場合、アニメーションの再生回数が、妥当な頻度よりも多くなってしまいました。最終的には、オーディオにプロバビリティスライダーを設定し、飽きないようにしました。
Wwiseのマーカーコールバックが、この問題の解となりましたが、従来はFrontier Developmentsが字幕の同期に使っていた機能です。群衆がマスコットオーディオにリアクションして欲しい時は、.wavファイルにマーカーを設定しました。Wwiseは次に、マーカーに当たった時にゲームに伝え、オーディオコードが特定のアニメーションを近くのゲストに対して再生します。ゲストは、自分の後ろにいるマスコットキャラクターが大きい音を出せば後ろを振り向くので、群衆のランダムなアニメーションよりも、この方が見ていて満足感があります。
環境を認識する
群衆に対するフィルター
群衆について長々と書きましたが、ざわめきや感情表現しか見てきませんでした。足音に関しては、複雑で負荷が高くなるかもしれないアニメーション起動のトリガーソリューションが必要となってくるので、外すことに迷いがありませんでした。その代り、一般的な‘フォーリー’レイヤを使いました(衣擦れ音、バッグやボディの触れ合う音など)。
フォーリーを別扱いにしたおかげで、閉ざされた空間のミックスのバランスを整えることができました。そのような空間ではフォリーの数を増やしつつ群衆レイヤのボリュームを下げて、「空洞」の感覚を出します。また、オブストラクションや衝突のリアルタイム検知でコントロールする、アーリーリフレクションやリバーブも追加しました。
群衆やフォリーのレイヤは、カメラ周り水平50メートル以内の囲まれた空間内でE.R.バスへ送られます。リバーブのセンドに関しては、上に屋根があるのか、そして閉ざされた空間が50メートル以上(最大200メートルまで)であるかを、確認します。
環境音のフィルター。 印象派的なアプローチの音の伝播(アーリーリフレクションやリバーブを使った表現)では、カメラ周りに「囲い」を配置して、オーディオをバスに送る。
私達のリバーブやアーリーリフレクションは、アーリーリフレクションやリバーブが実際に作用する様子の印象派的(impressionistic)な実装であり、カメラと同じ環境にあるソースだけが対象ですが、何らかの変化を表す、という意味では効果があります。
印象派的なアプローチのおかげで、プロジェクト設定、リバーブコスト、そして検知作業が、単純化できました。同じE.R. バスをゲーム全体で使って距離のフィルターをかけ、オブジェクトがカメラの後ろに回った時は増やします。人々が周囲に集まり密集した空間を作ると、空間内で音がどのように伝播するのかや、どのように変化するのかという事は、実際の体験から良く知っていることでしょう。そのため、ダイナミックで応用力がありインタラクティブなサウンドスケープを作成する手段の1つとなりました。
インパルスレスポンスではなくWwise RoomVerbを選んだのはランタイムの操作が可能だからですが、ちょうどいい音を得るまでに、結構な調整作業が必要でした。
簡単に言うと、プレイヤーが作り出したものを取り入れるには、環境を正確にシミュレーションしようとするより、変化を認識することの方が、費用対効果が良くなります。
今後への想い
これから
Wwiseが、オーディオチームにリアルタイムで操作できるツール一式を提供してくれたことで、サウンドデザイナーは自由になりました。2017年現在、Wwiseで稼働するゲームなのにユーザーとのインタラクティブ性が標準以下の実装などは稀です。
現代の(オープンワールド)ゲームはさらに複雑になり、ミックス内で「場所取り」に必死なオブジェクトやサウンドの数は増える一方です。ある意味、Wwiseがゲームオーディオを、技術力や創造力の制限から解き放してくれました。あまりにも成功したため、デザイナーが実装できるオーディオの量は膨大となり、ミックスが音に溺れてしまいかねません。サウンドをオブジェクトに直接実装するのではなく、オーディオのプライオリティを決めたり、システムを整えたりすることが、今まで以上に重要です。
この切り替えでオーディオプログラマーは、クリエイティブな観点においてサウンドデザイナーの最強の味方です。両者が協力すれば、ダイナミックで聞こえの良いインタラクティブミックスを作成するために必要なシステムを生み出せます。Wwiseのおかげでデザイナーやプログラマーは「サウンドをトリガーさせる」 関係から離れ、プロダクションスケジュールの空いた時間にSoundboxのようなシステムを開発できるようになりました。Wwiseは確実な実装や品質の基盤を提供してくれるので、オーディオ部門がシステムデザインや今後のインテグレーションについて、他の部署と相談することができます。
Elite DangerousやPlanet Coasterで取り組みを始めたオーディオシステムは、今後のFrontier Developmentsのプロジェクトで更に拡張し洗練させます。私達のオーディオコードでは、ゲーム、アニメーション、そしてパーティクルの各種コードへの依存度が減り続け、ワールドオブジェクトに対する依存度も薄くなっています。今後も、ポートしたり、精査したり、拡張したりできます。
最後まで読んでくれてありがとうございます、質問やコメントを歓迎しますので、どうぞお寄せください!
その他のリソース
Community Stream:
群衆オーディオやWwiseプロジェクトについて詳しく知りたい方は、プロジェクトのオーディオリードであるマシュー・フロリアンツが、オーディオプログラマーのジョン・アシュビーと共に、コミュニティマネージャーのBoと2時間のコミュニティライブストリームに参加しましたので、ご覧ください。
Developer Diary:
ワトソン・ウー(Watson Wu)のジェットコースターレコーディング日記
PLANET COASTERを、STEAMで配信中
Planet Coasterチーム
オーディオ部門トップ(Head of Audio): ジム・クロフト(Jim Croft) – jcroft@frontier.co.uk
プロジェクトオーディオリード: マシュー・フロリアンツ(Matthew Florianz)– mflorianz@frontier.co.uk
リードオーディオプログラマー: ウィル・オーガー(Will Augar)– wauger@frontier.co.uk
リードオーディオデザイナー: マイケル・メイドメント(Michael Maidment)
シニアオーディオデザイナー: ジェームズ・スタント(James Stant)
テクニカルオーディオデザイナー: ステファン・ホリス(Stephen Hollis)
シニアオーディオプログラマー: イアン・ホーキンズ(Ian Hawkins)
オーディオプログラマー: ダン・ムレイ(Dan Murray)、ジョン・アシュビー( Jon Ashby)
その他のサウンドデザイナー: ダンカン・マクキノン(Duncan MacKinnon)、ジェイミー・ルイス(Jamie Lewis)、パオラ・ベラスケス(Paola Velasquez)、ロス・スタック(Ross Stack)
ミュージックスーパバイザ―: ジャネスタ・ブードロ(Janesta Boudreau)
オリジナルゲームサウンドトラック: ジム・ガスリー(Jim Guthrie)、J・J・イプセン(JJ Ipsen)
パークミュージック: エラスムス・タルボット(Erasmus Talbot)、ジェームス・スタント(James Stant)、ジェレマイア・ペナ(Jeremiah Pena)、ジム・クロフト(Jim Croft)、ジョリス・デ・マン( Joris de Man)、ジョッシュ・クロフト(Josh Croft)、マルティン・ランドストロム(Martin Landström)、マイケル・メイドメント(Michael Maidment)、ラスムス・ファーベル(Rasmus Faber)、ラス・ショー(Russ Shaw)
その他のミュージック: ダンカン・マクキノン(Duncan MacKinnon)、ジェイミー・ルイス(Jamie Lewis)、マシュー・フロリアンツ(Matthew Florianz)、ロス・スタック(Ross Stack)、ステファン・ホリス(Stephen Hollis)
その他のミュージシャン: スティーブ・カルダー(Steve Calder)、ジェフ・テイラー(Jeff Taylor)、ロビー・デュゲイ(Robbie Duguay)、ジェームス・アービン(James Ervin)、クラシュカ・バーンズ(Krashka Burns)、リンダ・サンブラッド(Linda Sundblad)、The Bombshell Belles
ローラーコースターサウンドレコーディスト: ワトソン・ウー(Watson Wu)
その他のボイスレコーディオング: グレン・ガタード(Glen Gathard)率いるPinewood Studiosのチーム
プレスお問い合わせ: Frontier PR&コミュニケーションマネージャ マイケル・ガッパー(Michael Gapper)– mgapper@frontier.co.uk
コメント