ブラックミス賞受賞!ゲーム内で最もリアルな物理エンジンはどのように実装されているのでしょうか?信じられないですね…

ブラックミス賞受賞!ゲーム内で最もリアルな物理エンジンはどのように実装されているのでしょうか?信じられないですね…

今年、弊社の国産ゲーム「Black Myth: Wukong」が複数の国際ゲーム賞を受賞しました。最近、ゲームがアップデートされ、多くの人が再び Black Myth をダウンロードして 81 の難易度を体験することに興奮しています。

しかし、ゲームをプレイしていると、どうしても興味が湧いてくる人もいるでしょう。水の波紋や雪の動きの跡など、ゲーム内の物理的なプロセスは非常にリアルです。これらはどのようにして実現されているのですか?なぜこのような興味深い現象が起こるのでしょうか?これらの現象は物理学そのものにどのような洞察をもたらすのでしょうか?ゲーム内の物理的な世界を見てみましょう。

衝突検出、仮想「ハードオブジェクト」

古典的な物理世界では、最も一般的な出来事は衝突です。したがって、ゲームを十分にリアルにしたい場合は、衝突を最初に考慮する必要があるプロセスにする必要があります。

まず、古典世界の衝突がどのように起こるかを見てみましょう。

F は物体にかかる正味の力、m は物体の質量、a は加速度です。各瞬間に物体に作用する合力とトルクを計算することで、現実世界の物体の物理的状態を得ることができます。同様に、ゲームの世界に戻ると、物理エンジンはこのメソッドを使用して速度と位置を更新できます。

Unity 3D での衝突シミュレーション

コンピュータでは、これは通常、オイラー法、ルンゲ・クッタ法、またはより安定した高度な半暗黙的積分器などの数値積分法を使用して実行されます。ゲームでは通常、計算効率と安定性が優先され、フレームの更新ごとにほぼ正確なオブジェクトの位置と状態が迅速に取得できるようになります。

しかし、誰もが知っているように、現実世界は古典的には連続的ですが、ゲーム世界のシミュレーションでは、各オブジェクトの状態に応じてフレームごとに各オブジェクトの位置を更新する必要があります。物理シミュレーションに使用されるフレーム レートが高ければ高いほど、計算結果は確実に正確になります。

たとえば、2 つのボールの衝突を計算します。衝突が発生すると、2 つのボールの速度、方向、材質、衝突の深さに基づいて衝突の結果を計算し、同時に 2 つのボールの状態を更新します。しかし、現実の世界では、2 つの剛体は「重なり合う」ことはありません。実際の衝突は、2 つのボールが互いに接触したとき、または接触から変形、そして衝突の終了までの全プロセスで発生します。

ゲーム内での重複衝突の例

ただし、物理エンジンはフレームごとに位置を更新し、衝突の結果を計算するため、衝突の時間が特定のフレームに正確になることを保証することはできません。また、2 つのボールが接触してから分離するまでのプロセスにおけるすべての微妙な変化を真に完全にシミュレートすることもできません。 2 つのフレーム間の衝突情報は実際には失われ、時には非常に直感に反すると思われる、より複雑な衝突が多数発生します。

現在、多くの成熟したゲーム エンジンでは、ゲームの計算されたフレーム レートを実際のフレーム レートから分離することで、この問題を回避しています。しかし、衝突に影響を与える要素はフレーム レートだけではありません。

ゲームプロセスにおける実際のモデリングは、美観のために非常に複雑です。一般的に言えば、モデルには何千もの三角形があります。ただし、物理エンジンがこれらのプリミティブ モデルの衝突を計算するために必要な計算量は指数関数的に増加します。また、モデリング角度が奇妙であるため、衝突計算の結果は現実とは大きく異なります。したがって、オブジェクトの物理的な形状を単純化する必要があります。これは、ゲーム内で衝突ボリュームと呼ばれることが多いものです。

さらに、衝突時には、材質、摩擦、空気抵抗、押し出しなど、さまざまな問題を考慮する必要があります。

制約: 制限された自由

剛体の衝突だけでなく、多くのパーツの接続と回転はゲームでは当然不可欠であり、ここで制約という物理的な概念が役に立ちます。たとえば、ゲーム内の小さなキャラクターが物体をつかもうとする場合、それは手と物体の間の接触面に制約を作成することと同じです。

物理エンジンでは、制約を使用して、オブジェクトの動きの範囲と相対的な位置を制限します。キャラクター、ロボットアーム、車輪などのスケルトンアニメーションなど、ゲームやシミュレーションで幅広い用途があります。シミュレーションプロセス中に制約が適切に行われないと、非常に奇妙なゲーム画像が得られる可能性があります。

古典力学では、制約とは、システム内のオブジェクト間またはオブジェクト間の関係を記述する条件です。制約力学は、多体系における運動の制約を考慮する方法を研究する科学の分野です。自由度に応じて、物体間の相対的な動きにはさまざまな種類の制限が課せられます。

