C'è voluto poco: dopo Tetris, anche Doom gira nei file PDF!

19 hours ago 35

Ebbene, proprio come previsto, DOOM è arrivato a girare anche nei file PDF: l’impresa è stata compiuta dallo sviluppatore noto su GitHub come ading2210, chiaramente ispirato da quanto fatto con Tetris appena qualche giorno prima da un altro sviluppatore, Thomas Rinsma. Anche in questo caso il progetto, che è open-source, sfrutta la compatibilità dei PDF con JavaScript, per quanto limitata.

Chi ha provato “PDFTris” noterà chiaramente delle somiglianze con “DoomPDF”: in particolare, entrambi i giochi possono essere controllabili tramite tastiera usando lo stratagemma del campo di testo dedicato. Se per Tetris bastavano 60 kB, qui le dimensioni incrementano un bel po’: servono infatti 6,4 MB per contenere l’intero gioco. Sono quasi 5 floppy disk, mica bruscolini!

Tetris gira in... un PDF! Pesa 60 kB ed

Games 13 Gen

Come previsto dallo sviluppatore di PDFTris, DoomPDF è compatibile solo con un browser - o meglio, con un motore di rendering per browser, ossia Chromium, che è alla base di Chrome, Microsoft Edge e molti altri. Ogni motore implementa una propria versione del lettore di PDF; in particolare, ci sono limitazioni più o meno severe in base a quanti e quali comandi JavaScript sono stati resi compatibili, per questioni di sicurezza. Storicamente solo Adobe Acrobat supportava l’intero linguaggio di scripting.

Come potete vedere qui di seguito, anche Rinsma ha sviluppato la propria versione di PDFDoom, che però è compatibile solo con PDFium, che è il renderer usato da Android WebView per visualizzare questo tipo di documenti in altre applicazioni.

— Thomas Rinsma (@thomasrinsma) January 12, 2025

La sfida più complicata, stando all’autore del progetto, è stato l’output. Come mostrare a schermo tutti e 64.000 i pixel del motore originale (risoluzione di 320x200)? Un singolo campo di testo per pixel sarebbe stato impossibile. Lo sviluppatore ha optato quindi per un campo di testo a riga; ognuno di essi contiene vari caratteri ASCII, che garantiscono un risultato monocromatico a sei tonalità di grigio “sufficiente per rendere la schermata leggibile”, per usare le parole dell’autore. La fluidità non è certo da record (servono nientemeno che 80 ms per aggiornare ogni singolo frame), ma il titolo è tutto sommato giocabile - magari non a difficoltà Nightmare, ecco. Se volete cimentarvi, comunque, liberissimi di farlo!


Read Entire Article