RUST LTDが『ホットドッグ、ホシシュー、ハンドグレネード2』のためのディープな銃器シミュレーションをどのように構築したか
Adam Axler - Unity
Senior Content Marketing Manager
このウェブページは、お客様の便宜のために機械翻訳されたものです。翻訳されたコンテンツの正確性や信頼性は保証いたしかねます。翻訳されたコンテンツの正確性について疑問をお持ちの場合は、ウェブページの公式な英語版をご覧ください。
スタンドアロンのVR物理演算スタンドアロンの銃器サンドボックス兼脱出ローグライクゲームである『Hot Dogs, Horseshoes & Hand Grenades 2 ( H3VR2 )』を制作するということは、10年分の技術的・設計上の負債を続編に引き継ぐのではなく、ゼロからやり直すことを意味した。
RUST LTDはオリジナルゲームを移植するのではなく、 Unityで新規プロジェクトを立ち上げ、約6ヶ月間をかけてアーキテクチャとツール開発に注力した後、本格的なコンテンツ制作に着手した。
その基盤は、銃器の部品や弾道学から、敵の認識、レンダリング、オーディオ、エディターツールに至るまで、あらゆるものを支えている。現実世界のデータはこれらのシステムの多くに反映され、チームが個別のゲームプレイ値として作成するのではなく、シミュレーションを通じて機械的な差異が浮かび上がるようになっている。
RUST LTDの共同創設者兼制作責任者であるルーク・ヌーナン氏と、共同創設者兼ゲームディレクターのアントン・ハンド氏に、ゲームをゼロから再構築すること、シミュレーションの複雑さを高めること、物理的な忠実度とVRパフォーマンスのバランスを取ること、そして数百種類もの機械的に異なる銃器を管理するために必要なツールを構築することについて話を聞きました。
H3VR2を使って何をビルドしようとしたのですか?
アントン・ハンド:H3VR2は、10年以上にわたり早期アクセス版として提供されていたPC VRゲーム「H3VR」の続編です。続編はスタンドアロンVRを念頭に置いて開発しました。過去10年間で私たちが実験し、探求し、遊んできたあらゆる要素を凝縮し、より伝統的な中心ゲームモードを中心に据えた作品だと考えてください。
その中心となるモードは「ファシリティ」で、これは脱出を目的としたローグライクゲームである。施設に加えて、従来のライトガンゲームに近いチャレンジレンジとサンドボックスコンテンツも用意しています。これは依然として物理演算に基づいた銃器サンドボックスであり、膨大な数の玩具が揃っているからです。
当社が注力している主要事業の一つは、銃器と仮想オブジェクトとのインタラクションに関して、他社が考えたこともない、あるいは賢明だとは考えもしなかったほど深く掘り下げていくことです。

続編では、規模や野心において何が変わったのか?
ルーク・ヌーナン:新しいタイトルで私たちが特にやりたかったことの一つは、これまで蓄積されてきた技術的および設計上の多くの負債を修正でした。
H3VR2では、ゼロから完全に書き直しました。私たちが始めた当初は、これは全く新しいUnityプロジェクトでした。私たちは既存のゲームの一部を参考にし、その経験を描画ましたが、これはポートではありませんでした。それはリビルドだった。
AH:技術的には、このプロジェクトはH3VRを構築した方法とほぼ正反対の方法で構築しました。
H3VR2では、本格的なコンテンツ制作に着手する前に、ほぼ6ヶ月間を純粋にアーキテクチャとツール開発に費やしました。私たちはすでに10年間銃を製造してきたので、銃のビルド方法は知っていました。コンテンツ追加を5年または10年かけて行うプロジェクトに対応できるスケールの高いシステムが必要だった。
LN:また、当初から、これはもっと大規模なチームになるだろうと分かっていました。H3VRは主にアントンが中心となって運営され、他のメンバーは制作の様々な部分をサポートしていた。H3VR2では、20人以上のプレイヤーが参加しています。
そのためには、最初からより優れた開発運用が必要だった。具体的には、適切なバージョン管理、ビルドの自動化、カスタムエディタツール、そして5つの異なるタイムゾーンに分散したチームに適した生産プロセスなどである。

カスタムインスペクターを使用して新しい銃の手のポーズを設定するエディター内のスクリーンショット
内部的にはどのようなレベルのシミュレーションが行われており、何を正確に実現することにこだわったのですか?
AH:私たちの制作プロセスは、徹底的な古典研究から始まります。まず、実際の書籍や技術ドキュメントなど、信頼できるリファレンスマテリアルを探すことから開始。
シミュレーションの観点から言えば、私たちの基本的な原則は、実際のデータを入力できるモデルを構築し、そのモデルが、一般的に受け入れられている日常的なリアリズムとゲームに適したものの中間の値に収束するようにすることです。
それは、膨大な数の入力データを含む非常に複雑なシミュレーションをビルド際に重要になってきます。最終的には、数百丁の銃、数百発の弾薬、そして数十種類の資材が揃うだろう。
H3VR2のおかげで、私たちはさらに大きな進歩を遂げることができました。実際のバネ定数をシステムに入力できるかどうかを問うと、できることがわかります。銃器の作動システムに、現実世界の寸法や機械的な関係性を組み込むことは可能だろうか?はい。
LN:その体系的なアプローチには正面費用がかかりますが、後々多くのメリットが得られます。例えば、新しいカートリッジの種類を追加したい場合、魔法のようなゲームプレイ数値を考案するのではなく、発射体の質量やカートリッジの特性といったプロパティに外観ことができます。

