Ogni tanto esce un porting di Doom capace di stupire, e il nuovo DoomPaint arriva con una particolarità unica. A svilupparlo è Mark Russinovich, Chief Technology Officer di Microsoft Azure, che ha deciso di usare Microsoft Paint come schermo per il celebre sparatutto del 1993. Il risultato è un progetto open source che fa girare il vero motore di Doom con il file DOOM1.WAD originale, ma senza una finestra dedicata. Invece, ogni frame viene copiato negli appunti di Windows e incollato nella tela di Paint, come se fosse un documento di testo in modifica.
Il progetto, chiamato DoomPaint, mostra come un uso creativo delle API di sistema possa trasformare un semplice programma di disegno in un dispositivo di output per un videogioco. Russinovich ha spiegato sul repository GitHub che il motore è ViZDoom, una versione headless del classico id Software, e che per le missioni non incluse nella shareware vengono usati i WAD con licenza BSD di Freedoom. Il tutto gira in modo silenzioso, ma i giocatori possono vedere l'azione direttamente nella finestra di Paint.
Sponsored Protocol
Un meccanismo basato sugli appunti di Windows
La vera magia di DoomPaint sta nel suo funzionamento. Il motore di gioco viene eseguito senza rendering video e produce ogni singolo frame in modo nascosto. Quel frame viene poi posizionato negli appunti di Windows e incollato nella tela di Paint come una modifica reale del documento. Questo sistema, che sfrutta il meccanismo OLE del clipboard, permette al gioco di raggiungere una fluidità sorprendente, fino a 35 fotogrammi al secondo. Non è il livello di un PC moderno, ma per un titolo degli anni Novanta è un risultato più che dignitoso.
Russinovich ha aggiunto che la bassa frequenza di fotogrammi fa parte del fascino del progetto. In certe situazioni il gioco può scendere a velocità paragonabili a quelle di un foglio di calcolo, ma questo non rende l'esperienza meno divertente. L'autore ha reso disponibili sul sito GitHub tutti i file, le risorse e le istruzioni necessarie per provare DoomPaint sul proprio computer. A seconda della macchina, si può arrivare a giocare alla risoluzione di 640 per 400 pixel, sempre a 35 FPS, con tanto di effetti sonori e musica.
Sponsored Protocol
Un omaggio alla storia dell'informatica
Non è la prima volta che Doom viene eseguito su dispositivi improbabili, ma la scelta di usare Paint ha un significato speciale. In fondo al file README, Russinovich scherza dicendo che Paint mostra il gioco ma non lo calcola. Paint non calcola nulla. Paint non ha mai calcolato nulla. È proprio questo il gioco. Il riferimento al modo in cui Paint veniva storicamente considerato un'applicazione semplice e poco potente rende il progetto ancora più affascinante.
Russinovich lavora in Microsoft dal 2006 e ha trasformato Sysinternals in uno strumento fondamentale per la diagnostica di Windows. Più di recente ha contribuito all'architettura, alla sicurezza e all'affidabilità di Azure. Nell'ultimo anno è anche diventato una voce spesso ascoltata sui problemi di Windows 11. Che abbia trovato il tempo per un progetto come DoomPaint sorprende, ma dimostra quanto la passione per la programmazione possa andare oltre gli impegni ufficiali.
Sponsored Protocol
Un futuro ancora ricco di sorprese
Mentre l'industria guarda ai prossimi smartphone e alle grandi novità come il Pixel 11 o l'iPhone 2028, progetti come DoomPaint ricordano che la tecnologia è anche sperimentazione e divertimento. Il codice sorgente è rilasciato sotto licenza MIT, quindi chiunque può studiarlo, modificarlo e creare la propria versione. Una dimostrazione che, a volte, le idee più brillanti nascono da una combinazione inaspettata di strumenti vecchi e nuovi.
Per chi vuole approfondire, su Wikipedia è disponibile una pagina dedicata a Doom che racconta la storia del gioco più porting della storia. Un titolo che continua a sorprendere anche dopo più di trent'anni.