Doom PDF is a revolutionary port of the classic DOOM game that runs completely within a PDF document. Created by vk6, this innovative project transforms the iconic first-person shooter into ASCII art using PDF's JavaScript runtime. Built using a modified version of doomgeneric and compiled with Emscripten, it delivers a unique 6-color monochrome gaming experience that demonstrates the unexpected potential of PDF technology.
To play Doom PDF, open the PDF in a Chromium-based browser with PDFium engine. Use the classic DOOM controls: arrow keys for movement, 'Ctrl' to shoot, and 'Space' to open doors. The game renders in ASCII art, creating a unique retro aesthetic while maintaining the core DOOM gameplay. Navigate through familiar levels, fight demons, and experience the classic FPS action - all within a PDF document!
Doom PDF uses Emscripten-compiled C code running in PDF's JavaScript environment. It renders graphics by manipulating text fields with ASCII characters, creating a 6-color display, while capturing keyboard input for controls.
Doom PDF specifically requires Chromium-based browsers (like Google Chrome or Microsoft Edge) that use the PDFium engine. Other browsers or PDF viewers may not be compatible.
Yes, Doom PDF is open source. The complete source code is available on GitHub, allowing developers to study the implementation or contribute to the project.
Doom PDF was created as an experimental project inspired by PDF Tetris, pushing the boundaries of what's possible within a PDF document and demonstrating innovative uses of PDF technology.
The graphics are rendered using text fields for each row of pixels, displaying various ASCII characters to create a 6-color monochrome display. This innovative approach achieves a frame rate of around 80ms per frame.
While Doom PDF maintains core DOOM gameplay mechanics, it's adapted to work within PDF constraints. It features the original levels and basic gameplay elements, rendered in a unique ASCII art style.