ホットドッグ、ホースシュー、手榴弾 2 | RUST LTD
NVIDIA PhysXはスタックのどの位置づけになるのでしょうか?また、ビルトインの物理演算エンジンに代わる、あるいはそれと並行してカスタムシステムが必要だと判断した理由は?
AH:私たちは、 NVIDIA PhysXで利用可能な複雑な機能のうち、かなり控えめな量を使用しています。
ゲームの物理演算エンジンは、プレイヤーが親オブジェクトを持ち運んだり、場合によっては部屋の向こう側に投げ飛ばしたりしている間、ローカルリファレンスフレーム内の小さなコンポーネントを適切に処理することはできません。そのため、銃器部品ごとに非常に特殊な内部シミュレーションを多数作成しており、それらは事実上、それぞれ独自の仮想空間に存在している。私たちは、それらの内部システムとより大きなゲームスペースとの間の力と衝動の伝達を管理します。
ゲーム空間レベルでは、物理演算をより直接的に利用しています。ホットドッグのキャラクターであるソシグ一家は、おそらく物理演算を最も効果的に活用した例でしょう。彼らは事実上、永遠に物理演算法則に従う人形だ。
LN:極めて小規模なスケールでは、銃内部のコンポーネントシミュレーションのために、独自のシステムを構築しました。終了、弾道計算やエージェントシステムの大部分については、 UnityとBurst用のECSを使用して別のレイヤーを構築しました。

ホットドッグ、ホースシュー、手榴弾 2 | RUST LTD
ECS for Unityを使用して弾道シミュレーションをどのように設計しましたか?
LN:銃撃戦が頻繁に起こる必要があること、銃は非常に速く発射できること、そして銃撃戦が同時に発生する可能性があることは分かっていました。それはシミュレーションに大きなパフォーマンス負荷をかけるため、最初のゲームではその点で妥協せざるを得ませんでした。
UnityとBurst用のECSを使用することで、銃器、爆発、その他のシステム向けに膨大な数の弾道エンティティをスポーンが可能になります。
それは、単に当初のターゲットをヒットだけでなく、精度を高めるのに役立ちました。より正確な衝突のために、より細かいサブステップサンプリングを行うことができ、空気抵抗をより正確にモデル化し、貫通や、異なる物質に出入りする発射体の挙動をより忠実に処理することが可能になります。

ホットドッグ、ホースシュー、手榴弾 2 | RUST LTD
これほど大規模なシミュレーションにおいて、最も大きなパフォーマンス上の課題は何だったのでしょうか?
LN:初期開発期間の多くは、それらの領域を体系的にテストすることに費やされました。安いとはどういう意味ですか?何が高価ですか?この新しいプラットフォームでできること、できないことは何ですか?そうした境界線が明確になったことで、フレーム時間を一定に保つことがはるかに容易になった。
AH:H3VRの開発を通して、何が速くて何がそうでないかについて、非常に洗練された理解を深めることができました。それが、Quest 3が登場するまで私たちがスタンドアロンVRに手を出さなかった理由の一つです。
CPU側では、ECSとBurstを中心にコアシミュレーションシステムを構築することを意味した。レンダリングに関しては、銃の精巧な3Dモデルがフレームバジェットのかなりの部分を占めることが分かっていたので、それ以外のすべて、つまり総ポリゴン数、テクスチャメモリ、帯域幅、環境構造体などは、非常に軽量に保つ必要がありました。
私たちは、人々が試合観戦に来る理由となっているものを、壊滅させるつもりはありませんでした。そこで私たちは、最初からそうした制約に基づいて、環境、インタラクション密度、コンテンツの種類、レベル構造体を設計しました。
最適化は、一連の柔軟性のない設計決定の後に続く並行的な道筋ではなかった。それはプロジェクト全体を通して、垂直的な開発プロセスの一部でした。
LN:この施設では、モジュールキットからビルド、継続的に組み立てる階層構造を採用しているため、照明モデルがどのように機能するかについても非常に早い段階で検証することができました。私たちは、ライトプローブ、リフレクションプローブ、その他の照明機器をどのように活用できるかを検討し、その決定事項を逆算してアート向き自体に反映させました。

