ドゥームエンジン

コンテンツへジャンプ
フリー百科事典『ウィキペディア(Wikipedia)』より
( Id Tech 1からリダイレクト
id Tech 1
開発者id Software(ジョン・カーマック、ジョン・ロメロ、デイブ・テイラー)
最終リリース
1.9 / 1995年2月1日; 30年前 ( 1995年2月1日)
リポジトリgithub.com/id-Software/DOOM
言語C言語、アセンブリ言語
プラットフォームMS-DOSPC-98WindowsMacLinuxAndroidAmigaNeXTSTEPNeXTJaguar32XPlayStation3DONintendo 64サターンゲームボーイアドバンスSwitchBSDUnix、その他
前身Wolfenstein 3Dエンジン
後継Quakeエンジン
ライセンスGNU GPL 2.0以降[ 1 ]
3DO : MIT [ 2 ]

id Tech 1 はDoomエンジンとも呼ばれid Software のビデオゲームDoomおよびDoom II: Hell on Earthで使用されているゲームエンジンです。また、 HereticHexen: Beyond HereticStrife: Quest for the SigilHacx: Twitch 'n KillFreedoom 、およびライセンス契約者が制作したその他のゲームでも使用されています。 id Tech 1 はJohn Carmackによって作成され、 Mike AbrashJohn RomeroDave Taylor、 Paul Radekによって補助機能が記述されました。当初はNeXTコンピュータ上で開発され、[ 3 ] Doomの最初のリリースのためにMS-DOSおよび互換オペレーティングシステム移植され、その後、いくつかのゲームコンソールオペレーティングシステムに移植されました

LinuxDoomのソースコードは、1997年12月23日に非商用利用の権利を認めるライセンスの下で公開され、その後約1週間後の1997年12月29日にLinux版Doom IIがリリースされた。 [ 4 ] [ 5 ]ソースコードはその後、 1999年10月3日にGNU General Public License v2.0以降の下で再リリースされた。[ 6 ] [ 7 ]それ以来作成された数十の非公式Doomソースポートにより、 Doomは以前はサポートされていなかったオペレーティングシステムでも実行できるようになり、新しい機能でエンジンの機能が大幅に拡張されることもある。

このエンジンは3D空間をレンダリングしますが、その空間は2次元の平面図から投影されます。視線は常に床と平行で、壁は床に対して垂直でなければならず、多層構造や傾斜エリア(角度の異なる床と天井)を作成することはできません。これらの制限にもかかわらず、このエンジンはid Softwareの以前のWolfenstein 3Dエンジンからの技術的飛躍を表していました。Doomエンジンは後にid Softwareの長いゲームエンジンのラインナップに組み込むために「id Tech 1」に改名されました[要出典][ 8 ]

ゲームワールド

[編集]

Doomエンジンレンダリングをゲームの他の部分から分離しています。グラフィックエンジンは可能な限り高速に動作しますが、ゲームの世界はハードウェアに関係なく毎秒35フレームで実行されるため、複数のプレイヤーが様々な性能のコンピューターを使って対戦することができます。[ 9 ]

レベル構造

[編集]

Doomが内部的にレベルをどのように表現するかを示す簡単な設定

エディタ内のマップビュー

上から見下ろすと、Doom のすべてのステージは実際には2次元であり、Doomエンジンの大きな制限の一つである、部屋を重ねて表示できないという制約が露呈しています。しかし、この制限には明るい兆しがあります。右の最初の画像のように、壁とプレイヤーの位置を示す「マップモード」を簡単に表示できるのです。

基本オブジェクト

[編集]

基本単位は頂点で、単一の2次元点を表します。頂点(内部的には「頂点」と呼ばれます)は結合されてを形成し、「ラインデフ」と呼ばれます。各ラインデフは1つまたは2つの辺を持つことができ、「サイドデフ」と呼ばれます。サイドデフはグループ化されてポリゴンを形成し、「セクター」と呼ばれます。セクターはレベルの特定の領域を表します

セクター

[編集]

各セクターには、床の高さ、天井の高さ、照明レベル、床のテクスチャ、天井のテクスチャなど、いくつかのプロパティが含まれています。たとえば、特定のエリアの照明レベルを変更するには、そのエリアに異なる照明レベルの新しいセクターを作成する必要があります。したがって、片側ラインデフは固体の壁を表し、両側ラインデフはセクター間のブリッジラインを表します

サイドデフ

[編集]

サイドデフは壁のテクスチャを保存するために使用されます。これらは床や天井のテクスチャとは完全に分離されています。各サイドデフには3つのテクスチャを設定できます。これらは中央テクスチャ、上部テクスチャ、下部テクスチャと呼ばれます。片面ラインデフでは、中央テクスチャのみが壁のテクスチャとして使用されます。両面ラインデフでは、状況はより複雑です。下部テクスチャと上部テクスチャは、隣接するセクターの床と天井の高さが異なる場合の隙間を埋めるために使用されます。たとえば、下部テクスチャは階段に使用されます。サイドデフにも中央テクスチャを設定できますが、ほとんどの場合設定されていません。これは、テクスチャを宙に浮かせたい場合に使用されます。たとえば、透明なバーテクスチャがケージを形成している場合、これは両面ラインデフの中央テクスチャの例です

バイナリ空間分割

[編集]

Doom はバイナリ空間分割(BSP)と呼ばれるシステムを採用しています[ 10 ] レベルのBSPデータは事前​​にツールによって生成されます。このプロセスは、大規模なレベルではかなりの時間がかかることがあります。そのため、Doomでは壁を動かすことができません。ドアやエレベーターは上下に動きますが、横方向には動きません。

レベルは二分木に分割されます。木の各位置は「ノード」であり、レベル内の特定の領域を表します(ルートノードはレベル全体を表します)。木の各枝には、ノードの領域を2つのサブノードに分割する境界線があります。同時に、境界線はlinedefを「seg」と呼ばれる線分に分割します。[ 11 ]

木の葉には凸多角形があり、それ以上のレベル分割は不要です。これらの凸多角形はサブセクター(または「SSECTOR」)と呼ばれ、特定のセクターに結び付けられます。各サブセクターには、それに関連付けられたセグメントのリストがあります。[ 10 ]

BSPシステムは、サブセクターをレンダリングに適した順序に並べ替えます。アルゴリズムは非常にシンプルです。

  1. ルートノードから開始します。
  2. このノードの子ノードを再帰的に描画します。カメラに最も近い子ノードが、スキャンラインアルゴリズムを用いて最初に描画されます。これは、カメラがノードの境界線のどちら側にあるかを確認することでわかります。
  3. サブセクターに到達したらそれを描きます。[ 12 ]

ピクセル列全体が塗りつぶされた(つまり、隙間がなくなった)時点で処理は完了します。この順序付けにより、見えないオブジェクトの描画に時間がかからず、結果として速度の低下を招くことなくマップを非常に大きくすることができます。

レンダリング

[編集]

壁の描画

[編集]
左は実際の 3D 環境でのカメラの回転、右はDoomのような 2.5D 環境でのせん断のアニメーション比較です

Doomの壁はすべて垂直に描かれているため、上下を正しく見ることができません。「Y シアリング」によって上下を見るような動作は可能であり、多くの最近のDoomソースポートや、 Hereticなどのこのエンジンを使用した後期のゲームでもこれが行われています。基本的にこれは、画面内で地平線を上下に移動させることで機能し、実質的にはより高い表示領域に「窓」を提供します。この窓を上下に動かすことで、上下を見ているような錯覚を与えることができます。ただし、プレイヤーが上下に視線を向けるほど、視界が歪んでしまいます。

DoomエンジンはBSPツリーをトラバースしながら壁をレンダリングし、カメラからの距離順にサブセクター描画します。これにより、最も近いセグメントが最初に描画されます。描画されたセグメントはリンクリストに格納されます。これは、後でレンダリングされる他のセグメントをクリップするために使用され、オーバードローを削減します。また、スプライトのエッジをクリップするためにも使用されます。

エンジンが特定のX座標にある固体(片面)の壁に到達すると、その領域にはそれ以上線を描く必要はありません。クリッピングのために、エンジンは画面上で固体の壁に到達した領域の「マップ」を保存します。これにより、プレイヤーから見えないレベルの遠くの部分を完全にクリッピングすることができます。

Doomグラフィック フォーマットは、壁のテクスチャを垂直の列のセットとして保存します。これは本質的に多数の垂直のテクスチャの列を描画することによって壁をレンダリングするレンダラーにとって便利です。

床と天井

[編集]

床と天井(「フラット」)を描画するシステムは、壁に使用されているものよりも洗練されていません誰の見解でしょうか?) 。フラットは塗りつぶしのようなアルゴリズムで描画されます。このため、質の悪いBSPビルダーを使用すると、床や天井が画面の端まで滲み出て「穴」ができてしまうことがあります。これは一般的に「スライムトレイル」と呼ばれる視覚的なエラーです。[ 13 ]これは、プレイヤーがnoclipチートを使用してレベルの外に移動すると、床と天井がレベルから空きスペースに伸びているように見える理由でもあります

