Die Doom-Engine, manchmal auch ID Tech 1 genannt, ist der Computercode hinter dem Videospiel Doom. Er wird auch von mehreren anderen Spielen verwendet, darunter Doom 2 (aber nicht Doom 3, das seinen eigenen Motor hat). Stark modifizierte Versionen der Doom-Engine werden in Heretic, Hexen und Strife verwendet.
Die Doom-Engine verwendet eine Technik namens binäre Raumpartitionierung, um 3D-Ebenen so darzustellen, dass ein Computer sie schnell verarbeiten kann. Sie ist größtenteils in C geschrieben. Der Quellcode wurde unter der GNU General Public License frei veröffentlicht. Viele Doom-Fans haben ihre eigenen modifizierten Versionen erstellt, die Quelltext-Ports genannt werden. Quelltext-Portierungen fügen oft neue Funktionen hinzu und beheben Probleme in der Original-Engine. Beliebte Quelltext-Portierungen sind Boom, PrBoom, PrBoom+, Zdoom und Chocolate Doom.
Die Doom-Engine stellt Ebenen intern durch Strukturen dar, die Linedefs, Sidedefs, Sektoren, Verticies und Dinge (d.h. Monster, Gegenstände, Dekorationen usw.) genannt werden. Die Doom-Engine liest Ebenen und andere Daten aus einer Datei namens WAD.
Die Doom-Engine rendert die Ebenen vollständig auf der CPU, nicht auf der Grafikkarte, da die meisten Grafikkarten zu dieser Zeit (1993) noch nicht über 3D-Beschleunigung verfügten. Dies erforderte sehr effiziente Algorithmen, damit das Spiel auf den langsamen Computern der damaligen Zeit funktionierte.
Die Doom-Engine wurde für mehr Computertypen verfügbar gemacht als jede andere Ego-Shooter-Engine. Für einen Programmierer ist es einfach, sie auf einem neuen Computertyp zum Laufen zu bringen, da sie in C geschrieben ist und sehr wenig Systemressourcen verbraucht, so dass sie auf Handheld-Computern und Computern ohne 3D-Beschleuniger läuft.