知識ベース

一人称シューティングゲームエンジン

一人称シューティングゲームエンジンは、一人称シューティングゲームビデオゲームで使用する3D環境のシミュレーションに特化したビデオゲームエンジンです。一人称とは、プレイヤーがキャラクターの目から世界を見るビューのことです。シューターとは、主に火器を装備し、ゲーム世界の他のエンティティ(非プレイヤーキャラクターまたは他のプレイヤー)を殺すことを中心に展開するゲームを指します。

FPSグラフィックエンジンの開発は、技術の着実な増加といくつかのブレークスルーを特徴としています。異なる世代を定義しようとすると、「古いエンジン」の高度に修正されたバージョンを構成するものと、新しいエンジンとは何かを任意に選択できます。

ゲームエンジンが古い技術と新しい技術を融合するため、分類は複雑です。 1年後の新しいゲームで高度と見なされた機能は、来年に期待される標準になります。古い機能と新しい機能の両方を組み合わせたゲームが一般的です。たとえば、 Jurassic Park:Trespasser (1998)は、FPSジャンルに物理学を導入しましたが、2002年頃まで一般化することはありませんでした。RedFaction (2001)は破壊可能な環境を特徴としていました。

タイムライン

1970年代および1980年代:初期のFPSグラフィックエンジン

この初期世代のFPSのゲームレンダリングは、すでに一人称視点からのもので、撮影する必要がありましたが、ほとんどはベクターグラフィックスを使用して構成されていました。

最初のFPSには、 Maze WarSpasimの 2つの申立人がいます。 迷路戦争は1973年に開発され、固定視点を使用してレンダリングされた廊下の迷路を1人のプレーヤーが歩き回りました。マルチプレイヤー機能は、プレイヤーがお互いを撃とうとするもので、後で追加され、1974年にネットワーク化されました。Spasimはもともと1974年に開発され、プレイヤーはワイヤーフレーム3Dユニバースを移動しました。 SpasimはPLATOネットワーク上の最大32人のプレイヤーがプレイできます。

Incentive Softwareによって社内で開発されたFreescapeエンジンは、コンピューターゲームに使用される最初のプロプライエタリ3Dエンジンの1つであると考えられていますが、Incentiveのタイトル以外では商業的に使用されていません。このエンジンを使用した最初のゲームは、1987年のパズルゲームDrillerでした。

1990年代初期:2.5Dの世界とテクスチャへのワイヤフレーム

この世代のゲームは、Doomクローンと見なされることがよくあります。完全な3Dレンダリングはできませんでしたが、レイキャスティング2.5D技術を使用して環境を描画し、スプライトを使用して3Dモデルの代わりに敵を描画しました。ただし、これらのゲームでは、単純なワイヤフレームモデルや単色の代わりに、テクスチャを使用して環境をレンダリングし始めました。

id SoftwareのHovertank 3Dは 、1990年にこの技術を初めて使用しましたが、 Catacomb 3D (1991)の直後に追加された機能を使用していませんでした。その後、後にWolfenstein 3Dエンジンが使用され、他のゲーム。 Catacomb 3Dは、プレイヤーの手を画面上に表示する最初のゲームでもあり、プレイヤーのキャラクターの役割への影響を促進しました。

Wolfenstein 3Dエンジンはまだ非常に原始的でした。床と天井にテクスチャを適用せず、レイキャスティングは壁を一定の高さに制限し、レベルはすべて同じ平面にありました。

まだ真の3Dを使用していませんでしたが、id Tech 1はDoom (1993)で最初に使用され、再びid Softwareで使用され、これらの制限を取り除きました。また、バイナリ空間分割(BSP)の概念も最初に導入しました。別のブレークスルーは、エンジンにマルチプレイヤー機能を導入したことです。ただし、まだ2.5Dを使用していたため、Doomで適切に上下することは不可能であり、Doomレベルはすべて2次元でした。 Z軸がないため、エンジンはルームオーバールームのサポートを許可しませんでした。