床と天井は「visplanes」として描画されます。これは、特定の高さ、明るさ、テクスチャを持つ床または天井からの水平方向のテクスチャの連続を表します(隣接する2つのセクターの床が全く同じ場合、これらは1つのvisplaneに統合されます)。visplaneの各x座標には、描画される特定の垂直方向のテクスチャ線が割り当てられます。

各x座標に1本の垂直線しか描画できないという制限があるため、visplaneを複数のvisplaneに分割する必要がある場合があります。例えば、2つの同心円状の正方形で構成された床を表示する場合を考えてみましょう。内側の正方形は周囲の床を垂直に分割します。内側の正方形が描画される水平方向の範囲では、周囲の床を描くために2つのvisplaneが必要になります。

Doom には visplane の数に静的な制限があり、その数を超えると「visplane オーバーフロー」が発生し、「visplane がもうありません!」または「visplane オーバーフロー (128 以上)」というエラーが表示され、ゲームは DOS に切り替わります。visplane の制限を発動させる最も簡単な方法は、大きなチェッカーボードの床パターンを作成することです。これにより、大量の visplane が生成されます。

セグメントがレンダリングされると、セグメントの端から画面の垂直方向の端に向かって伸びるヴィスプレーンも追加されます。これらは既存のヴィスプレーンに達するまで伸びます。この仕組み上、システムはセグメントがエンジン全体によって順番にレンダリングされるという事実に依存しています。つまり、より近いヴィスプレーンを最初に描画し、より遠いヴィスプレーンによって「切り取られる」ようにする必要があります。もし止められなければ、前述のように、床や天井は画面の端まで「滲み出し」ます。最終的に、ヴィスプレーンは特定のテクスチャを描画するための画面上の特定の領域の「マップ」を形成します。

ヴィスプレーンは基本的に垂直方向の「ストリップ」で構成されていますが、実際の低レベルレンダリングはテクスチャの水平方向の「スパン」の形で実行されます。すべてのヴィスプレーンが構築された後、それらはスパンに変換され、画面にレンダリングされます。これはトレードオフの関係にあるようです。ヴィスプレーンを垂直方向のストリップとして構築する方が簡単ですが、床と天井のテクスチャの表示の性質上、水平方向のストリップとして描画する方が簡単です。

物(スプライト)

[編集]

レベル内の各セクターには、そのセクターに格納されている物のリンクリストがあります。各セクターが描画されると、スプライトは描画対象のスプライトリストに配置されます。視野内にない場合は無視されます

スプライトのエッジは、以前に描画されたセグメントのリストをチェックすることでクリッピングされます。Doomのスプライト壁と同じ列ベースの形式で保存されており、これもレンダラーにとって便利です。壁の描画に使用される関数は、スプライトの描画にも使用されます。

サブセクターは順序が保証されていますが、その中のスプライトは順序が保証されていません。Doom描画するスプライトのリスト(「vissprites」)を保存し、レンダリング前にリストをソートします。遠くのスプライトは近くのスプライトよりも先に描画されます。これにより多少のオーバードローが発生しますが、通常は無視できる程度です。

最後に、透明なバーなどに使用される、両面ラインの中央テクスチャについての問題があります。これらのテクスチャは、レンダリング処理の最後に、他の壁ではなくスプライトと混合されて描画されます。

Doomエンジンを使用したゲーム

[編集]

Doomエンジンは古典的な一人称視点シューティングゲームDoomに搭載されたことでその名声を獲得し、他のいくつかのゲームにも使用されました。通常、 Doomエンジンを使用したゲームの「ビッグ4」は、DoomHereticHexen: Beyond Heretic、 Strife: Quest for the Sigil考えられています

Doomエンジンで直接構築されたゲーム

