Η μηχανή Doom, που μερικές φορές ονομάζεται ID Tech 1, είναι ο κώδικας του υπολογιστή πίσω από το βιντεοπαιχνίδι Doom. Χρησιμοποιείται επίσης από διάφορα άλλα παιχνίδια, συμπεριλαμβανομένου του Doom 2 (αλλά όχι του Doom 3, το οποίο έχει τη δική του μηχανή). Πολύ τροποποιημένες εκδόσεις της μηχανής Doom χρησιμοποιούνται στα Heretic, Hexen και Strife.

Η μηχανή του Doom χρησιμοποιεί μια τεχνική που ονομάζεται δυαδική κατάτμηση χώρου για την αναπαράσταση τρισδιάστατων επιπέδων με τρόπο που ο υπολογιστής μπορεί να επεξεργαστεί γρήγορα. Είναι γραμμένη κυρίως σε C. Ο πηγαίος κώδικας έχει κυκλοφορήσει δωρεάν υπό τη Γενική Άδεια Δημόσιας Χρήσης GNU. Πολλοί οπαδοί του Doom έχουν φτιάξει τις δικές τους τροποποιημένες εκδόσεις που ονομάζονται source ports. Τα source ports συχνά προσθέτουν νέα χαρακτηριστικά και διορθώνουν προβλήματα της αρχικής μηχανής. Δημοφιλή source ports περιλαμβάνουν τα Boom, PrBoom, PrBoom+, Zdoom και Chocolate Doom.

Η μηχανή Doom αναπαριστά τα επίπεδα εσωτερικά χρησιμοποιώντας δομές που ονομάζονται linedefs, sidedefs, τομείς, verticies και things (δηλαδή τέρατα, αντικείμενα, διακοσμητικά στοιχεία κ.λπ.). Η μηχανή Doom διαβάζει τα επίπεδα και άλλα δεδομένα από ένα αρχείο που ονομάζεται WAD.

Η μηχανή Doom αποδίδει τα επίπεδα εξ ολοκλήρου στην CPU, όχι στην κάρτα γραφικών, καθώς οι περισσότερες κάρτες γραφικών εκείνη την εποχή (1993) δεν διέθεταν επιτάχυνση 3D. Αυτό απαιτούσε πολύ αποδοτικούς αλγορίθμους για να λειτουργήσει το παιχνίδι στους αργούς υπολογιστές της εποχής.

Η μηχανή Doom έχει γίνει διαθέσιμη για περισσότερους τύπους υπολογιστών από οποιαδήποτε άλλη μηχανή first person shooter. Είναι εύκολο για έναν προγραμματιστή να την κάνει να λειτουργήσει σε έναν νέο τύπο υπολογιστή επειδή είναι γραμμένη σε C και χρησιμοποιεί πολύ λίγους πόρους συστήματος, επιτρέποντάς της να τρέχει σε φορητούς υπολογιστές και υπολογιστές χωρίς επιταχυντή 3D.