DoomPaint: sì, adesso si può giocare a DooM direttamente nel software di grafica
Mark Russinovich, CTO di Microsoft Azure, ha realizzato DoomPaint, un progetto che utilizza Microsoft Paint come display per Doom. Il gioco gira tramite ViZDoom, mentre ogni fotogramma viene trasferito attraverso la clipboard di Windows. L'esperimento raggiunge fino a 35 FPS come per l'originale del 1993
di Vittorio Rienzo pubblicata il 03 Agosto 2026, alle 18:23 nel canale VideogamesMicrosoftDooM
Microsoft Paint diventa un insolito display per Doom grazie a DoomPaint, un esperimento sviluppato da Mark Russinovich, CTO di Microsoft Azure e creatore della celebre suite Sysinternals, pubblicato su GitHub. Il progetto non rappresenta un port tradizionale del classico sparatutto di id Software: il motore di gioco resta completamente esterno all'applicazione, mentre Microsoft Paint riceve ogni fotogramma come una normale immagine incollata tramite la clipboard di Windows.
L'idea sfrutta la versione shareware originale di DOOM1.WAD insieme a ViZDoom, derivato di ZDoom nato per l'addestramento di sistemi di intelligenza artificiale. Il rendering, la simulazione, la gestione delle mappe, della fisica e dei nemici vengono elaborati da ViZDoom, mentre Paint visualizza soltanto il risultato finale. L'autore sottolinea infatti che Paint "non calcola nulla": l'applicazione svolge esclusivamente il ruolo di destinazione grafica. In sintesi, fa soltanto da telo su cui vengono proiettate le immagini per così dire.

Il trasferimento continuo delle immagini attraverso gli appunti rappresenta l'aspetto più interessante dell'intero progetto. La clipboard di Windows non nasce come canale video, ma per il trasferimento occasionale di dati tra applicazioni. DoomPaint riesce comunque a utilizzarla come collegamento grafico sincronizzato, con una frequenza che può raggiungere 35 fotogrammi al secondo, pari alla velocità originale prevista dal motore di Doom del 1993.
Per ottenere questo risultato, Russinovich non si è limitato a eseguire una sequenza di copia e incolla. Un approccio tradizionale avrebbe provocato infatti errori perché Paint elabora l'incollaggio in modo asincrono. Se il contenuto della clipboard viene sostituito troppo rapidamente, l'applicazione perde i dati ancora in lettura e restituisce il messaggio "Impossibile completare l'operazione".
La soluzione consiste nell'utilizzo della clipboard OLE. DoomPaint registra un oggetto che implementa l'interfaccia IDataObject e aggiorna direttamente i dati dell'immagine quando Paint richiede il contenuto tramite la chiamata GetData. Questo meccanismo mantiene validi i riferimenti durante la lettura e permette anche di sapere quando Paint ha effettivamente acquisito il fotogramma, evitando di inviare nuove immagini prima del momento opportuno.
Un'altra curiosità riguarda la gestione della cronologia dell'applicazione. Ogni immagine incollata viene trattata da Paint come una selezione mobile e, con l'arrivo del fotogramma successivo, l'operazione viene consolidata automaticamente. Di conseguenza, premendo CTRL+Z è possibile tornare ai fotogrammi precedenti della partita, sfruttando la normale funzione di annullamento del programma.
Anche l'input richiede un sistema dedicato. Poiché la finestra attiva rimane Paint, i comandi della tastiera potrebbero attivare menu oppure spostare la selezione invece di controllare Doom. Per questo motivo DoomPaint utilizza un hook di tastiera WH_KEYBOARD_LL, che intercetta i tasti destinati al gioco prima che raggiungano l'applicazione. I movimenti vengono affidati ai tasti W, A, S e D, mentre CTRL oppure F consentono di sparare, Spazio apre porte e attiva interruttori e MAIUSC abilita la corsa. Il tasto F rappresenta un'alternativa utile nei sistemi in cui CTRL viene intercettato da software come PowerToys, macchine virtuali o ambienti remoti.

Le prestazioni dipendono dalla risoluzione scelta. L'esecuzione a 320×200 pixel, identica a quella del Doom originale, permette di raggiungere fino a 35 FPS. Il progetto supporta anche 640×400 pixel, mentre la modalità 320×240 riproduce proporzioni più vicine ai monitor CRT dell'epoca. Oltre alla grafica, DoomPaint riproduce anche effetti sonori e musica tramite OpenAL.
Per eseguire DoomPaint basta un PC Windows con Python installato. Lo script di avvio crea automaticamente un ambiente virtuale, installa ViZDoom e le dipendenze necessarie, sostituisce la libreria OpenAL e apre Paint, che dovrà rimanere in primo piano durante tutta la sessione di gioco. Il pacchetto include già il file DOOM1.WAD shareware, quindi non è necessario possedere una copia commerciale del gioco per iniziare.
Distribuito con licenza MIT, DoomPaint rappresenta soprattutto una dimostrazione tecnica delle possibilità offerte dalle storiche API Win32 e OLE. L'esperimento mostra come sia possibile utilizzare componenti storici di Windows in modi completamente diversi rispetto allo scopo originale, trasformando la clipboard in un flusso video sincronizzato e Microsoft Paint in un insolito schermo per uno dei videogiochi più iconici della storia.










Hyundai Ioniq 9: dopo due settimane di test non avremmo voluto restituirla
LG UltraGear evo GM9: 27 pollici, 5K, Mini LED e Dual Mode
Motorola edge 70 Fusion FIFA World Cup 26 Edition: un ottimo smartphone per i fan del calcio
TV 55 pollici in offerta: Xiaomi 4K a 324€ o Philips Mini LED a 349€?
Robot per le piscine in offerta su Amazon: pulizia di fondo, pareti e linea d'acqua da 119€
Nessun downgrade a Vera e Rubin Ultra, solo ottimizzazione: NVIDIA risponde sulla riduzione della memoria
Ho costruito un agente IA locale dentro un mini PC. Cronaca di tre giorni passati a farlo funzionare
TOP 10 Amazon del weekend, si inizia col botto: crolla una e-bike a 588€, dashcam 99€, robot e super smartphone ai minimi
Google sta costruendo un data center da 15 miliardi di dollari in India, dove però l'acqua già manca
SSD NVMe 4TB in offerta: Acer Predator e Lexar ARES a 7.400 MB/s per PC e PS5
Robot aspirapolvere in offerta su Amazon: 30.000 Pa, lavaggio a caldo e stazioni OMNI da 299€
Musica e IA, la pacchia sta finendo: Suno lancia il watermarking audio per identificare le canzoni
Prezzo lampo e a tempo: crolla a 588,99€ la e-bike con batteria di 15Ah e autonomia da 100 km con motore da 250W
Oltre 1.500 miliardi di dollari: il mercato dei semiconduttori è diventato El Dorado
'Sorry, typo': l'IA cancella tutto il profilo utente e liquida il disastro con due parole
The Legend of Zelda sarà l'ultima apparizione di Sam Neil, storico attore di Jurassic Park scomparso a luglio
NVIDIA CMP 170 HX: il mining l'aveva abbondata, l'IA la resuscita e i prezzi schizzano oltre il 1000%









0 Commenti
Gli autori dei commenti, e non la redazione, sono responsabili dei contenuti da loro inseriti - infoDevi effettuare il login per poter commentare
Se non sei ancora registrato, puoi farlo attraverso questo form.
Se sei già registrato e loggato nel sito, puoi inserire il tuo commento.
Si tenga presente quanto letto nel regolamento, nel rispetto del "quieto vivere".