Doomの成功により、同じエンジンまたは類似の手法を使用して複数のゲームが生み出され、 Doom clonesという名前が付けられました。 デュークヌケム3D (1996)で使用されているビルドエンジンは、セクターの上部にセクターをスタックすることでルームオーバールームをサポートできるビルドエンジンなど、id Tech 1の制限の一部を後で取り除きましたが、使用された技術は同じままでした。

1990年代半ば:3Dモデル、ハードウェアアクセラレーションの始まり

1990年代半ば、ゲームエンジンは、任意のレベルのジオメトリで真の3Dワールドを再作成しました。スプライトの代わりに、エンジンは単純にテクスチャ化された(シングルパステクスチャリング、ライティングの詳細なし)ポリゴンオブジェクトを使用しました。

FromSoftwareは、1994年12月にSony PlayStation向けのフルポリゴンフリーローミング一人称リアルタイムアクションタイトルであるKing's Fieldをリリースしました。Segaの32XリリースMetal Headは、完全にテクスチャマッピングされた3Dポリゴングラフィックスを使用した一人称シューティングゲームメカシミュレーションゲームでした。 1年前、ExactはSharp X68000コンピューターゲームGeograph Sealをリリースしました。これは、プラットフォームゲームメカニクスを採用し、ほとんどのアクションがWolfenstein 3Dの廊下迷路ではなく、自由に移動する屋外環境で行われる完全3D多角形の一人称シューティングゲームです。翌年、ExactはPlayStationコンソールの後継であるJumping Flash!をリリースしました 、同じゲームエンジンを使用しましたが、シューティングではなくプラットフォーム化に重点を置くように適合させました。 ジャンピングフラッシュ!シリーズは同じエンジンを使用し続けました。

1995年にLucasArtsによってリリースされたDark Forcesは、最初の「真の3D」一人称シューティングゲームの1つと見なされてきました。そのエンジンであるJedi Engineは、3次元の環境をサポートする最初のエンジンの1つでした。エリアは、3面すべて(ビルのストーリーなど)を含めて、3面すべてに隣接して存在できます。 Dark Forcesのオブジェクトのほとんどはスプライトですが、ゲームにはテクスチャ付きの3Dレンダリングされたオブジェクトのサポートが含まれています。最初の真の3D一人称シューティングゲームの1つと見なされる別のゲームは、Parallax Softwareの1994シューティングゲームDescentです。

Quakeエンジン( Quake 、1996)は、より少ないアニメーションスプライトを使用し、真の3Dジオメトリとライティングを使用し、Zバッファリングなどの精巧な手法を使用してレンダリングを高速化しました。 Quakeは、特別なマップデザインシステムを使用して3D環境の前処理と事前レンダリングを行う最初の真の3Dゲームでもありました。ゲームが行われた3D環境(初めてマップと呼ばれる)は、作成中に簡素化されましたゲームのプレイ時に必要な処理を削減するマップの。

静的ライトマップと3D光源もレベルを保存するBSPファイルに追加され、よりリアルな照明が可能になりました。

最初のグラフィックスプロセッシングユニットは1990年代後半に登場しましたが、当時の多くのゲームは依然としてソフトウェアレンダリングをサポートしていました。 id Tech 2( Quake II 、1997)は、ハードウェアアクセラレーショングラフィックスを活用した最初のゲームの1つでした(id Softwareは後にQuakeを改訂してOpenGLサポートをゲームに追加しました)。

Half-Life (1998)のValve CorporationによるQuakeエンジンから派生したエンジンであるGoldSrcは、Direct3Dサポートと骨格フレームワークを追加してNPCのレンダリングを改善し、Quakeエンジンと比較してNPC人工知能(AI)を大幅に改善しました。

1990年代後半:フル32ビットカラー、GPUが標準に

この期間には、変換、クリッピング、ライティング(T&L)を備えた最初のビデオカードが導入されました。この革新的な技術を備えた最初のカードはGeForce 256でした。このカードは、当時3dfxが提供していたVoodoo3よりも優れていました。Voodoo3はT&Lがないために不足していました。 MatroxとG400、S3とSavage4などの企業は、この期間中に3Dゲーム市場からの撤退を余儀なくされました。 1年後、ATIは、真の競合グラフィックスカード製品であるRadeon 7200をリリースしました。