[編集]
タイトル開発元
1993ドゥームidソフトウェア
1994Doom II: Hell on Earth
ヘレティックレイヴン・ソフトウェア
1995ヘクセン:ヘレティックを超えてレイヴン・ソフトウェア
1996ファイナルドゥームチームTNT
ヘレティック:蛇乗りの影レイヴン・ソフトウェア
ヘクセン:闇の城塞の死王
ストライフ:シジルの探求ローグ・エンターテインメント

DoomまたはDoom IIのコードに基づいたゲーム

[編集]

1990年代には少数の開発者がDoom完全コンバージョンを配布するライセンスを取得し、1997年のソースコード公開以降、フリーウェアファンゲーム、商用タイトルを含む数多くのスタンドアロンタイトルがこのエンジンで制作されました[ 14 ]

タイトル開発元
ADコップエレクトロニックミュージックアンドアニメーショングラフィックス株式会社
1996キリングタイム(PC)ロジックウェア
チェックスクエストデジタルカフェ
マーズ3Dエンジンテクノロジー株式会社
1997ドゥーム64サンディエゴ・ミッドウェイ・スタジオ
チェックス・クエスト2:フレモイドがチェックストロポリスを占拠デジタルカフェ
HacXバンジョーソフトウェア
19983Dヒーロー

TAO

エンジンテクノロジー株式会社
1999バットマン ドゥーム[ 15 ]ACEチーム
2000ソニックロボブラスト2ソニックチームジュニア
2003フリードゥームフリードゥームチーム
2008チェックス・クエスト3チャールズ・ヤコビ
ブラスフェマーブラスフェマーチーム
アクションドゥーム2:アーバンブロール[ 16 ]スキューバ・スティーブ
2009ハーモニー[ 17 ]トーマス・ファン・デル・フェルデン
2014スクエアの大冒険[ 18 ]ビッグブリックゲームズ
2016ブレイド・オブ・アゴニー[ 19 ]ダニエル・ギマー
2017ウールボールの台頭[ 20 ]MSPaintR0cks
2018REKKR [ 21 ]モッキンバード・ソフトワークス
アニー[ 22 ]セルジュ・Jkn
アッシュ[ 23 ]ヴォストヨク
トータルカオス[ 24 ]ワダホリック
2019ホーカス・ポーカス・ドゥーム[ 25 ]荒廃
ヘドン[ 26 ]Zan_HedonDev
神社[ 27 ]スカムヘッド
2020プロジェクト・オシリス[ 28 ]アークトゥルスデラックス
2021悪魔城ドラキュラ サイモンズ・デスティニー[ 29 ]バタンディ
嘔吐物[ 30 ]スカムヘッド
2022死霊術の手[ 31 ]HONチーム
カントリーサイド[ 32 ]トレンチワーク
プロジェクト・アブセンティア[ 33 ]ワッフルアイアンスタジオ
私は咲夜:東方FPSゲーム[要出典]シグヤード・チーム
2023サプライズ[ 34 ]メクワークス
冒険家[ 35 ]ピクセルフォックス
終末的な雰囲気[ 36 ]アマニト・コンピューティング
2024ハンズ・オブ・ネクロマンシー2 [ 37 ]HONチーム
日没の向こう側[ 38 ]メタコープ / ベイパーウェア
セラコ[ 39 ]オルタード・オービット・スタジオ
ボローヘレン[ 40 ]4キューブゲーム
2025マラ・ペタカ[ 41 ]サンディティオ・バユ、ヘルフォージ・スタジオ
モルタ[ 42 ]スカムヘッド、オシオル
ウェイン船長[ 43 ]Ciaran Games LLC、Silver Lining Interactive

参照

[編集]

注記

[編集]

参考文献

