Doom Engine
Doom Engine
Geschichte
Grafikengine, die für das Spiel Doom von id Software programmiert wurde. Die Umgebung basiert auf Sektoren, deren Linien beliebige Längen und Winkel haben können. Unterschiedliche Sektoren können unterschiedliche Höhen und Helligkeit haben. Depth Cueing für Tiefenwirkung und Parallaxing für Himmel und Hintergrundumgebungen sind ebenfalls Bestandteil der Engine. Gegner und Dekorationen sind Sprites. Mehrstöckige Architekturen sind nicht möglich, da Sektoren sich nicht überlappen dürfen, und es in jedem Sektor nur je einen Höhenwert für den Boden und die Decke gibt. Am 23.12.1997 hat id Software den Quellcode von Doom unter einer Non-Profit Lizenz veröffentlicht, am 3.10.1993 wurde der Quellcode erneut, diesmal unter der Gnu GPL veröffentlicht. Am 11.01.1999 veröffentlichte Raven Software die Quellcodes von Heretic und HeXen unter einer Non-Profit Lizenz. Am 4.08.2008 veröffentlichte Raven Software die Quellcodes von Heretic und Hexen erneut unter der Gnu GPL.
Screenshots
Doom/Doom II: Hell On Earth
Heretic
Hexen: Beyond Heretic
Strife: Trust no One
Hacx
Chex Quest
Foreverhood
Action Doom 2: Urban Brawl
Jurassic Rift
Bastards
Spiele
- Action Doom 2: Urban Brawl (Basiert auf der ZDoom Engine.)
- Bastards (Basiert auf dem PrBoom Port von Doom Classic für iOS.)
- Blasphemer (Freier Nachbau von Heretic)
- Chex Quest (Kostenloses Game.)
- Chex Quest 2 (Kostenloses Game.)
- Chex Quest 3 (Kostenloses Game, das auf der ZDoom Engine basiert.)
- Cruis'n Velocity (GBA)
- Dark Arena (GBA)
- Doom
- Doom II: Hell on Earth
- Doomsday II: Legions of Hell (Nachfolger von Doomsday: Hellraiser. Basierend auf den Ressourcen von Freedoom)
- Dooms Knight (Basierend auf den Ressourcen von Freedoom, die iOS Fassung basiert auf dem PrBoom Port von Doom Classic, die PC Fassung auf Risen3D)
- Foreverhood (Kostenloses Game, das auf der ZDoom Engine basiert.)
- Final Doom
- Freedoom (Freier Nachbau von Doom/DoomII, Hell On Earth und Doomsday: Hellraiser basieren auf dem PrBoom Port von Doom Classic für iOS.)
- Hacx (ehemals kommerzielle Doom II Mod)
- Harmony (Kostenloses Game, das auf der ZDoom Engine basiert.)
- Heretic
- HeXen: Beyond Heretic
- Jurassic Rift (Kostenloses Game, das auf der ZDoom Engine basiert.)
- Strife: Trust no One
Source Ports
Mit der ersten Veröffentlichung des Doom Quellcodes entstanden auch die ersten Sourceports. Der Quellcode den id Software veröffentlichte war der, der Linuxversion, bereinigt von Bernd Kreimeier. Auf dessen Basis entstanden zunächst einige Rückportierungen auf DOS und Windows, die jedoch oft auf Grund der Lizenz nicht Quelloffen waren. Später, als der Quellcode noch einmal unter der GNU PGL veröffentlicht wurde änderte sich dies. Unter den ersten Portierungen waren auch schon frühe Versuche Schnittstellen wie Direct X und OpenGL zu benutzen. Die wichtigsten Ports die sich herausbildeten waren DosDoom, eine Rückportierung des Linuxquellcodes mit dem Ziel eine offene Version der Engine für DOS zu schaffen. Diese Portierung blidete später auch die Grundlage für weitere Ports, beispielsweise Doom Legacy. Die zweite Portierung stammte von Team TNT, einem Moddingteam das vor allem durch die Veröffentlichung von Final Doom bekannt wurde. Dieses Team beherrbergte eigentlich zwei Teams, die "Mapper", die Levels erstellten, und die Programmierer, die den Quellcode bearbeiteten. Ziel ihrer Portierung war es vor allem noch bestehende Bugs auszumerzen und Limitierungen - wie den berüchtigten "Visplane Overflow, einer Begrenzung der gleichzeitig darstellbaren Sektoren, der bei Überschreitung zum Absturz des Spiels führte - zu entfernen. Diese Portierung war Boom. Auch auf dieser Portierung basieren einige weitere Ports.
Die wichtigsten Ports
Folgendes sind die wichtigsten, vor allem noch aktuellen Ports.
Boom
Team TNTs Portierung, bei der viele Bugs und Limitierungen entfernt sind. Es gibt mit PrBoom auch eine Windowsversion, und auch auf Linux wurde Boom portiert.
Chocolate Doom
Moderne Windowsportierung mit dem Ziel soweit kompatibel mit "Vanilla Doom" (Bezeichnung der Original id Software Version) zu sein.
CSDoom
CSDoom, kurz für Client Server Doom benutzte den Netzwerkcode aus QuakeWorld um eine stabile Client/Server Portierung zu schaffen, mit der erstmals auch dedizierte Server benutzt werden konnten, anstelle des ursprünglichen Peer to Peer Models, bei dem ein Client auch Server war, der wartete bis sich alle Teilnehmer verbunden hatten bis das Spiel begann. Mit CSDoom war es erstmals möglich während eines laufenden Spiels dazu zu kommen und das Spiel zu verlassen, ohne dass das Spiel dadurch beendet wurde.
Doom Legacy
Erste Hardware beschleunigte Portierung mit neuen Lichteffekten und lange Zeit beliebtester Multiplayer Port.
Doomsday
Hardwarebeschleunigte Portierung mit vielen neuen Features wie Skyboxen, Hi-Res Testuren, 3D Models und einem Scriptingsystem. Ausserdem kompatibel zu Heretic und HeXen: Beyond Heretic. Die Unterstützung der verschiedenen Spiele ist ausgelagert in sie Libraries jDoom, jHeretic und jHexen. Die Engine und jDoom stehen unter der GNU GPL, während die anderen beiden Libraries unter der Non Profit Lizenz von Raven Software stehen.
Auf Basis dieser Engine wurde auch der Fanmod zur Portierung von Doom64, der Version für das Nintendo64, unter dem Namen "Doom 64: Absolution" realisiert.
DosDoom (nicht mehr aktiv)
Erste Rückportierung des Quellcodes auf DOS und damit Basis weiterer Ports.
EDGE
EDGE (Enhanced Doom Gaming Engine) bietet vor allem eine Möglichkeit "Räume über Räume" darzustellen, ein Scripting System und mit GLEDGE einen OpenGL Renderer.
Eternity
Eigentlich entwickelt für eine TC von Team Eternity, nach dem diese jedoch gecancelt wurde wurde die Eternity Engine weiter entwickelt. Diese Engine hat einige Neuerungen, wie einer Konsole, ähnlch der von Quake und bietet eine Reihe von Features für Mods, z.B. Skyboxes, ein Scripting System und Eine Erweiterung des WAD Dateiformates.
GZDoom
GZDoom ist eine Portierung von ZDoom mit einer Reihe von Erweiterungen, unter anderem einem OpenGL Renderer, programmiert von Graf Zahl, für das GZ in GZDoom steht.
MBF
MBF (Marines Best Friend) ist eine Weiterentwicklung von Boom von einem ehemaligen Team TNT Mitglied, auf dessen Basis andere Portierungen entstanden, z.B. Eternity.
nxDoom/DoomDC
Portierung der Doom Engine auf SEGAs Dreamcast. Diese Portierung erkennt eigenständig Doom, The Ultimate Doom, Doom II - Hell On Earth und Final Doom. Über eine Textdatei ist es ausserdem möglich einige Mods einzubinden.
Odamex
Auf CSDoom basierender Client Server Port mit einer weiten Unterstützung unterschiedlicher Betriebssysteme. Odamex ist auch zu Boom kompatibel und bietet Unterstützung weiterer Erweiterungen.
Skulltag
Sehr verbreiteter Client Server Port, basierend auf ZDoom, der neben dem namensgebenden Skulltag, vergleichbar mit dem Spielmodus "Harvester" aus Quake III Team Arena, weitere Spielmodi wie Coop, Deathmatch und CTF.
Der Netzwerkcode in Skulltag wurde aus dem Quellcode von Quake II übernommen.
SvStrife
Portierung für Strife: Trust no One auf der Basis von PrBoom.
ZDaemon
Client Server Port, basierend auf CSDoom und ZDoom für Windows, und für Server auch Linux. Da ZDaemon auf einer äteren Version von ZDoom basiert ist dieser Port nicht zu 100% kompatibel mit aktuellen ZDoom/GZDoom Projekten.
ZDoom
Portierung mit voller Unterstützung für Heretic und HeXen: Beyond Heretic, durch die Integration des aus HeXen: Beyond Heretic stammenden ACS Scriptings, das selbst noch um Features erweitert wurde.
Webverweise
- Doom Sourcecode Release unter der Originallizenz (engl.)
- Doom Sourcecode Rerelease unter der Gnu GPL (engl.)
- Doom Classic Quellcode für iOS, basierend auf PRBoom (Direkter Download)
- Heretic & HeXen Sourcecode (Direkter Download)
- Webseite zum Heretic & Hexen Sourcecode Rerelase unter der Gnu GPL auf SourceForge.net
- Downloadseite der Heretic & Hexen Sourcecodes unter der Gnu GPL auf SourceForge.net
- Foreverhood Website (engl.)
- Webseite des Chex Quest 3 Entwicklers mit Download (engl.)
- Action DooM 2: Urban Brawl Webseite mit Download und Verkauf der erweiterten Fassung (engl.)
- Hacx Webseite mit Infos und Downlad (engl.)
- Jurassic Rift Website (engl.)
- Messageboard der Jurassic Rift Entwickler mit Downloads (engl.)
- Harmony Webseite mit Infos und Downlad (engl.)
- Freedoom Webseite mit Infos und Downlad (engl.)
- Blasphemer Webseite mit Infos und Downlad (engl.)
- Offizielle Boom Website von Team TNT (engl.)
- Chocolade Doom Website (engl.)
- CSDoom Website (engl.)
- Inoffizielle DosDoom Website (engl.)
- Doom Legacy Website (engl.)
- Doomsday Website (engl.)
- Offizielle Website von EDGE (engl.)
- Eternity Website (engl.)
- GZDoom Website (engl.)
- nxDoom/DoomDC Website (engl.)
- Odamex Website (engl.)
- Skulltag Website (engl.)
- Download von SvStrife (engl.)
- ZDaemon Website (engl.)
- ZDoom Website (engl.)
- Website von Doom 64: Absolution (engl.)
- Fansite zu Chex Quest (engl.)