この期間のすべてのゲームは16ビットカラーをサポートしていましたが、多くは32ビットカラー(8ビットアルファチャンネルを備えた24ビットカラー)も採用していました。すぐに、多くのベンチマークサイトが標準として32ビットを売り込み始めました。アンリアルエンジンは、リリース以来多数のFPSゲームで使用されていましたが、当時の重要なマイルストーンでした。 OpenGLの代わりに、3dfx GPU用に特別に開発されたGlide APIを使用しました。おそらくその人気の最大の理由は、エンジンアーキテクチャとスクリプト言語を含めることで簡単に変更できるようになったことです。前世代のエンジンと比較したアンリアルのもう1つの改善点は、マルチプレイヤーでのエンジンのスケーラビリティを大幅に向上させたネットワークテクノロジーでした。

最初にQuake III Arenaに使用されたid Tech 3は、はるかに複雑でスムーズなアニメーションを保存できるようにすることで、前身から改良されました。また、ライティングとシャドウイングが改善され、シェーダーと曲面が導入されました。

2000年代前半:細部の増加、屋外環境、ラグドールの物理学

新しいグラフィックハードウェアは新しい機能を提供し、新しいエンジンがパーティクルエフェクトやフォグなどのさまざまな新しいエフェクトを追加したり、テクスチャやポリゴンのディテールを増やしたりできるようにしました。多くのゲームは、大きな屋外環境、乗り物、およびラグドールの物理学を特徴としていました。

ビデオハードウェアの平均要件:通常、DirectX 7.0 GeForce 2やRadeon 7200などのハードウェアT&Lを備えたGPUが必要でした。次世代のGeForce 3またはRadeon 8500は、DirectX 8.0の頂点シェーダーとピクセルシェーダーはほとんど役に立たなかったものの、より効率的なアーキテクチャのため推奨されました。少数のゲームは、RIVA TNT2やRage 128などのDirectX 6.0チップセット、およびソフトウェアレンダリング(統合されたIntel GMAを使用)を引き続きサポートしていましたが、強力なCPUでさえハードウェアT&Lの不足を補うことができないことは明らかでした。

Unreal Engine 2.0のようなPCプラットフォーム用に開発されたゲームエンジンは、PlayStation 2やGameCubeなどの第6世代コンソールに適応するようになりました。

2000年代半ば:照明とピクセルシェーダー、物理学

新世代のグラフィックチップにより、ピクセルシェーダーベースのテクスチャ、バンプマッピング、ライティングおよびシャドウイングテクノロジーが一般的になりました。シェーダーテクノロジーには、HLSL(DirectX用)、GLSL(OpenGL用)、またはCgが含まれます。

これにより、広範なGeForce 2やRadeon 7200などのDirectX 7.0グラフィックチップ、RIVA TNT2やRage 128などのDirectX 6.0チップセット、および統合されたオンボードグラフィックアクセラレータが廃止されました。この世代のゲームまでは、強力なCPUが古いビデオカードをいくらか補うことができました。ビデオハードウェアの平均要件:最小はGeForce 3またはRadeon 8500であり、GeForce FX、Radeon 9700(またはPixel shader 2.xをサポートする他のカード)を強く推奨しました。 Radeon 9700は、当時の最新かつ最も要求の厳しいタイトルであっても、アンチエイリアシング(AA)および/または異方性フィルタリング(AF)が完全に使用可能なオプションであり、標準機能としてAAおよびAFが広く受け入れられることを実証しました。 AAとAFは、これ以前の多くの初期グラフィックスチップでサポートされていましたが、パフォーマンスに大きな打撃を与えたため、ほとんどのゲーマーはこれらの機能を有効にしないことを選択しました。