エディタ内ツールを使用して、プロシージャルなレベル生成システムを検査および検証する
Unity 6.3へのアップグレードは、プロジェクトにどのようなメリットをもたらしましたか?
AH:H3VR2でUnity 6.3に移行することは、 H3VRと比較すると基本的に10年分の飛躍と言える。
ネストされたプレハブなど、明らかな利便性の向上もありますが、私たちにとって最も影響力のある改善点は、 SRP Batcherのパフォーマンス、シェーダーコンパイルの改善、およびタイル上のポストプロセス処理です。
シェーダーコンパイルは、巨大なスーパーシェーダーをディスク上でより小さくするのに役立っています。タイル上での後処理は、私たちのビジュアルアプローチにおいて特に重要でした。トーンマッピングなしでゲームを出荷したくはないのですが、当初はスタンドアロンVRハードウェアではポストエフェクトのブリット処理を別個に行うとパフォーマンスが不十分だったため、 HDRトーンマッピング処理をシェーダーに直接組み込んでいました。タイル上での後処理により、そのコードを削除することができました。
LN:現在のUnityバージョンの全体的な安定性と信頼性も、非常に重要な要素となっている。私たちはエディターを通して多くのカスタムツールを導入していますが、そのプロセスは非常に滑らかなに進んでいます。

敵のソシグエージェントの外観と動作を設定しているエディター内のスクリーンショット
ゲーム内のすべての武器には、それぞれ独自の機械的動作があります。データに基づいた情報作成と維持をどのように行うのか、また、これほど大規模な選手名簿をどのように管理するのか?
AH:維持管理を続けることは、定数戦いだ。あらゆる用途でGoogleドキュメントを使用している音量は膨大だが、最終的にはそれらのアセット自体が、銃器の設定方法に関する唯一の信頼できる情報ソースとなる。
結局は、非常に強力なInspectorツールを持っているかどうかに尽きる。これらのツールは、単に情報を入力するためだけのものではありません。当社では、銃器に特化して開発した、計算処理に特化した編集ツール、検証ツール、分析ツールを提供しています。
このシミュレーションは非常に奥深く、作業の多くは実際の銃器製造に近いと言えるでしょう。ばね定数やコンポーネントの質量といった値を入力します。カートリッジには、圧力曲線データと、カートリッジのさまざまな構成要素を説明する情報が含まれています。
これらの値が間違っていると、シミュレーション内の銃器は正しく作動しない。
Odin InspectorとAsset Storeは、ゲームの開発と保守における複雑な作業を管理する上で、どのようにチームをヘルプしましたか?
AH:私たちのゲームのようなゲームにとって、 Unityの最も重要な価値提案を挙げるとすれば、それはエディターの拡張性でしょう。
私たちはOdin Inspectorを多用しており、これなしではこのプロジェクトは同じようには実現できなかったと思います。
ゲームのコードを書いた人は皆、独自のインスペクターを作成している。Odinは、ツールを構築するための非常に強力な略記法を提供するため、必要な作業量を劇的に削減します。
それは、銃器のように存在論的にも分類学的にも複雑なものを扱う場合には特に重要となる。個々の銃に関しては、基本システムが理論的に設定できるすべてのものの95%または98%は、その特定のオブジェクトとは無関係である。Odinは、そうした無関係な選択肢を非表示にすることを可能にしてくれる。
アセットストアで販売されているTriangular PixelsのTechnie Collider Creator 2も、ゲームチェンジャーと言えるでしょう。これにより、制作期間中にチームは数百時間、場合によっては数千時間もの時間を節約できた。
物理演算を多用するVRゲームの場合、物理演算用の外殻データを作成するには、手作業と自動化をうまく組み合わせる必要があり、少々厄介な作業となる。完全自動化されたソリューションは通常、適切ではありません。物理演算プリミティブをできる限り活用し、凸状メッシュはどうしても必要な場合にのみ使用するようにしてください。

ホットドッグ、ホースシュー、手榴弾 2 | RUST LTD
技術的に複雑なシミュレーションゲームをビルドうとしている開発者への、あなたの一番のアドバイスは何ですか?
AH:必要なものをかなり早い段階で確認しましょう。シミュレーションシステムを構築する過程そのものを楽しむために構築することと、ゲームに必要なシミュレーションシステムを構築することには、非常に大きな違いがある。
H3VRを外観と、私が書いたシミュレーション作業の中には、プレイヤーには理解できないものがあった。終了ユーザーは、その存在をほとんど感じなかった。それは私の生活を楽にするどころか、開発者やデザイナーとしての私の生活をより困難にし、よりやりがいのあるゲームプレイに結果もなかった。
それは、複雑なシミュレーションゲーム全般に共通するリスクだ。結果として、あなた自身の制作経験以外には誰にも利益をもたらさないような作業に終了し、プロジェクトの全体的な目標からますます遠ざかってしまう可能性がある。
LN:私は人々の存在も指摘したい。チームに適切な専門家を見つけることができたおかげで、私たちは大きな恩恵を受けています。銃器に関する深い知識を持つ音響専門家、VRの分野とニーズを理解している武器アーティスト、そして私たちが構築しているシステムの種類に興味を持っているエンジニアなどです。
ホットドッグ、ホースシュー、手榴弾 2 Quest 3版は現在予約注文可能です。Steam版は、2027年の発売に先駆けて、現在ウィッシュリストに追加できます。UnityブログとUnityリソースハブで、さらに多くの開発者向け記事をご覧ください。