Le favolose soluzioni tecniche dietro Prince of Persia
Prince of Persia

Lo scorso ottobre Prince of Persia ha compiuto trent'anni. L'epica del giovane coraggioso che ha affrontato centinaia di pericoli e ha sconfitto il malvagio Jaffar per salvare la principessa vive ancora nelle nostre menti, ma è altrettanto affascinante la storia dietro il suo sviluppo. Grazie a un mini documentario pubblicato da Ars Technica, oggi abbiamo lo stesso Jordan Mechner che rivela alcuni dettagli molto succosi su Prince of Persia, compresi i trucchi che ha dovuto applicare per superare i limiti di memoria dell'Apple II.

Le origini: da Karateka a Prince of Persia

La prima cosa che viene in mente a molte persone quando sentono parlare di Prince of Persia è la sua animazione. Jordan Mechner si è orientato verso la rotoscopia, ha vestito di bianco suo fratello David (che fondamentalmente ha riprodotto tutti i movimenti dell'eroe) e ha acquistato un digitalizzatore. Era il 1989, e sebbene Prince of Persia non abbia generato una grande esplosione commerciale negli Stati Uniti, il resto del mondo lo ha accolto a braccia aperte.

Prima di Prince of Persia, però, esisteva Karateka. Fino a quel punto, tutti i giochi realizzati da Mechner seguivano la stessa meccanica di un gioco arcade (tre vite, punteggio massimo, riprova), ma con Karateka ha deciso di raccontare una storia: il malvagio Akuma tiene prigioniera la principessa Mariko, e il nostro eroe deve salvarla distribuendo calci e pugni in tutte le direzioni. Ci sono cinque anni di differenza tra Karateka e Prince of Persia (uno è dell'84, l'altro dell'89), tuttavia entrambi sono nati sulla stessa piattaforma: l'Apple II.

Nel mini documentario pubblicato da Ars Technica nella sua eccellente serie «War Stories», lo stesso Mechner ammette che non è stato affatto semplice lavorare con l'Apple II. Considerato «il sistema numero 1» per giocare negli anni '80 (almeno negli Stati Uniti), le sue restrizioni hardware erano molto importanti. Il sistema audio era diversi gradini sotto altri computer, il video era limitato a quattro colori con una risoluzione di 280 x 192 pixel, e il totale di RAM disponibile ammontava a 48 kilobyte.

https://old.neoteo.com/el-codigo-fuente-de-prince-of-persia/

Ed è qui che entra in gioco la famosa rotoscopia. Tutti i tentativi di animare i suoi personaggi risultavano «duri» e deludenti, ma con l'aiuto del suo insegnante di karate ha potuto sviluppare le animazioni per Karateka. Avendo trovato una buona soluzione, Mechner ha cominciato a immaginare il suo gioco successivo e cita come principale fonte di ispirazione i primi dieci minuti de «I predatori dell'arca perduta» (senza dimenticare «Le mille e una notte» e «Il ladro di Bagdad»). A quel tempo, quando il personaggio di un gioco cadeva in un pozzo o in un tubo, era leggero come una piuma e sostanzialmente invulnerabile, ma lui voleva trasmettere l'idea del dolore: se il giocatore sbagliava il salto o cadeva in un luogo complicato, sarebbe finita male.

Ma Prince of Persia necessitava di un salto esponenziale in termini di quantità e qualità delle animazioni: ripetere quanto fatto in Karateka non sarebbe bastato. Jordan ha trovato la chiave nel VHS, che gli ha permesso di filmare suo fratello fotogramma per fotogramma. La conversione da video ad animazione ha richiesto una sorta di processo «analogico-a-analogico-a-digitale».

Prima ha catturato i fotogrammi (avanzando uno alla volta con il suo videoregistratore) usando una macchina fotografica da 35 millimetri puntata verso la TV con i video in una stanza buia. Poi ha usato ogni fotogramma come riferimento per creare versioni negative di suo fratello, evidenziandone i bordi con un pennarello Sharpie. Il tutto è stato processato con una fotocopiatrice, ottenendo così un personaggio bianco su uno sfondo nero molto ben definito. L'ultima fase è toccata al digitalizzatore, un componente aggiuntivo per l'Apple II che costava 599 dollari negli anni '80 (1.250 dollari corretti per l'inflazione). Furono settimane intere di lavoro, processando e convertendo singoli fotogrammi.

Le favolose soluzioni tecniche dietro Prince of Persia
Così Mechner ha creato le animazioni per Prince of Persia: un pennarello Sharpie, fotocopie e un lavoro certosino, un fotogramma alla volta

Tuttavia, ogni fotogramma equivale a memoria, e abbiamo già detto che l'Apple II non ne aveva poi troppa… 48 kilobyte. Inoltre, nuovi sistemi stavano per uscire sul mercato, e la sensazione che l'Apple II «stesse morendo» era sempre più tangibile. Un altro punto di conflitto era che Mechner aveva immaginato Prince of Persia come un gioco di sopravvivenza… ma risultava noioso. La soluzione? Aggiungere il combattimento, seguendo il suggerimento della sua collega Tomi Pierce, una delle fondatrici di Brøderbund.

Ma come aggiungi il combattimento quando non hai più memoria con cui lavorare? La risposta era nascosta nella funzione «Exclusive-OR»: se due bit sono uguali ottieni 0, se sono diversi ottieni 1. Utilizzando Exclusive-OR spostato di un bit e scrivendo il codice in soli cinque minuti, è nato «La Sombra», l'avversario di cui Prince of Persia aveva tanto bisogno. Per le guardie, Mechner è riuscito ad accedere a 12K extra nascosti nella scheda di memoria ausiliaria dell'Apple II, e ha ottenuto le animazioni dall'adattamento di «Robin Hood» del 1938, con Errol Flynn.

Il 3 ottobre 1989 Prince of Persia arrivò sugli scaffali, e il mondo dei videogiochi aveva gettato la spugna con l'Apple II, cercando sistemi più ricchi di risorse. Ma i porting si sono occupati di salvare questo favoloso gioco. I limiti di memoria sono spariti, dando vita ad animazioni ancora più fluide, sfondi eccellenti, colori vivaci e un'avventura appassionante dall'inizio alla fine. Ti piacerebbe rigiocarlo? È disponibile nel negozio di Windows, gratis!

https://old.neoteo.com/el-primer-juego-de-pc-comercializado-en-cd/