これらの新技術により、ゲームエンジンはシームレスに統合された屋内/屋外環境を特徴とし、よりリアルなアニメーション(キャラクター、水、天気効果など)にシェーダーを使用し、一般的にリアリズムが向上しました。 GPUがすでにCPUによって実行されたタスクの一部、およびより一般的に利用可能な処理能力の増加により、ほとんどのビデオにHavok物理エンジンを含めるなど、ゲームに現実的な物理効果を追加できましたゲーム。 1998年にJurassic Park:Trespasserを使用して物理学が既にビデオゲームに追加されていましたが、当時のハードウェア機能は限られており、物理学を処理するHavokのようなミドルウェアがなかったため、技術的および商業的に失敗しました。

Doom 3 (2004)で最初に使用されたid Tech 4は、完全に動的なピクセルごとの照明を使用していましたが、以前は、3Dエンジンは主に事前計算された頂点ごとの照明またはライトマップとGouraudシェーディングに依存していました。 Doom 3で使用されるシャドウボリュームアプローチは、よりリアルな照明とシャドウを可能にしましたが、ソフトシャドウをレンダリングできず、エンジンは主に屋内で良好だったため、代価がかかりました。その後、id Tech 4エンジンにMegaTextureテクノロジーが導入され、広大な屋外スペースで動作するように修正されました。

同じ年、Valve Corporationは、新しいSourceエンジンを搭載したHalf-Life 2をリリースしました。この新しいエンジンは、とりわけ、印象的なリップシンクテクノロジーと呼ばれるものを含む、NPC用の非常にリアルな顔アニメーションを備えていたという点で注目に値しました。

2000年代後半:フォトリアリズムへのアプローチ

GeForce 7やRadeon X1xxxシリーズなどの新しいグラフィックチップセットによって可能になったShader Model 3やShader Model 4などのGPUのさらなる改善により、グラフィックエフェクトの改善が可能になりました。

この3Dエンジンの時代の開発者は、写真のようにリアルになった品質を誇示しています。これらのエンジンには、事前定義された物理学を備えた現実的なシェーダーベースのマテリアル、手続き型および頂点シェーダーベースのオブジェクト(植生、破片、本やツールなどの人間が作ったオブジェクト)を備えた環境、手続き型アニメーション、映画撮影効果(被写界深度、モーションブラー、など)、ハイダイナミックレンジレンダリング、ソフトシャドウイングとボリュームライティングを備えた統合照明モデル。

ただし、これらの効果が可能なエンジンのほとんどは、Unreal Engine 3、Dunia Engine、CryEngine 2、id Tech 5( Rageで使用され、新しい仮想テクスチャリングテクノロジーを使用)など、前世代のエンジンの進化版です。

Unreal Engine 3を使用した最初のゲームは2006年11月にリリースされ、CryEngine 2( Crysis )を使用した最初のゲームは2007年にリリースされました。

2010年代初期:グラフィックテクニックミックス

GeForce 400シリーズまたはRadeon HD 5000シリーズ以降の新しいグラフィックチップセットによって可能になったShader Model 5などのGPUのさらなる改善により、グラフィックエフェクトの改善が可能になりました。ダイナミックディスプレイスメントマッピングやテッセレーションなど。

2010年の時点で、既存の主要なエンジンの2つの進化がリリースされました:サマリタンデモを駆動するDirectX 11のアンリアルエンジン3(およびバットマン:アーカムシティ、バットマン:アーカムナイトおよびその他のDX11ベースのUE3ゲームで使用される)とCryEngine 3 、 Crysis 2およびCrysis 3に電力を供給します。

エンジンの将来の計画について議論した企業はほとんどありませんでした。 id Tech 5の最終的な後継者であるid Tech 6は例外でした。まだ開発の初期段階にあったこのエンジンに関する予備情報は、id Softwareがレイトレーシングと従来のラスターグラフィックスが混在する方向を探していることを示す傾向がありました。ただし、John Carmackによると、id Tech 6に対応したハードウェアはまだ存在していません。エンジンを使用した最初のタイトルであるDoomは、2016年半ばにリリースされました。

2015年9月、Valve CorporationはDota 2のアップデートでSource 2をリリースしました。