Doom now "runs" in Microsoft Paint thanks to a wildly inventive clipboard trick
Called DoomPaint, Russinovich's creation doesn't literally execute Doom inside Microsoft's drawing app. Instead, ViZDoom, a ZDoom-based platform designed primarily for AI research, runs the engine and renders it headlessly. It loads the genuine shareware DOOM1.WAD for the first episode, while maps not included with that release use the BSD-licensed Freedoom... Read Entire Article
A Microsoft employee named Mark Russinovich has created an amusing project that turns Microsoft Paint into a monitor for running the classic video game Doom. This unconventional setup is called DoomPaint. The original Doom game is displayed on Paint, which acts as a screen for the iconic first-person shooter.
DoomPaint doesn't run Doom directly within Paint; instead, it uses a platform called ViZDoom, specifically designed for artificial intelligence research. ViZDoom runs the Doom engine and renders the visuals without a graphical user interface. It loads the original Doom shareware game data, with additional maps using a public domain adaptation called Freedoom.
When DoomPaint runs, it captures every rendered frame and puts it on the Windows clipboard as a bitmap. From there, Paint pastes the image onto its canvas. Keyboard controls for movement, shooting, and interacting with the game are captured through a low-level keyboard hook, ensuring they don't interfere with the drawing functions of Paint.
For this project to function smoothly, Russinovich had to overcome issues with the clipboard, ensuring every frame was properly sent to Paint without overwriting or causing delays. The performance of DoomPaint varies depending on the PC's capabilities and the chosen resolution, which can go from the game's original 320 x 200 pixels up to 640 x 480 pixels.
The user interface is straightforward. By pressing Ctrl+Z, the user can go back through the frames, and saving the file generates a PNG screenshot of the current Doom scene. Additionally, the original music from Doom Episode One is converted to MIDI on-the-fly, along with game sounds supplied by the engine.
Though Paint doesn't compute anything, it handles the display of Doom's rendered frames. Russinovich explains that the joke is in Paint's lack of computational abilities. DoomPaint is available on GitHub under an MIT license, with a batch file that sets up a Python environment and installs necessary dependencies. However, due to its simple rendering method, the performance may not match the high standards of modern gaming.
Written by urgent.news from TechSpot's reporting — not their text. Machine-written — may contain errors; check the original before relying on it.
This story
This is one outlet's version. Read the fullest account.
- Azure CTO Pastes Doom Into Paint One Frame At a Time tech.slashdot.org
- Microsoft Paint used as a 'monitor' to run Doom at up to 35 fps, project released by firm's Azure CTO — runs actual Doom engine and loads real shareware DOOM1.WAD tomshardware.com
- Azure CTO pastes Doom into Paint one frame at a time theregister.com