[編集]
  1. ^ Doom ソースコード、GNU GPL 準拠」gamers.org2023年5月31日時点のオリジナルからのアーカイブ
  2. ^ “Doom3do/LICENSE at master · Olde-Skuul/Doom3do” . GitHub . 2022年12月17日. 2022年2月19日時点のオリジナルよりアーカイブ2019年2月14日閲覧。
  3. ^ 「NeXT Computers - Company - Computing History」 . www.computinghistory.org.uk . 2022年3月29日時点のオリジナルよりアーカイブ。 2022年3月29日閲覧
  4. ^ スタッフ (1997年12月29日). 「Doom II Source Available」 . PC Gamer US . 1998年2月18日時点のオリジナルよりアーカイブ2019年11月20日閲覧。
  5. ^ https://web.archive.org/web/*/ftp://ftp.idsoftware.com/idstuff/source/* 「FTPリンク」ftp.idsoftware.com . 2015年12月2日時点のオリジナルよりアーカイブ
  6. ^ 「Doom ソースコード(GNU GPL ライセンス) - Doomworld /idgames データベース フロントエンド」 2021年3月28日時点のオリジナルよりアーカイブ2021年3月28日閲覧
  7. ^ Doomのソースコードは3ddownloads.comからアーカイブされています。 2004年2月24日、 Wayback Machineで公開されました。1997年にリリースされ、現在はGNU GPL v2以降
  8. ^ 「id Tech 1 (Concept)」 . Giant Bomb . 2019年2月15日時点のオリジナルよりアーカイブ。 2019年2月14日閲覧
  9. ^ Schuytema, Paul C. (1994年8月). 「The Lighter Side Of Doom」 . Computer Gaming World . pp. 140, 142. 2018年1月2日時点のオリジナルよりアーカイブ。 2019年2月14日閲覧
  10. ^ a b Abrash, Michael. 「Quakeの3Dエンジン:全体像」 . 2012年8月22日閲覧
  11. ^ Apted, Andrew. 「GL-Nodesの仕様」 . 2012年9月2日時点のオリジナルよりアーカイブ。 2012年8月22日閲覧
  12. ^ Sanglard, Fabien. 「Doomエンジンコードレビュー」2012年9月3日時点のオリジナルよりアーカイブ。 2012年8月23日閲覧
  13. ^ スライムトレイル - The Doom Wiki
  14. ^ Tarason, Dominic (2019年4月1日). 「Modder Superior: The many free descendants of Doom」 . Rock Paper Shotgun . 2023年8月6日時点のオリジナルよりアーカイブ。 2024年7月14日閲覧
  15. ^ 「ACE Teamの兄弟たちは成長し、振り返ることはない」。NME 2023年5月3日。多くの開発者と同様に、彼らのスキルをDoomとQuakeエンジンに活かしたのは、90年代に台頭してきたFPS MODシーンでした。彼らの最も野心的なプロジェクトは、Adrian Carmackの描く地獄絵図をゴッサム・シティへと変貌させた『Batman Doom』です。ペンギン、ジョーカー、そして多くのバットマンの凶悪犯が手描きのピクセルアートで描かれています。Andresは「私たちがゲームを開発できたのは、id Softwareのようなチームのおかげです」と皮肉を込めて語ります。
  16. ^ Yu, Derek (2008年1月9日). 「Action Doom 2: Urban Brawl」 . tigsource . 2008年1月9日閲覧
  17. ^ Gillen, Kieron (2009年11月18日). 「Harmony in My Head: Harmony」 . Rock Paper Shotgun . 2023年2月23日時点のオリジナルよりアーカイブ。 2023年2月22日閲覧
  18. ^ Dawe, Liam (2018年4月19日). 「『スクウェア・エニックスの冒険』は、無料で楽しめるレトロFPSで、第2話も配信中」 . GamingOnLinux . 2023年2月19日閲覧
  19. ^ Smith, Adam (2016年8月3日). 「Blade Of Agonyは素晴らしい『WolfenDoom』Modだ」rockpapershotgun . 2016年8月3日閲覧
  20. ^ Tarason, Dominic (2018年1月7日). 「Shadow & Rise Of The Wool BallがWolfensteinをキュートに変える」 . Rock Paper Shotgun . 2024年7月15日時点のオリジナルよりアーカイブ。 2024年7月14日閲覧
  21. ^ Tsiro, Rania (2018年7月12日). 「DoomguyはRekkrゲームで今やある種のバイキング」 . VGR .オリジナルより2024年7月15日アーカイブ。 2024年7月14日閲覧
  22. ^ Glagowski, Peter (2018年8月17日). 「Doom 2 mod Annie rises after 12 year development period」 . destructoid . 2018年8月17日閲覧。
  23. ^ Tarason, Dominic (2018年9月24日). 「Doomコンバージョン版『Ashes 2063』で80年代の終末的な荒地に立ち向かえ」rockpapershotgun .オリジナルより2021年6月17日アーカイブ。 2018年9月24日閲覧
  24. ^ Dawe, Liam (2018年11月5日). 「Total ChaosはDoom 2の印象的で恐ろしい完全コンバージョンであり、サバイバルホラー体験を提供している」 . gamingonlinux . 2018年11月5日閲覧
  25. ^ Tarason, Dominic (2019年1月14日). 「Hocus Pocus Doom が Apogee の DOS プラットフォームゲームを三次元に引きずり込む」rockpapershotgun . 2019年1月14日閲覧
  26. ^ Digre, Alyxx (2019年5月16日). 「Hedon – PCゲームレビュー」 . VGR . 2024年7月15日時点のオリジナルよりアーカイブ。 2024年7月14日閲覧
  27. ^ Bolding, Jonathan (2019年12月27日). 「Doom 2 mod Shrineで宇宙の恐怖をぶち壊せ」 . pcgamesn . 2019年12月27日閲覧
  28. ^ Papadopoulos, John (2020年3月16日). 「GZDoomでAlien Breed 3Dのリメイク版が作られました。今すぐダウンロードできます」 . DSOGaming . 2024年6月22日閲覧
  29. ^ Tarason, Dominic (2021年6月27日). 「Castlevania: Simon's DestinyはDoomのMODとしては素晴らしい」rockpapershotgun . 2021年6月27日閲覧
  30. ^ Glagowski, Peter (2021年8月11日). 「Vomitoreum Review」 . Tech Raptor . 2024年7月15日時点のオリジナルよりアーカイブ。 2024年7月14日閲覧
  31. ^ Dawe, Liam (2022年5月22日). 「GZDoom搭載ダークファンタジーFPS『Hands of Necromancy』が発売」GamingOnLinux . 2024年7月15日閲覧
  32. ^ Werner, Adrian (2022年4月22日). 「CountryCide - Doom 2向けの素晴らしいダークMODの新バージョン」 . gamepressure . 2022年4月22日閲覧
  33. ^ 「プロジェクト・アブセンティア」 2022年10月30日。
  34. ^ Chalk, Andy (2023年8月5日). 「SuppliceはDoomモッダーによって制作された新しいレトロFPSで、まさに昔ながらのDoomのような感覚を味わえる」 . PCGamer . 2023年6月5日閲覧
  35. ^ Zwiezen, Zack (2023年9月29日). 「新しいDoom Modは基本的に素晴らしいインディ・ジョーンズゲームだ」 . kotaku . 2023年9月29日閲覧
  36. ^ Tamaster, Tamaster (2023年3月21日). 「Apocalyptic Vibes ― フェードアウトした核戦争後の地球を巡る没入型の旅!」 indie -hive . 2023年3月21日閲覧
  37. ^ McHugh, Alex (2024年9月17日). 「新作レトロFPS『Hands of Necromancy 2』は『Heretic』からインスピレーションを得ている」 . pcgamesn . 2024年9月17日閲覧
  38. ^ Smith, Mova (2023年12月14日). 「レトロFPS『Beyond Sunset』は、それ以前の素晴らしいメガワッドの要素を巧みに融合させたサイバーパンクな作品だ」 . pcgamer . 2023年12月14日閲覧
  39. ^ Zwiezen, Zack (2024年5月31日). 「Doomの技術を使って作られた新しいFPSは、ほとんどのAAAシューターよりも優れている」 Kotaku .オリジナルから2024年7月15日時点のアーカイブ。 2024年7月14日閲覧
  40. ^ Kotaky, Kotaku (2024年11月25日). 「Borrowhelenのスクリーンショットとビデオ - Kotaku」 . Kotaku . 2024年11月25日閲覧。
  41. ^ Wolens, Joshua (2025年10月6日). 「数十年前のDoomエンジンで作られたこの2025年のシューターは、美しく、楽しく、そして非常にタフだ」 . pcgamer . 2025年10月6日閲覧
  42. ^ Litchfield, Ted (2025年10月14日). 「DoomエンジンでDemon's Soulsのような、私が最も期待していたシューティングゲームの1つが、ついにリリース日が間近に迫っています」 . pcgamer . 2025年10月3日閲覧。
  43. ^ Yarwood, Jack (2025年11月25日). 「Captain Wayneは、ショットガンを片腕に持つ、怒り狂った船乗りを描いた新作レトロFPS」 . Time Extension . 2025年11月27日閲覧
