Frontier DevelopmentsはDavid Brabenが1994年に設立した、独立系の大手ビデオゲームデベロッパ兼パブリッシャです。Frontier Developmentsは長年に渡り経営ゲームジャンルトップの作品を開発し、2003年の『ローラーコースタータイクーン3』をはじめ、自社パブリッシュのタイトル『プラネットコースター』や『ジュラシック・ワールド・エボリューション』などを発表してきました。これらのゲームはプレイヤーのクリエイティビティを重視し、サウンドボックス的な要素が共通しています。
『ジュラシック・ワールド・エボリューション』シリーズでは自由に恐竜のテーマパークを設計・建設することができ、俳優のジェフ・ゴールドブラムさんやブライス・ダラス・ハワードさんの音声つきで冒険が繰り広げられます。続編の目標はストーリーの規模も質も向上させ、シミュレーションの没入感をさらに高め、最高の恐竜を届けることでした。恐竜たちが地球を歩き回る映画フランチャイズの流れに合わせ、ゲームも恐竜のパーク管理から自然資源の管理へフォーカスを変えました。私たちの主な目標は:
- 『ジュラシック・ワールド・エボリューション』からのさらなる改善
- ビデオゲームに出てくる恐竜として最高の音
- プレイヤーアクションに動的に反応するサウンドスケープの作成
- 『ジュラシック・ワールド』製品に見合う信ぴょう性のあるサウンドの採用
この記事では『ジュラシック・ワールド・エボリューション2』でWwiseを活用してこれらの目標を達成し、新しい機能を実現した方法をご紹介します。このゲームはWwise 2019.2.8でリリースしました。
フットプラント(足着地)システム
Wwise構造を計画する際、共通するサウンドと固有のサウンドを階層内のどこに配置するかでズレが生じることがよくあります。『ジュラシック・ワールド・エボリューション』のフットプラント(足の着地)サウンドはまさしくその好例です。Ornithopod(鳥脚類)、Theropod(獣脚類)、Sauropod(竜脚類)などの恐竜の分類に合わせて固有のインパクト音を設定したほか、共通するサーフェススウィートナーも設定しました。Actor-Mixer階層の複数の構造で、ランダムコンテナを重複させました。サーフェススウィートナーを小さくしたいと思った時に、17か所も見る必要がありました。ミキシングの仕方をとても柔軟に決めることができましたが、結局ミキシングを効率的に行うことができなくなってしまいました。
そこで『ジュラシック・ワールド・エボリューション2』では1つのワークユニットにすべてをまとめて管理しやすくし、ヒューマンエラーを抑えながらも恐竜の種類や大きさ、そしてゲームデータなどに基づいて共通スウィートナーをミキシングする可能性も残したいと考えました。
私たちが行きついたのは、インパクトとサーフェスのスイッチを備えたブレンドコンテナです。Footplant(フットプラント)イベントがトリガーされると、これを使用してSet Switchで適切な分類(ここではOrnithopodHadrosaur)を設定し、脚のFront(前)かRear(後)なのかを判断するためのゲームパラメータを設定しました。(このパラメータが上図のハイライト表示されているスイッチを駆動します。)ミキシングが必要な時は、このイベントをSet PitchやSet Volumeのために使用することもできます。
これでフットプラントのブレンドが再生されます。サーフェスタイプはオーディオコード側のスイッチによって決まります。ゲームに登場する恐竜は種類が豊富で、鶏サイズのものから史上最大の陸生動物まで出現します。サーフェススウィートナーがうまく機能するために、多くの処理が必要です。これを実現するためにフォーリースタジオでさまざまな表面素材を用いて「長回し」し、その収録から長いスウィートナーを編集しました。
WwiseのEnvelope機能を使用し、状況に応じて短めのエンベロープをスウィートナーに適用することができます。例えば恐竜が「アイドリング」中でたたずんでいる時や足踏みをしている時はゆっくりとしたアタックとリリースを適用する一方、走っている時は速いアタックと短いリリースで強調して全体的な長さを短縮します。
アイドリング、歩き、走りのデータは複合RTPCとして送られます。小さい生物や大きい生物は、共通インパクトサウンドに合うようにスウィートナーのピッチをSet Pitchで増減させ、適切にミキシングすることですべてがまとまります。
恐竜の大きさや重量、速さや歩調、歩いている地面の質感などを表すフットプラントは、恐竜音響にとって極めて重要です。フットプラントと息づかいが恐竜サウンドスケープの大半を担います。フットプラントの「インパクト」と「サーフェススウィートナー」を階層の同じ場所に入れることで気軽に微調整やミキシングができるようになり、ベストな恐竜音を実現するために重要でした。
分かりやすく読み取りやすいバス構造
私たちのゲームはバス構造がかなり複雑になることがあります。『ジュラシック・ワールド・エボリューション2』ではバス構造を簡素化して分かりやすくするために、いくつかの工夫をしました。
上図はdistance filtered(距離フィルター適用)バスで、3Dポジションを有する多くのサウンドがここに集結します。Master-Mixer階層は主にステートやRTPCを使用したダイナミックミキシングや、リバーブやエフェクトのセンドを適用したい時に使います。バス名をできるだけ短くし、重要な情報を左に寄せることで、Wwiseのミキサービュー(F8)にバス名がはっきりと見え、ビューの使い勝手が向上します。
カッコ内の文字はバスの送信先がエフェクトバスであることや、重要なステートミキシングが行われることなどを示します。cre_Flyingに送られるサウンドはduw(ducked underwater、水面下にダッキング)となり、df_Moving はcam(Camera Focus、カメラフォーカス)のRTPCに影響され、例えばトリケラトプスがカメラの後方に回った時に鳴き声が少し静かになるかもしれないといったデバッグやミキシング中に役に立つ情報があります。
最後に色分けについてですが、Voice Monitorでデバッグを行う上で大変理にかなっています。この機能の利便性は言い尽くせません。アセットのライフサイクル全体をスクラブしながらRTPCやステートに影響される様子を確認できることは、何事にも置き換えられない価値がありました。
図の色分けから、構造のどの部分にあたるのかがすぐに分かります。黄色は2Dアンビエンスで、主に連続ループです。緑は3Dポジション設定のアンビエンスです。2色の紫はそれぞれ恐竜です。
共通サウンドの紫色と異なる色合いで固有サウンドが表示されているため、恐竜の声を簡単に見分けることができます。固有音はごく限られたアニメーションでしか使われないことが多く、ミックスの問題を見落としがちで、ボリュームの問題がよくありました。洗練されたミックスの共通アセットに混合された、問題を起こしている特定アセットを洗い出すことができたことはとても価値がありました。
空飛ぶ爬虫類
『ジュラシック・ワールド・エボリューション2』の注目すべき新機能の1つが、空飛ぶ爬虫類たちです。テクニカルデザインの前提として、いくつかの制約事項や条件を設けました。
- 爬虫類は内部で放すか、ヘリコプターやドローンで持ち込むこと。
- 自由に動くカメラがエイビアリー(鳥小屋)外にある時、内部の爬虫類は無音とすること。
- カメラが内部にある時、外部の世界は無音とすること。
- 爬虫類が騒ぎ出して逃げ出した時、その爬虫類は外部で音を出すこと。
- 爬虫類が外部に出ることができるのは、逃げ出した場合に限ること。
- エイビアリーは外部の世界から遮断されたクローズドシステムであり、固いガラス風の素材で建設さています。厳密には正しくありませんが、テクニカルデザイン上、エイビアリーをクローズドシステムとして考えて実装しやすくしました。
データは2種類あります。1つ目のデータは以下のゲームステートで、カメラまたはリスナーの場所を報告します:
- cameraOutside(外にカメラ)
- cameraAviaryInside(エイビアリー内にカメラ)
同時に各恐竜エミッターに以下のスイッチを設定しました:
- デフォルトは、insideAviary(エイビアリー内)
- 脱走した場合は、outsideAviary(エイビアリー外)
飛ぶ爬虫類7種のために、サウンドの入った数100個もの異なるランダムコンテナがあり、どれもこの構造を採用しています。システムは完璧に機能するのですが、さきほどの前提条件にかなり頼っています。
システム設定でステートやスイッチを見落としてしまうと無音状態が発生してしまうため、慎重にすすめました。このシステムの1番の欠点は柔軟性がないことであり、カメラが外部にあり、生物が内部にいる場合、生物は無音になります。このゲームには何種類ものエイビアリーがあり、魚類野生動物省が使用する金網の仮設タイプもあります。ドームの外部から中の爬虫類の音が聞こえてくるはずです。しかし与えられたデータや迫る納期の関係で、これはやむを得ず妥協しました。
globalGameState
このプロジェクトではglobalGameStateが最も便利な問題解決システムの1つでした。『ジュラシック・ワールド・エボリューション』や過去のゲームには、以下のようにゲームの現在のマクロステートを報告するグローバルステートがあります:
今回はかなり大型になりました。私たちのすばらしきオーディオエンジンは便利な機能がいくつもあり、特によかったのは_startと_stop のイベントペアを、ゲームのglobalGameStateの切り替わりに合わせて送る機能です。「ゲームマップ」ビューに入るとGame_ViewBuildingステートに設定され、WwiseにGame_ViewBuilding_start/stopが送られます。これはオーディオプログラマーにイベント設定を依頼するような状況であるため、この機能が作り込まれていることは大変ありがたかったです。
このステートの利便性は非常にマクロである点です。一気に広範囲のミキシングを大きく変更することが可能です。このためこれを利用するステートミキシングはMaster-Mixer階層において親の親のバスに限定していますが、ミキシングにとても役立っています。
ジャイロスフィアに乗車中のビュー(Game_Vehicle_Gyro_1P)へ切り替わった時にglobalGameState を利用して外部アンビエンスに対するエフェクトのバイパスを解除して弱め、イベントペアを使い一部の2D内部アンビエンスをスタート・ストップさせたり、恐竜のオーディオをミュートした上でしてジャイロスフィア内で聞こえる別のバスへのプリフェーダセンドを実行し、恐竜オーディオを細く甲高くさせ、ガラスの内部リバーブへ送信したりできます。
これもWwiseの卓越した機能であり、多少のオーディオコードを書き加えることで、まったく別の独立したミックスをある空間のために作成することができます。
Meter(メーター)機能
メーターはすばらしいです。
メーターバスが柔軟性を提供してくれるため、私たちは『ジュラシック・ワールド・エボリューション2』で使用しました。このバスに信号を送信して測定することも、その信号をRTPCやステートで減衰させることもできます。メーター機能の楽しい使い方として、エンベロープをメーターに追跡させ、追跡対象のエンベロープでほかのコンテナのRTPCを駆動することができます。
Automation設定のエミッターを使用するgust(強い風)のサウンドがあり、周りに強い風を時折パンニングさせるために、ランダムなディレイを設定したランダムコンテナがあります。User-Defined Auxiliary Sendsを使用してこのバスを、メーターバスmtr_2d_windGustsに送ります。
このバスのメーターエフェクトは精度の高いエンベロープ追跡機能として設定してあり、meter_2d_windGusts RTPCに出力します。このRTPCを使用してほかの風アンビエンスをダイナミックに駆動し、ランダムな突風がトリガーされると、RTPCが高くなり、例えば木をなびかせる風の音に対するローパスフィルタRTPCを少し排除するなどして、まるでランダムな突風サウンドがほかのサウンドに影響を与えているかのようにすることができます。
もし雨が降っている時にこのエフェクトを避けるべきだと判断した場合は、雨の強度のRain_Intensity RTPCでセンドのボリュームをミュートにすることができます。
Wwiseのエンベロープ、メーター、マクロステートなどの新しい機能を採用したことで、私たちの仕事もミックスも大変シンプルになりました。ここで取り上げたもの以外にも、使ってみて大好きになった機能が沢山あります。ランダムパラメータジェネレータやLFOなどは特に賞賛に値します。
これも『ジュラシック・ワールド・エボリューション』チームのみんなのおかげです。
参考文献:https://www.asoundeffect.com/jurassic-world-evolution-sound/
オーディオチーム
Alex Vincent(シニア・オーディオ・プロデューサー)
Ben Hammond(オーディオ・テスト・エンジニア)
Dan Matarov(新卒採用オーディオ・プログラマー)
Duncan MacKinnon(オーディオ・リード)
Dylan Vadamootoo(シニア・サウンド・デザイナー、DLCオーディオ・リード)
Gavin Chuong(オーディオ設備)
Hakan Yurdakul(新卒採用オーディオ・プログラマー)
Henry Flewitt(サウンド・デザイナー)
Ian Hawkins(シニア・オーディオ・プログラマー)
Irma de Wind(ミュージック&ボイスオーバー・スーパバイザ―)
Jim Croft(ヘッド・オブ・オーディオ)
Janesta Boudreau(ミュージック&ボイスオーバー・スーパバイザ―)
James Stant(ダイアログ・マネージャ、シニア・サウンド・デザイナー)
Jamie Stuart(シニア・オーディオ・プログラマー)
Luigi Platania(新卒採用オーディオ・プログラマー)
Matthew Mainprize(サウンド・デザイナー)
Michael Maidment(シニア・サウンド・デザイナー)
Valentin Goellner(シニア・サウンド・デザイナー)
Will Augar(プリンシパル・オーディオ・プログラマー)
Frontier Developmentsについて
Frontier Developmentsは人気ゲーム『Elite』の共同作者であるDavid Brabenが1994年に設立した、独立系の大手デベロッパ兼パブリッシャです。英ケンブリッジを拠点に自社のゲーム開発技術COBRAを用いて、主にPCやゲームコンソール向けに、ジャンルを代表するような革新的なゲームを制作しています。社内開発のゲームをパブリッシュするほか、厳選されたパートナースタジオが開発するゲームをゲームレーベルFrontier Foundryよりパブリッシュしています。
『ジュラシック・ワールド・エボリューション2』について
Frontier Developmentsより2018年にリリースされた、画期的で没入感あふれる大人気の経営シミュレーションゲーム『ジュラシック・ワールド・エボリューション』の続編として高い評価を得ている作品。感動的な新しいストーリーキャンペーンが繰り広げられ、想像を絶する新機能や魅惑的で本物そっくりの新恐竜が登場します。建設範囲が広がりカスタマイズオプションも増え、より大きくて楽しく、信ぴょう性の高い『ジュラシック・ワールド』ゲームです。
コメント