物理エンジンでは、制約は通常、数式で記述され、古典力学のラグランジュ力学とニュートン力学に基づいて解決されます。

オブジェクト間の相対的な動きは、オブジェクトに課せられた制約によって決まります。これらの制約により、オブジェクトは合意された動作軌道に従うようになり、物理法則に従わない動きをすることが防止されます。具体的には、拘束力は物体の加速度を変更することで物体の自由度を制限し、物体の動きが拘束条件に違反しないようにします。

キャラクターのジョイントは、ヒンジ ジョイントと呼ばれる拘束の一種で、2 つのボディが 1 つの軸を中心に回転しながら、他の自由度を制限できるようにします。その物理的原理は、慣性モーメントと角運動量保存則にまで遡ることができます。

実際のゲームでは、制約には計算上の制限の問題もあり、計算量を簡素化する必要があるため、ゲームには通常、次のような一般的な制約が事前に設定されています。

PhysX ジョイントの例

布と流体のシミュレーション:

物体の変形と流れ

ゲームでは、ソフトボディ、布、流体のシミュレーションを使用して、オブジェクトの変形や流れの動作を表現します。これらの動作は古典物理学の法則に従うだけでなく、その実装を実現するために数値計算方法にも依存します。これらのシミュレーションを通じて、ゲームは、キャラクターが水中を走ることで生じる波紋や、武器を振るったときに近くの草や木が揺れる様子など、より繊細でリアルな物理的効果を表示できるようになります。

柔軟な物体とは、外力の作用によって変形する物体です。剛体と比較すると、完全に変形不可能ではなくなります。ソフトボディシミュレーションの主な目的は、力が加わったときのオブジェクトの変形動作を正確に記述することです。

柔軟な物体の変形は、物理学における応力と歪みと密接に関係しています。応力は、外力の作用下にある物体の内部力の分布を表し、通常は応力テンソルで表されます。ひずみは、外力による物体の形状または体積の変化を表します。

応力とひずみの関係: 弾性体は応力を受けると線形または非線形のひずみを受けます。最も一般的に使用されるモデルはフックの法則であり、これは小さな変形下での材料の線形弾性挙動を記述します。

質量モデルの概略図

パーティクル モデルは、単純なソフト ボディを計算するために最も一般的に使用される方法の 1 つです。このモデルでは、物体は複数の質点に分割され、各質点がスプリングによって相互に接続され、材料の弾性挙動をシミュレートします。各粒子の運動方程式はニュートンの運動の第2法則によって与えられます。

弾丸エンジンが布のエフェクトを表示

より複雑な物体の変形には、有限要素法を使用できます。オブジェクトを多数の小さな単位 (三角形や四面体など) に分割し、各単位の応力と歪みを解析することで、オブジェクトの全体的な動作をシミュレートします。この方法は、より微細なオブジェクトの変形をシミュレートするためによく使用され、非線形性や大きな変形を処理できます。

流体シミュレーションは、特にリアリズムの面で、物理エンジンにおける最も困難なタスクの 1 つです。流体の挙動は連続体力学、特に流体力学と熱力学に大きく影響されます。

流体の運動は、粘性流体の流れを記述する基本方程式であるナビエ・ストークス方程式に従います。

方程式の左側は慣性項であり、流体の運動量の変化を表します。右辺の最初の項は圧力項であり、圧力勾配によって発生する力を表し、流体は高圧領域から低圧領域へ流れます。 2 番目の項は粘性項であり、流体内の摩擦 (粘性) 効果を表し、流体の速度場の勾配に関連しています。 3 番目の項は体積粘度項であり、流体の体積粘度を考慮します。最後の項は外力です。
非圧縮性流体の場合:

すると、体積粘性項は無視できます。ゲームでは、粘性項を無視して 2 次元の場合のみを考慮することもできます。これにより、非常に単純化された方程式のセットが得られ、計算量が大幅に削減されます。

ただし、結果として得られる流体シミュレーションは比較的単純です。たとえば、ゲーム内では水面の波紋を長距離にわたって見ることは困難であり、これは流体の変動の長波長部分を無視することと同じです。

ブラック・ミスの戦闘中の水面の波紋

ゲームにおけるシミュレーションと科学研究におけるシミュレーションの違い

ゲーム開発でも科学研究でも、オブジェクトの動きと相互作用をシミュレートする必要があります。しかし、ゲームにおける剛体シミュレーションと科学研究における剛体シミュレーションは、目標、精度、計算方法、制約、解決戦略の点で明らかに異なります。

