「現実の車の動きをゲームで再現する方法」を実際のゲーム開発スタッフに直撃したムービーが公開中
グランツーリスモシリーズやForza Motorsportなど、車を題材としたゲームは新しくなるにつれて、車の動きがよりリアルに再現されているものです。YouTuberのブライアン・マクメイナス氏は、ユービーアイソフトで販売しているレースゲーム「THE CREW2」の開発スタッフと話す機会があったことから、「せっかくなので、どうやってリアルな車の動きをゲームで再現しているのか?」を聞いてきたとのことで、その様子がYouTubeで公開されています。
The Physics of Racing Games - YouTube
「自動車は用途に応じて、さまざまなデザインが施されています」
「それは、ただ目的地に移動するため」
「または、最短の時間でコースを走りきるためだったり……」
「難しい地形を走破したりするためかも知れません」
「これらの車は、それぞれの分野のスペシャリストが設計して、製造しています」
「2018年6月、私はユービーアイソフトに招かれて、驚くべき4台の車に乗車しました。1台目はプロが運転するKTM・クロスボウ」
「2台目がオフロード走行用のバギーカー」
「3台目が『ランドローバー・ディフェンダー』」
「4台目がポルシェ・ケイマンS」
「そして、私がこれらの車に試乗した目的は、明らかに仕様の異なる4台の車が現実世界でどのようなパフォーマンスを発揮するかを理解すること。そして、ユービーアイソフトのゲーム『The CREW2』に車の動きをどのように実装したのかを開発スタッフから聞くことでした。」
「私はユービーアイソフトのThe CREW2のプロデューサーであるステファン・ジャンジョウスキー氏と話をしました」
「私はジャンジョウスキー氏との会話で、『現実世界とゲーム世界の物理の違い』と開発者が『完全に特徴の異なる車をどうやってゲーム内で再現するか』の2つを知ることができました」
「The CREW2のゲームエンジンでは物理演算モデルと3Dモデルを完全に分かれているそうです」
「ジャンジョウスキー氏によると、『私たちが使用しているゲームエンジンでは、車のパーツを3Dで作成すると、自動的に物理演算モデルを得ることができます』とのこと」
「ジャンジョウスキー氏の説明は少し抽象的なので、例を出して説明すると、開発者によって3Dモデルでタイヤが作成された場合、The CREW2の物理演算モデルは独自の摩擦と質量モデルを自動的に生成することを意味しています」
「しかし、主に見た目にしか影響しない部分については、物理演算モデルを除外することもあります。例えば、スポイラーについてはゲーム内で空力を無視するように設計されています。本来のレースなどでは空力を考慮する必要があり制限が多いものですが、ゲーム内では車を好みの外観に設定できるように自由度を高くしています」
「サスペンションに関しては物理演算の対象になります。サスペンションはいわゆるバネのシステムで、路面の状況を車内に伝えないようにして、乗車している人に快適さを与える機能。本来、ゲームプレイに影響しないシステムではありますが、ゲーム内ではデコボコした路面やコーナーを曲がるときの車両の姿勢を決定するために物理演算を使用しています」
「しかし、本当の世界では加速した状態でコーナーに進入するなどして、車の片側のサスペンションに重量が大きくかかってしまうと、車は簡単に横転してしまうものです」
「ゲーム内では楽しさを優先するため、同じようなことをしても、車両が横転するようなことはありません。しかし、思いっきりジャンプしたりすると、横転しそうになるくらいに車両が傾くようになっています」
「ちなみにレーシングカーは重心を低く維持するためにサスペンションが硬く設定されており、現実世界でも横転しにくい設計になっています。この設計はゲーム内でも反映されていますが、全ての物理法則が現実のものと同じになっているわけではありません」
「たとえば、走行中にアクセルから足を離して、ブレーキを踏むと……」
「フロントに減速Gがかかり、車体のリア側が浮き上がります。この状態となるとリアタイヤのグリップが失われるため、オーバーステアが起こる原因になります」
「しかし、現実世界のレーシングカーでは、このような状態になるように車は設計されていません」
「実際のレーシングカーの多くはエンジンを中央に配置するミッドシップレイアウトを採用しています」
「そして、サスペンションを硬くすることで、コーナーを走行するときも、フロントとリアにかかる力を均等に分散させて、コーナーリングしやすいような設計になっています」
「しかし、ゲームの世界において、多くのプレイヤーは本物のレーシングカーではなく、実際の自動車の動きを望む傾向にあります。このため、多くのゲームではオーバーステアやアンダーステアが大きく発生するようになっています」
「特にドライビングシミュレーターと名乗るゲームでは、オーバーステアやアンダーステアなどのトラクションの変化を忠実に再現します。当然、慣れないうちはコーナーに誤った速度で進入して、曲がりきれず壁に激突したり、コースアウトしたりするなど操作は難しくなるものです」
「The CREW2は『リアルさ』と『楽しさ』を両立した設計となっていて、多少乱暴な運転が可能です」
「その証拠に180km/hで走行して、大ジャンプを決めるという実際の車ならクラッシュ確実なこともできてしまいます。このようなテイストにしているのはThe CREW2が『ゲームを楽しむ』というコンセプトを持っているからです」
「次に車のエンジンを見てみましょう。ゲーム開発者はエンジンの動きを正確にシミュレートしているわけではありません。しかし、ポルシェ 911 GT3 RSの0-100km/h加速を見てみましょう」
「ゲーム内では3.2秒を記録し、実際の車と同じタイムを出すことができます。このことから、開発者は可能な限り実際の性能に近くなるように性能を設定しています。では、エンジンの動きを再現していないにもかかわらず、どうやって現実に近い動きを再現しているのでしょうか?」
「まず、車のトップスピードを計算するには、車両にかかる抗力から求めることができます。抗力(F)は以下の式で求められます」
「この式をV(速度)を求めるように方程式を入れ替えると、速度を計算できる式に変化します。開発者は車の最大出力や係数などを決定して、この式にあてはめるだけで最高速度(V)を調整することが可能になります」
「しかし、車の加速度の調整は別の要素を計算する必要があるため、少々厄介です。特に懸念されるのが、エンジンの回転数やギア比で変化するトルクの計算です」
「タイヤが空転しない場合、車輪が地面に加える力(F)はトルクをタイヤ半径で割った値となります」
「自動車に複数のギアがあることを考慮すると、トルクはこの式で求めることができます」
「Teのエンジントルクはエンジンの回転数に応じて変化します」
「そこで、開発者はエンジンの回転数に応じたトルクの値をパラメータとしてあらかじめ入力しておき、実車に似たパフォーマンスになるかを一つ一つ確認しています」
「このような調整を細かく行うことで、ゲームにリアリティを与えたり、誰もが楽しめるようにゲーム性を大事にしたりすることが可能になるというわけです」
・関連記事
「グランツーリスモSPORT」で実現したかったこと、そして今後の進む先について山内一典プレジデントにインタビュー - GIGAZINE
物理法則が適用されブロックがカオスな動きを見せるテトリス「ブツリブロックス(ブツリス)」レビュー - GIGAZINE
F1レーサーの視線の動きをアイトラッキングカメラで調べるとその超人ぶりがよく分かる - GIGAZINE
未来を変化させるモータースポーツ「フォーミュラE」の魅力とは? - GIGAZINE
コーナーを最速で駆け抜けられるライン取りとは? - GIGAZINE
・関連コンテンツ