[編集]
    id Tech 1
    開発者id Software(ジョン・カーマック、ジョン・ロメロ、デイブ・テイラー)
    最終リリース
    1.9 / 1995年2月1日; 30年前 (1995-02-01)
    リポジトリgithub.com/id-Software/DOOM
    言語C言語、アセンブリ言語
    プラットフォームMS-DOSPC-98WindowsMacLinuxAndroidAmigaNeXTSTEPNeXTJaguar32XPlayStation3DONintendo 64サターンゲームボーイアドバンスSwitchBSDUnix、その他
    前身Wolfenstein 3Dエンジン
    後継Quakeエンジン
    ライセンスGNU GPL 2.0以降[1]
    3DO : MIT [2]

    id Tech 1 はDoomエンジンとも呼ばれid Software のビデオゲームDoomおよびDoom II: Hell on Earthで使用されているゲームエンジンです。また、 HereticHexen: Beyond HereticStrife: Quest for the SigilHacx: Twitch 'n KillFreedoom 、およびライセンス契約者が制作したその他のゲームでも使用されています。 id Tech 1 はJohn Carmackによって作成され、 Mike AbrashJohn RomeroDave Taylor、 Paul Radekによって補助機能が記述されました。当初はNeXTコンピュータ上で開発され、[3] Doomの最初のリリースのためにMS-DOSおよび互換オペレーティングシステム移植され、その後、いくつかのゲームコンソールオペレーティングシステムに移植されました

    LinuxDoomのソースコードは、1997年12月23日に非商用利用の権利を認めるライセンスの下で公開され、その後約1週間後の1997年12月29日にLinux版Doom IIがリリースされた。 [4] [5]ソースコードはその後、 1999年10月3日にGNU General Public License v2.0以降の下で再リリースされた。[6] [7]それ以来作成された数十の非公式Doomソースポートにより、 Doomは以前はサポートされていなかったオペレーティングシステムでも実行できるようになり、新しい機能でエンジンの機能が大幅に拡張されることもある。

    このエンジンは3D空間をレンダリングしますが、その空間は2次元の平面図から投影されます。視線は常に床と平行で、壁は床に対して垂直でなければならず、多層構造や傾斜エリア(角度の異なる床と天井)を作成することはできません。これらの制限にもかかわらず、このエンジンはid Softwareの以前のWolfenstein 3Dエンジンからの技術的飛躍を表していました。Doomエンジンは後にid Softwareの長いゲームエンジンのラインナップに組み込むために「id Tech 1」に改名されました[要出典][8]

    ゲームワールド

    Doomエンジンレンダリングをゲームの他の部分から分離しています。グラフィックエンジンは可能な限り高速に動作しますが、ゲームワールドはハードウェアに関係なく毎秒35フレームで実行されるため、複数のプレイヤーがさまざまな性能のコンピューターを使用して対戦することができます。[9]

    レベル構造

    Doomが内部的にレベルをどのように表現するかを示す簡単な設定

    エディタ内のマップビュー

    上から見下ろすと、Doom のすべてのステージは実際には2次元であり、Doomエンジンの大きな制限の一つである、部屋を重ねて表示できないという制約が露呈しています。しかし、この制限には明るい兆しがあります。右の最初の画像のように、壁とプレイヤーの位置を示す「マップモード」を簡単に表示できるのです。

    基本オブジェクト

    基本単位は頂点で、単一の2次元点を表します。頂点(内部的には「頂点」と呼ばれます)は結合されてを形成し、「ラインデフ」と呼ばれます。各ラインデフは1つまたは2つの辺を持つことができ、「サイドデフ」と呼ばれます。サイドデフはグループ化されてポリゴンを形成し、「セクター」と呼ばれます。セクターはレベルの特定の領域を表します

    セクター

    各セクターには、床の高さ、天井の高さ、照明レベル、床のテクスチャ、天井のテクスチャなど、いくつかのプロパティが含まれています。たとえば、特定のエリアの照明レベルを変更するには、そのエリアに異なる照明レベルの新しいセクターを作成する必要があります。したがって、片側ラインデフは固体の壁を表し、両側ラインデフはセクター間のブリッジラインを表します

    サイドデフ

    サイドデフは壁のテクスチャを保存するために使用されます。これらは床や天井のテクスチャとは完全に分離されています。各サイドデフには3つのテクスチャを設定できます。これらは中央テクスチャ、上部テクスチャ、下部テクスチャと呼ばれます。片面ラインデフでは、中央テクスチャのみが壁のテクスチャとして使用されます。両面ラインデフでは、状況はより複雑です。下部テクスチャと上部テクスチャは、隣接するセクターの床と天井の高さが異なる場合の隙間を埋めるために使用されます。たとえば、下部テクスチャは階段に使用されます。サイドデフにも中央テクスチャを設定できますが、ほとんどの場合設定されていません。これは、テクスチャを宙に浮かせたい場合に使用されます。たとえば、透明なバーテクスチャがケージを形成している場合、これは両面ラインデフの中央テクスチャの例です

    バイナリ空間分割

    Doomはバイナリ空間分割(BSP)と呼ばれるシステムを採用しています[10]レベルのBSPデータを事前に生成するためのツールが使用されます。このプロセスは、大規模なレベルではかなりの時間がかかることがあります。そのため、 Doom では壁を動かすことはできません。ドアやエレベーターは上下に動きますが、横方向には動きません

    レベルは二分木に分割されます。木の各位置は「ノード」であり、レベル内の特定の領域を表します(ルートノードはレベル全体を表します)。木の各枝には、ノードの領域を2つのサブノードに分割する境界線があります。同時に、境界線はlinedefを「seg」と呼ばれる線分に分割します。[11]

    木の葉には凸多角形があり、それ以上のレベル分割は不要です。これらの凸多角形はサブセクター(または「SSECTOR」)と呼ばれ、特定のセクターに結び付けられます。各サブセクターには、それに関連付けられたセグメントのリストがあります。[10]

    BSPシステムは、サブセクターをレンダリングに適した順序に並べ替えます。アルゴリズムは非常にシンプルです。

    1. ルートノードから開始します。
    2. このノードの子ノードを再帰的に描画します。カメラに最も近い子ノードが、スキャンラインアルゴリズムを用いて最初に描画されます。これは、カメラがノードの境界線のどちら側にあるかを確認することでわかります。
    3. サブセクターに到達したら、それを描きます。[12]

    ピクセル列全体が塗りつぶされた(つまり、隙間がなくなった)時点で処理は完了します。この順序付けにより、見えないオブジェクトの描画に時間がかからず、結果として速度の低下を招くことなくマップを非常に大きくすることができます。

    レンダリング

    壁の描画

    左は実際の 3D 環境でのカメラの回転、右はDoomのような 2.5D 環境でのせん断のアニメーション比較です

    Doomの壁はすべて垂直に描かれているため、上下を正しく見ることができません。「Y シアリング」によって上下を見るような動きをさせることは可能であり、多くの最近のDoomソースポートや、 Hereticなどのこのエンジンを使用した後期のゲームでもこれが行われています。これは基本的に、画面内で地平線を上下に移動させることで機能し、実質的にはより高い表示領域に「窓」を提供します。この窓を上下に動かすことで、上下を見ているような錯覚を与えることができます。ただし、プレイヤーが上下に視線を向けるほど、視界が歪んでしまいます。

    DoomエンジンはBSPツリーをトラバースしながら壁をレンダリングし、カメラからの距離順にサブセクター描画します。これにより、最も近いセグメントが最初に描画されます。描画されたセグメントはリンクリストに格納されます。これは、後でレンダリングされる他のセグメントをクリップするために使用され、オーバードローを削減します。また、スプライトのエッジをクリップするためにも使用されます。

    エンジンが特定のX座標にある固体(片面)の壁に到達すると、その領域にはそれ以上線を描く必要はありません。クリッピングのために、エンジンは画面上で固体の壁に到達した領域の「マップ」を保存します。これにより、プレイヤーから見えないレベルの遠くの部分を完全にクリッピングすることができます。

    Doomグラフィック フォーマットは、壁のテクスチャを垂直の列のセットとして保存します。これは本質的に多数の垂直のテクスチャの列を描画することによって壁をレンダリングするレンダラーにとって便利です。

    床と天井

    床と天井(「フラット」)を描画するシステムは、壁に使用されるものよりも洗練されていません誰によると?) 。フラットは塗りつぶしのようなアルゴリズムで描画されます。このため、質の悪いBSPビルダーを使用すると、床や天井が画面の端まで滲み出る「穴」が発生することがあります。これは一般に「スライムトレイル」と呼ばれる視覚的なエラーです。[13]これは、プレイヤーがnoclipチートを使用してレベルの外に移動すると、床と天井がレベルから空きスペースに伸びているように見える理由でもあります

    床と天井は「visplanes」として描画されます。これは、特定の高さ、明るさ、テクスチャを持つ床または天井からの水平方向のテクスチャの連続を表します(隣接する2つのセクターの床が全く同じ場合、これらは1つのvisplaneに統合されます)。visplaneの各x座標には、描画される特定の垂直方向のテクスチャ線が割り当てられます。

    各x座標に1本の垂直線しか描画できないという制限があるため、visplaneを複数のvisplaneに分割する必要がある場合があります。例えば、2つの同心円状の正方形で構成された床を表示する場合を考えてみましょう。内側の正方形は周囲の床を垂直に分割します。内側の正方形が描画される水平方向の範囲では、周囲の床を描くために2つのvisplaneが必要になります。

    Doom には visplane の数に静的な制限があり、その数を超えると「visplane オーバーフロー」が発生し、「visplane がもうありません!」または「visplane オーバーフロー (128 以上)」というエラーが表示され、ゲームは DOS に切り替わります。visplane の制限を発動させる最も簡単な方法は、大きなチェッカーボードの床パターンを作成することです。これにより、大量の visplane が生成されます。

    セグメントがレンダリングされると、セグメントの端から画面の垂直方向の端に向かって伸びるヴィスプレーンも追加されます。これらは既存のヴィスプレーンに達するまで伸びます。この仕組み上、システムはセグメントがエンジン全体によって順番にレンダリングされるという事実に依存しています。つまり、より近いヴィスプレーンを最初に描画し、より遠いヴィスプレーンによって「切り取られる」ようにする必要があります。もし止められなければ、前述のように、床や天井は画面の端まで「滲み出し」ます。最終的に、ヴィスプレーンは特定のテクスチャを描画するための画面上の特定の領域の「マップ」を形成します。

    ヴィスプレーンは基本的に垂直方向の「ストリップ」で構成されていますが、実際の低レベルレンダリングはテクスチャの水平方向の「スパン」の形で実行されます。すべてのヴィスプレーンが構築された後、それらはスパンに変換され、画面にレンダリングされます。これはトレードオフの関係にあるようです。ヴィスプレーンを垂直方向のストリップとして構築する方が簡単ですが、床と天井のテクスチャの表示の性質上、水平方向のストリップとして描画する方が簡単です。

    物(スプライト)

    レベル内の各セクターには、そのセクターに格納されている物のリンクリストがあります。各セクターが描画されると、スプライトは描画対象のスプライトリストに配置されます。視野内にない場合は無視されます

    スプライトのエッジは、以前に描画されたセグメントのリストをチェックすることでクリッピングされます。Doomのスプライト壁と同じ列ベースの形式で保存されており、これもレンダラーにとって便利です。壁の描画に使用される関数は、スプライトの描画にも使用されます。

    サブセクターは順序が保証されていますが、その中のスプライトは順序が保証されていません。Doom描画するスプライトのリスト(「vissprites」)を保存し、レンダリング前にリストをソートします。遠くのスプライトは近くのスプライトよりも先に描画されます。これにより多少のオーバードローが発生しますが、通常は無視できる程度です。

    最後に、透明なバーなどに使用される、両面ラインの中央テクスチャについての問題があります。これらのテクスチャは、レンダリング処理の最後に、他の壁ではなくスプライトと混合されて描画されます。

    を使用したゲームドゥームエンジン

    Doomエンジンは古典的な一人称視点シューティングゲームDoomに搭載されたことでその名声を獲得し、他のいくつかのゲームにも使用されました。通常、 Doomエンジンを使用したゲームの「ビッグ4」は、DoomHereticHexen: Beyond Heretic、 Strife: Quest for the Sigil考えられています

    ゲームは直接ドゥームエンジン

    タイトル開発元
    1993ドゥームidソフトウェア
    1994Doom II: Hell on Earth
    ヘレティックレイヴン・ソフトウェア
    1995ヘクセン:ヘレティックを超えてレイヴン・ソフトウェア
    1996ファイナルドゥームチームTNT
    ヘレティック:蛇乗りの影レイヴン・ソフトウェア
    ヘクセン:闇の城塞の死王
    ストライフ:シジルの探求ローグ・エンターテインメント

    〜に基づいたゲームドゥームまたはドゥームIIコード

    1990年代には少数の開発者がDoom完全版を配布するライセンスを取得し、1997年のソースコード公開以降、フリーウェアファンゲーム、商用タイトルなど、数多くのスタンドアロンタイトルがこのエンジンで制作されました[14]

    タイトル開発元
    ADコップエレクトロニックミュージックアンドアニメーショングラフィックス株式会社
    1996キリングタイム(PC)ロジックウェア
    チェックスクエストデジタルカフェ
    マーズ3Dエンジンテクノロジー株式会社
    1997ドゥーム64サンディエゴ・ミッドウェイ・スタジオ
    チェックス・クエスト2:フレモイドがチェックストロポリスを占拠デジタルカフェ
    HacXバンジョーソフトウェア
    19983Dヒーロー

    TAO

    エンジンテクノロジー株式会社
    1999バットマン ドゥーム[15]ACEチーム
    2000ソニックロボブラスト2ソニックチームジュニア
    2003フリードゥームフリードゥームチーム
    2008チェックス・クエスト3チャールズ・ヤコビ
    ブラスフェマーブラスフェマーチーム
    アクションドゥーム2:アーバンブロール[16]スキューバ・スティーブ
    2009ハーモニー[17]トーマス・ファン・デル・フェルデン
    2014スクエアの大冒険[18]ビッグブリックゲームズ
    2016ブレイド・オブ・アゴニー[19]ダニエル・ギマー
    2017ウールボールの台頭[20]MSPaintR0cks
    2018REKKR [21]モッキンバード・ソフトワークス
    アニー[22]セルジュ・Jkn
    アッシュ[23]ヴォストヨク
    トータル・カオス[24]ワダホリック
    2019ホーカス・ポーカス・ドゥーム[25]荒廃
    ヘドン[26]Zan_HedonDev
    神殿[27]スカムヘッド
    2020プロジェクト・オシリス[28]アークトゥルスデラックス
    2021悪魔城ドラキュラ サイモンズ・デスティニー[29]バタンディ
    ヴォミトレウム[30]スカムヘッド
    2022死霊術の手[31]HONチーム
    カントリーサイド[32]トレンチワーク
    プロジェクト・アブセンシア[33]ワッフルアイアンスタジオ
    私は咲夜:東方FPSゲーム[要出典]シグヤード・チーム
    2023サプリス[34]メクワークス
    冒険心あふれる[35]ピクセルフォックス
    終末的な雰囲気[36]アマニト・コンピューティング
    2024ハンズ・オブ・ネクロマンシー2 [37]HONチーム
    サンセットを超えて[38]メタコープ / ベイパーウェア
    セラコ[39]オルタード・オービット・スタジオ
    ボローヘレン[40]4キューブゲーム
    2025マラ・ペタカ[41]サンディティオ・バユ、ヘルフォージ・スタジオ
    モータ[42]スカムヘッド、オシオル
    ウェイン船長[43]Ciaran Games LLC、Silver Lining Interactive

    参照

    注記

    • GLノード仕様
    • DoomとDoom2を編集するためのユーティリティ
    • Fabien SanglardによるDoomエンジンコードレビュー

    参考文献

    1. ^ 「Doom ソースコード、GNU GPL 準拠」gamers.org。2023年5月31日時点のオリジナルよりアーカイブ
    2. ^ “Doom3do/LICENSE at master · Olde-Skuul/Doom3do”. GitHub . 2022年12月17日. 2022年2月19日時点のオリジナルよりアーカイブ2019年2月14日閲覧。
    3. ^ “NeXT Computers - Company - Computing History”. www.computinghistory.org.uk . 2022年3月29日時点のオリジナルよりアーカイブ。 2022年3月29日閲覧
    4. ^ スタッフ (1997年12月29日). 「Doom II Source Available」. PC Gamer US . 1998年2月18日時点のオリジナルよりアーカイブ2019年11月20日閲覧。
    5. ^ https://web.archive.org/web/*/ftp://ftp.idsoftware.com/idstuff/source/* 「FTPリンク」。ftp.idsoftware.com。2015年12月2日時点のオリジナルよりアーカイブ。
    6. ^ “Doom ソースコード(GNU GPL ライセンス) - Doomworld /idgames データベース フロントエンド”. 2021年3月28日時点のオリジナルよりアーカイブ。 2021年3月28日閲覧
    7. ^ Doomのソースコードは3ddownloads.comからアーカイブされています。2004年2月24日、Wayback Machineで公開されました。1997年にリリースされ、現在はGNU GPL v2以降で提供されています。
    8. ^ “id Tech 1 (Concept)”. Giant Bomb . 2019年2月15日時点のオリジナルよりアーカイブ。 2019年2月14日閲覧
    9. ^ Schuytema, Paul C. (1994年8月). 「The Lighter Side Of Doom」. Computer Gaming World . pp. 140, 142. 2018年1月2日時点のオリジナルよりアーカイブ。 2019年2月14日閲覧
    10. ^ Abrash, Michael. 「Quakeの3Dエンジン:全体像」 . 2012年8月22日閲覧
    11. ^ Apted, Andrew. 「GLノードの仕様」。2012年9月2日時点のオリジナルよりアーカイブ。 2012年8月22日閲覧
    12. ^ Sanglard, Fabien. 「Doomエンジンコードレビュー」。2012年9月3日時点のオリジナルよりアーカイブ。 2012年8月23日閲覧
    13. ^ スライムトレイル - The Doom Wiki
    14. ^ Tarason, Dominic (2019年4月1日). 「Modder Superior: The many free descendants of Doom」. Rock Paper Shotgun . 2023年8月6日時点のオリジナルよりアーカイブ。 2024年7月14日閲覧
    15. ^ 「ACE Teamの兄弟たちは成長し、振り返ることはない」。NME 2023年5月3日。多くの開発者と同様に、彼らのスキルをDoomとQuakeエンジンに活かしたのは、90年代に台頭してきたFPS MODシーンでした。彼らの最も野心的なプロジェクトは、Doom IIの完全コンバージョンであるBatman Doomで、エイドリアン・カーマックの地獄絵図をゴッサム・シティに変貌させ、ペンギン、ジョーカー、そして多くのバットマンの凶悪犯を手描きのピクセルアートで表現しました。アンドレスは「私たちがゲームを開発できたのは、id Softwareのようなチームのおかげです」と皮肉を込めて語ります。
    16. ^ Yu, Derek (2008年1月9日). 「Action Doom 2: Urban Brawl」. tigsource . 2008年1月9日閲覧
    17. ^ Gillen, Kieron (2009年11月18日). 「Harmony in My Head: Harmony」. Rock Paper Shotgun . 2023年2月23日時点のオリジナルよりアーカイブ。 2023年2月22日閲覧
    18. ^ Dawe, Liam (2018年4月19日). 「『スクウェア・エニックスの冒険』は、無料で楽しめるレトロFPSで、第2話も配信中」GamingOnLinux . 2023年2月19日閲覧
    19. ^ Smith, Adam (2016年8月3日). 「Blade Of Agonyは素晴らしい『WolfenDoom』Modだ」rockpapershotgun . 2016年8月3日閲覧
    20. ^ Tarason, Dominic (2018年1月7日). 「Shadow & Rise Of The Wool Ball turn Wolfenstein cute」. Rock Paper Shotgun . 2024年7月15日時点のオリジナルよりアーカイブ。 2024年7月14日閲覧
    21. ^ Tsiro, Rania (2018年7月12日). 「DoomguyはRekkrゲームで今やある種のバイキング」VGR . 2024年7月15日時点のオリジナルよりアーカイブ。 2024年7月14日閲覧
    22. ^ Glagowski, Peter (2018年8月17日). 「Doom 2 mod Annie rises after 12 year development period」. destructoid . 2018年8月17日閲覧。
    23. ^ Tarason, Dominic (2018年9月24日). 「Doomコンバージョン版『Ashes 2063』で、80年代の終末的な荒地に立ち向かえ」rockpapershotgun . 2021年6月17日時点のオリジナルよりアーカイブ。 2018年9月24日閲覧
    24. ^ Dawe, Liam (2018年11月5日). 「Total ChaosはDoom 2の印象的で恐ろしい完全コンバージョンであり、サバイバルホラー体験を提供します」gamingonlinux . 2018年11月5日閲覧
    25. ^ Tarason, Dominic (2019年1月14日). 「Hocus Pocus Doom が Apogee の DOS プラットフォームゲームを三次元に引きずり込む」rockpapershotgun . 2019年1月14日閲覧
    26. ^ Digre, Alyxx (2019年5月16日). 「Hedon – PCゲームレビュー」. VGR . 2024年7月15日時点のオリジナルよりアーカイブ。 2024年7月14日閲覧
    27. ^ Bolding, Jonathan (2019年12月27日). 「Doom 2 mod Shrineで宇宙の恐怖をぶち壊せ」. pcgamesn . 2019年12月27日閲覧
    28. ^ Papadopoulos, John (2020年3月16日). 「GZDoomでAlien Breed 3Dのリメイク版が作られました。今すぐダウンロードできます」. DSOGaming . 2024年6月22日閲覧
    29. ^ Tarason, Dominic (2021年6月27日). 「Castlevania: Simon's DestinyはDoomのMODとしては素晴らしい」. rockpapershotgun . 2021年6月27日閲覧
    30. ^ Glagowski, Peter (2021年8月11日). 「Vomitoreum Review」. Tech Raptor . 2024年7月15日時点のオリジナルよりアーカイブ。 2024年7月14日閲覧
    31. ^ Dawe, Liam (2022年5月22日). 「GZDoom搭載ダークファンタジーFPS『Hands of Necromancy』が発売開始」GamingOnLinux . 2024年7月15日閲覧
    32. ^ Werner, Adrian (2022年4月22日). 「CountryCide - Doom 2向け素晴らしいダークMODの新バージョン」. gamepressure . 2022年4月22日閲覧
    33. ^ 「プロジェクト・アブセンティア」. 2022年10月30日.
    34. ^ Chalk, Andy (2023年8月5日). 「SuppliceはDoomモッダーによって制作された新しいレトロFPSで、まさに昔ながらのDoomのような感覚を味わえます」. PCGamer . 2023年6月5日閲覧
    35. ^ Zwiezen, Zack (2023年9月29日). 「新しいDoom Modは基本的に素晴らしいインディ・ジョーンズゲームだ」. kotaku . 2023年9月29日閲覧
    36. ^ Tamaster, Tamaster (2023年3月21日). 「Apocalyptic Vibes – An Immersive Journey Through a Faded-out, Post-Nuclear Earth!」indie-hive . 2023年3月21日閲覧
    37. ^ McHugh, Alex (2024年9月17日). 「新作レトロFPS『Hands of Necromancy 2』は『Heretic』からインスピレーションを得ている」. pcgamesn . 2024年9月17日閲覧
    38. ^ Smith, Mova (2023年12月14日). 「レトロFPS『Beyond Sunset』は、それ以前の素晴らしいメガワッドの要素を巧みに融合させたサイバーパンクな作品だ」. pcgamer . 2023年12月14日閲覧
    39. ^ Zwiezen, Zack (2024年5月31日). 「Doomの技術を使って作られた新しいFPSは、ほとんどのAAAシューターよりも優れている」Kotaku . 2024年7月15日時点のオリジナルよりアーカイブ。 2024年7月14日閲覧
    40. ^ Kotaky, Kotaku (2024年11月25日). 「Borrowhelenのスクリーンショットとビデオ - Kotaku」. Kotaku . 2024年11月25日閲覧。
    41. ^ Wolens, Joshua (2025年10月6日). 「数十年前のDoomエンジンで作られたこの2025年のシューターは、美しく、楽しく、そして非常にタフだ」. pcgamer . 2025年10月6日閲覧
    42. ^ Litchfield, Ted (2025年10月14日). 「DoomエンジンでDemon's Soulsのような、私が最も期待していたシューティングゲームの1つが、ついにリリース日が間近に迫っています」. pcgamer . 2025年10月3日閲覧。
    43. ^ Yarwood, Jack (2025年11月25日). 「Captain Wayneは、ショットガンを片手に怒り狂った船乗りを描いた新作レトロFPS」Time Extension . 2025年11月27日閲覧
    • Doom WikiのDoomエンジン
    • Doom WikiのDoomレンダリングエンジン
    • Doomエンジンのゲーム一覧
    • Doomエンジンのソースコード
    Retrieved from "https://en.wikipedia.org/w/index.php?title=Doom_engine&oldid=1328856013"
    Original text
    Rate this translation
    Your feedback will be used to help improve Google Translate