ゲーム内のシミュレーションは、主にリアルタイムのインタラクションと視覚的なリアリズムに重点を置いています。ゲーム内のオブジェクトはニュートン力学の原理に従って動きますが、ユーザーエクスペリエンスの向上と計算速度の向上を実現するために、シミュレーションの精度と詳細は簡略化されることが多いです。シミュレーション結果は、正確な物理予測よりも、プレイヤーの没入感を高めるために使用されます。

科学研究における剛体シミュレーションの目的は通常、正確なモデリングとパフォーマンス評価であり、物体の機械的動作の分析、設計の最適化、または実験検証に使用されます。シミュレーションの目的は、実際のアプリケーション、理論的研究、または物理現象の検証に信頼できる結果を提供することです。
ゲームと科学研究におけるシミュレーションは同じ物理原理に基づいていますが、ゲームにおけるシミュレーションは通常、各フレームでオブジェクトの動きを効率的に計算できるように大幅に簡略化されています。

ゲーム内の物理学についてより深く理解しているのだろうか。こちらはBlack Mythのゲーム画面です。そこには、どれほど多くの物理シミュレーション プロセスが含まれているか想像できます。

参考文献

[1] エバリー、D.(2003)。 「ゲーム物理学」モーガン・カウフマン[2]ウィトキン、A.&バラフ、D.(2001)。 「物理ベースモデリング:原則と実践」 SIGGRAPHコースノート[3] https://www.zhihu.com/question/277300055[4] https://developer.aliyun.com/article/432351

[5] https://zhuanlan.zhihu.com/p/679061686

企画・制作

出典: 中国科学院物理研究所 (ID: cas-iop)

編集者:鍾延平

校正:徐来林

<<:  CMI: LinkedInのマーケティングコンテンツに対する反応率は63%

>>:  緑の顔をした獣はどんな「獣」で、赤い髪の幽霊はどんな「幽霊」なのでしょうか?

推薦する

10年間の山登りと川越えを経て、ついにこの果物が中国原産であることが証明された。

雲南省、湖北省、湖南省、広西チワン族自治区、広東省、江西省…西双版納の熱帯雨林から芒山、そして茅姑山...

今年はなぜか蚊が少ないように感じるのですが?暑いからでしょうか?真実は…

今年は蚊が少なく、例年の夏ほど刺されないと感じている人が多いようです。蚊は「熱で死ぬ」と言う人もいま...

肌の栄養を高める4つの野菜

1. ニンジンニンジンに含まれるカロチンは肌のしわを減らすことができます。日光への曝露、空気中の有...

キャンプが人気になってきています。詩と遠い場所。テントだけで十分ですか?

レビュー専門家:知湖のアウトドアキャンプに関する有名なラウンドテーブルブロガー、顧明輝度重なる流行の...

頑固なNetflixは2000億ドル規模の中国動画市場に参入できるのか?

最近、アメリカの動画サイトNetflixが中国の動画市場に正式に参入するというニュースが、中国の動画...

エモになるのはやめなさい!甲状腺疾患に注意

最近、#うつ病の女性は甲状腺疾患に罹患する可能性が高い#エントリが検索されました専門家はアドバイスす...

フナと大根のスープの作り方とその栄養価

あなたは旅行が好きな人ですか?あなたは食べ物が好きですか?あなたは友達から「グルメ」と呼ばれる人です...

Apple MacBook Proに新たな問題が発生: キーボードが機能しない

Macシリーズの市場シェアは低下傾向にあります。不安を抱えたAppleは昨年、新型MacBook P...

フォルクスワーゲン、NVIDIAとの協力を拡大し自動車以外の分野もカバー

海外メディアの報道によると、ドイツのフォルクスワーゲングループは最近、NVIDIAとの提携を正式に拡...

北京の「在来ヤギ」として知られていますが、実はあまり知られていない「ロッククライミングの専門家」です。

最近、北京市門頭溝で、捕らえられていた国家二級保護野生動物である中国ゴーラル9匹が無事救出された。こ...

水に浸したヨモギを飲むことの効能

中国人は皆、端午の節句の期間中、悪霊を追い払い、病気を治すためにヨモギの葉を吊るす習慣があることを知...

飛行機のエンジンには翼にぶら下がっているものとお尻の横に挿入されているものがあるのはなぜですか?

飛行機によく乗る学生なら、飛行機のエンジンには翼にぶら下がっているものと、尾翼に取り付けられているも...

サウザンアイランドドレッシングとサラダドレッシングの違い

サウザンドアイランドドレッシングとサラダドレッシングの違い: 私たちの生活環境が改善されるにつれて、...

この不毛の地が「再生」した後、「砂漠のエルフ」によって「承認」された。

最近、国家二級重点保護野生動物であるガゼルが新疆、甘粛、寧夏などの地域で頻繁に目撃されている。特に寧...

銀杏入り蒸し卵の作り方

イチョウは私たちにとって一般的な食べ物です。イチョウはイチョウの種子です。イチョウを定期的に食べると...