Omエンジンは
Doomエンジンは、ID Tech 1と呼ばれることもありますが、ビデオゲーム「Doom」の背後にあるコンピュータコードです。Doom 2 を含む他のゲームでも使用されています(独自のエンジンを持つ Doom 3 では使用されていません)。Doomエンジンの高度に修正されたバージョンは、Heretic、Hexen、Strifeで使用されています。
Doomエンジンは、コンピュータが素早く処理できるように3Dレベルを表現するために、バイナリ空間分割と呼ばれる技術を使用しています。ソースコードはGNU General Public Licenseの下でフリーでリリースされています。多くのドゥームファンがソースポートと呼ばれる独自の修正版を作っています。ソース・ポートはしばしば新しい機能を追加したり、オリジナルのエンジンの問題を修正したりします。人気のあるソースポートには、Boom, PrBoom, PrBoom+, Zdoom, Chocolate Doomがあります。
Doomエンジンは、linedefs、sidedefs、sector、verticies、things(モンスター、アイテム、装飾などを意味する)と呼ばれる構造体を使用してレベルを内部的に表現します。DoomエンジンはWADと呼ばれるファイルからレベルやその他のデータを読み込みます。
当時(1993年)のほとんどのビデオカードには3Dアクセラレーションが搭載されていなかったため、ドゥームエンジンはビデオカードではなく、すべてのレベルをCPUでレンダリングします。このため、当時の遅いコンピュータでゲームを動作させるためには、非常に効率的なアルゴリズムが必要でした。
Doom エンジンは、他のどのファーストパーソンシューターエンジンよりも多くの種類のコンピュータで利用できるようになっています。C言語で書かれており、システムリソースをほとんど使用しないため、プログラマーが新しいタイプのコンピュータで動作させるのは簡単で、ハンドヘルドコンピュータや3Dアクセラレータのないコンピュータでも動作します。
質問と回答
Q:ドゥームエンジンとは何ですか?
A:ドゥームエンジンはビデオゲーム「ドゥーム」を支えるコンピュータコードです。Doom 2を含む他のゲームでも使用されています(独自のエンジンを持つDoom 3は含まれません)。ヘレティック、ヘクセン、ストライフでは、ドゥームエンジンの大幅な改良版が使用されています。
Q:Doomエンジンはどのように3Dレベルを表現するのですか?
A:『Doom』エンジンは、バイナリー・スペース・パーティショニングという技術を使って、コンピュータが高速に処理できる方法で3Dレベルを表現しています。
Q:Doomエンジンはどのような言語で書かれているのですか?
A:ドゥームエンジンは主にC言語で書かれています。
Q:『Doom Engine』のオープンソースバージョンはありますか?
A: はい、ドゥームエンジンのソースコードはGNU General Public Licenseの下で無償で公開されています。また、多くのファンがソースポートという独自の修正版を作っています。
Q:オリジナルDoom Engineのソースポートにはどのようなものがありますか?
A: Boom、PrBoom、PrBoom+、Zdoom、Chocolate Doomなどのソースポートが有名です。
Q:ドゥームエンジンは内部でどのような構造でレベルを表現しているのですか?
A: ドゥームエンジンは内部でlinedefs、sidedefs、sector、verticies、things(モンスター、アイテム装飾などの意味)と呼ばれる構造体を使用してレベルを表現します。
Q:ファイルからのデータ読み込みはどのように行われるのですか?
A:ドゥームエンジンはWADと呼ばれるファイルからレベルなどのデータを読み取ります。