Amiga vs. PC: la sfida dei colori - PARTE II
Un viaggio in due mondi dell'hardware grafico vintage

Nel I round di questa serie di articoli abbiamo analizzato come nel 1989-1990 il PC, macchina videoludica alle prime armi, avesse cercato di tener testa a un gioco sintesi dell'Amiga, It Came From the Desert. Esaminiamo ora invece un paio di produzioni multipiattaforma di qualche anno dopo. Facendolo, introdurremo due concetti chiave nel funzionamento degli antichi home computer e console, concetti alieni al mondo PC di quel periodo.

II ROUND: AMIGA RAFFINATO CONTRO PC CHE SI DIFENDE BENE

Nel 1992 ottenne un discreto successo il platform game Titus the Fox della Titus, in realtà rebranding di un titolo dell'anno precedente, tie-in dello show di un oscuro comico francese. Il gioco fu pubblicato su Amiga, PC, Atari ST e Amstrad CPC, ma le prime due versioni sono quelle che ci interessano qui. Confrontate questi due screenshot e provate a identificare le differenze prima di continuare a leggere (scusate, su PC non sono riuscito a centrare l'immagine).

Notiamo già che lo scarto tra le due versioni si avverte meno rispetto al trauma Amiga-EGA di It Came from the Desert. Dobbiamo ricorrere a un programma di grafica per sapere quanti colori siano presenti nelle due immagini. Nella schermata Amiga i colori sono 36, in quella PC (in modalità VGA a 16 colori) sono 15.
I 36 dell'Amiga ci fanno capire che la "soglia dei 32" di cui parlavo nel round precedente è stata superata: in altri momenti la versione Amiga di Titus the Fox sfiora i 50 colori su schermo! È evidente che qui la macchina venne usata in modo più raffinato. Vediamo come.

Di solito diversi conoscitori dell'Amiga a questo punto hanno la tentazione di tirare in ballo la modalità "Extra Half-Brite" a 64 colori. In realtà tale modalità era usata sull'Amiga molto meno di quanto si pensi, perché non consentiva di scegliere liberamente i 64 colori: l'EHB in pratica permetteva, una volta scelti 32 colori, di associarne altri 32 che fossero uguali ai 32 selezionati ma con la luminosità dimezzata. Per tale ragione i grafici tendenzialmente ricorrevano all'EHB nelle situazioni in cui si potessero creare ombreggiature elementari. Per il resto, l'EHB non era il massimo della vita, perché appesantiva il sistema senza portare a un vero salto di qualità estetica. E il nostro Titus? Usava la modalità EHB solo nella schermata del titolo, statica e quindi non impegnativa da gestire. Vi leggiamo 55 colori.

Ma il gioco in sè? Altro che Half-Brite! Non ci crederete mai: su Amiga girava a 16 colori. Ohibò. Non ne avevamo visti 36? La magica moltiplicazione delle sfumature veniva ottenuta con l'uso di due tecniche: l'uso di sprite hardware e lo scambio di palette. È iniziato il mal di testa? Coraggio: con qualche immagine vi renderete conto che sono princìpi davvero elementari, base peraltro di tantissime macchine da gioco d'antan. Per non ingolfare la pagina di immagini enormi, ritaglio dalle schermate solo le zone che c'interessano.
Cominciamo dallo sprite hardware. Prima ancora di definirlo, guardate cosa succede se diciamo all'emulatore Amiga di... ignorarlo! Ci siamo persi il Titus. Che fine ha fatto? Giochiamo al contrario: diciamo all'emulatore di disegnare solo lo sprite hardware ignorando tutto il resto della grafica. Ci ritroviamo in un mare di nero, dove solo soletto c'è proprio il nostro protagonista, nella stessa posizione che dovrebbe occupare nel gioco. Forse ci siete già arrivati. Uno sprite hardware era un elemento visivo totalmente indipendente dal resto dell'immagine; con "indipendente" intendo anche che i suoi colori (qui 11) non dovevano essere necessariamente quelli dello sfondo, anzi. Siccome gli sprite hardware appartenevano a un'altra fonte video, che veniva "fotomontata" su tutto il resto in tempo reale, era un'occasione buona per uscire dai limiti della palette preparata per il resto della grafica. Non era nemmeno obbligatorio usare gli sprite hardware per dei personaggi: potevano essere sprite il punteggio della status bar, le icone delle vite, un cursore del mouse, persino porzioni del fondale.
Prevenendo la confusione: ma che differenza c'era tra uno sprite hardware e un altro elemento, come per esempio i nemici di Titus? Non erano anche loro appoggiati sul fondale? In realtà no. Ai nostri occhi sembrano "appoggiati" anche quelli, ma la scheda grafica per visualizzarli sta sostituendo una parte del fondale con loro! Siccome nelle macchine antiche (C64 e NES compresi) quest'operazione pesava non poco, lo sprite hardware veniva in aiuto non andando mai a intaccare il disegno del fondale.
Ma perché – vi chiederete – a questo punto tutti gli elementi non erano resi con sprite hardware? Non sarebbe stato più comodo? Fino a un certo punto. Gli sprite hardware dovevano sottostare a tante regole: c'erano limiti restrittivi sul loro numero, sulla loro larghezza, sulla loro collocazione e sui colori utilizzabili in essi (su Amiga massimo 15). Per non complicare troppo il discorso: al programmatore e al grafico spettava decidere quando usarli e per quali elementi, a seconda delle esigenze del gioco.

Per le sfumature orizzontali del cielo e la barra d'energia in basso i programmatori hanno usato lo scambio di palette o "palette switching". Non parliamo di un hacking, non era un "trucco": i chipset grafici dell'Amiga avevano come regolare feature programmabile la possibilità di modificare i colori al volo, durante il tracciamento del fotogramma, linea per linea! Confusi? Probabile, perché è un concetto molto lontano dal mondo del PC. Guardate quest'area.

Per addentrarci nel mistero, dobbiamo fare uno sforzo di astrazione: immaginate di poter rallentare il tempo e di poter guardare i movimenti del "pennello elettronico" mentre crea il singolo fotogramma sullo schermo. Si muove dall'alto verso il basso, da sinistra verso destra, linea per linea, e fa questo lavoro un tot di volte al secondo (50 nel caso di Titus the Fox). Il gioco gira a 16 colori e all'inizio di questa "corsa" sono stati selezionati e sono lì pronti. Il colore scelto per il cielo è un numero, poniamo il 14, ed è il nero. Il pennello comincia bel bello a disegnare il fotogramma e dopo un po' di linee... STOP! I chip dell'Amiga dicono al pennello: "Senti, abbiamo cambiato idea, per le prossime cinque linee il 14 non è più il nero, ma il blu scuro". "Okay" – fa il pennello, e riprende la sua corsa. Sarà fermato altre volte in questo cielo: nella nostra videata almeno altre nove volte, con nove colori diversi assegnati a questo nostro "14". È fondamentale capire che questa modifica avveniva in tempo reale. Per quanto riguarda i file di grafica in se stessi, nel cielo c'era un colore solo, il "14" (poco importa a cosa corrispondesse in origine). I colori aggiuntivi non erano nei file di grafica, erano creati sullo schermo in quel momento! Il limite dello scambio di palette era nella sua attivazione solo tra una riga e l'altra, orizzontalmente, perché richiedeva una suddivisione dell'inquadratura che lo agevolasse. E mica questa cosa stava bene a tutti i grafici. Ricordate quanto avevo detto per It Came from the Desert? C'era chi come la Cinemaware prediligeva la libertà a questa richezza cromatica... "costrittiva".

Ma continuiamo la nostra corsa. Per il tracciamento dell'area centrale, il nostro bravo pennellone non viene disturbato: i 16 colori selezionati rimangono stabili. Se prima avete storto il naso quando vi ho detto che Titus the Fox su Amiga girava a 16 colori, potreste credermi un po' di più se vi dico che quest'area ha solo 14 colori. L'idea che nello screenshot PC i colori fossero solo 15 comincia a essere più plausibile, vero?
Quando comincia la zona della barra di energia, i chipset dell'Amiga mostrano un altro asso nella manica. Impostano una modalità monocromatica! Non sto scherzando. Le tacche hanno infatti in teoria un colore solo, che viene in orizzontale modificato cinque volte, creando sfumature dal rosso al viola, con lo stesso principio del cielo. Quindi, se ve lo state chiedendo: Titus the Fox ha due profondità di colore diverse nella stessa schermata!!! Una porzione in 16 colori e una porzione monocromatica. Capite bene ora perché usare l'espressione "colori su schermo" con l'Amiga e le console è un concetto molto relativo... Perché procedure e feature così strane, a uno sguardo di oggi? Spiegatelo a voi stessi con un mantra: quanto più della grafica poteva essere finalizzato in tempo reale sullo schermo, distribuendo i compiti tra i vari chip, tanto meno i file di grafica in sè e ogni operazione sarebbero stati pesanti da gestire per il sistema. La macchina in parole povere offriva la sua flessibilità per ottenere il massimo della performance con l'hardware limitato dell'epoca.
Tornando al nostro fotogramma, terminata la barra della salute, il pennello torna in cima allo schermo e comincia a tracciare il fotogramma successivo, e il ciclo ricomincia. Riassumiamo? Titus the Fox su Amiga girava con una snella modalità a 16 colori di base (più veloce di quella a 32!), ne modificava diversi orizzontalmente e ne aggiungeva una piccola manciata con lo sprite hardware del volpacchiotto. Ed ecco i vostri 36 (o addirittura 49, nella schermata qui sotto).

E il nostro PC? Come se la cavarono i programmatori DOS a tradurre questi salti acrobatici dell'Amiga?
Anche per questo titolo valevano le direttive commerciali di It Came from the Desert: doveva essere compatibile con EGA e CGA, mantenendo l'azione di gioco molto veloce, quindi niente VGA a 256 colori. Qui c'erano però due vantaggi: innanzitutto la grafica di base, come abbiamo visto, era già a 16 colori, quindi non richiedeva ritocchi. In secondo luogo, siccome un gioco di piattaforme ha una grafica "a mattonelle" (tile-based) che si ripete, la Titus aveva il tempo per preparare tre versioni diverse degli asset: 4 colori CGA, 16 colori EGA e 16 colori VGA (questi ultimi identici a quelli Amiga).
Ma non si poteva andare oltre.
Né la VGA né le altre schede offrivano infatti sprite hardware! Su PC quindi il volpacchiotto doveva far parte dello schermo principale, condividendo i colori col fondale. Confrontiamo il pelo in salute del pimpante Titus dell'Amiga con il manto smorto del povero Titus PC. Su Amiga il nostro eroe è una vera volpe rossa, su PC... diciamo un cagnolino dal manto color ruggine (della ruggine delle auto che si vedono nello sfondo, per essere precisi!). Ma almeno uno scambietto di palette su PC? Ma anche no. E' stato tentato solo da pochissimi titoli (penso si contino sulle dita di una mano: California Games per CGA è uno di essi), perché lì sì frutto di hacking parecchio complicati. La soluzione adottata su PC fu quindi ultra-elementare: come avrete notato il cielo aveva un colore solo, mentre la barra d'energia non era più fissa in basso, ma appariva in sovraimpressione ogniqualvolta si venisse colpiti. E quando appariva, giusto per non rischiare, era monocolore e bianca. Divertente che, per favorire l'illusione percettiva dei giocatori fieri possessori di una VGA, fosse stata creata la schermata del titolo in modalità a 256 colori, praticamente uguale a quella Amiga che vi ho già mostrato. Dopo aver gustato quel cartello iniziale, chi di noi giovani pcisti avrebbe mai immaginato di giocare solo con 16, specialmente considerando che quei colori facevano parte della stessa morbida palette? Fregati. Peccato per lo scrolling terrificante "a scattoni", imparagonabile con quello continuo e fluido dell'Amiga: con una grafica a 16 colori così leggera per la scheda video, si sarebbe potuto tentare qualcosa di meglio. Anche perché c'erano concorrenti che ottenevano risultati migliori, pur battendo la strada di una grafica leggermente più conservativa.

Un buon esempio erano i Bitmap Brothers: conosciuti come i maghi dell'Amiga, in realtà non hanno mai disdegnato il multipiattaforma. Ben sapendo che i PC e gli Atari ST dovevano viaggiare sui 16 colori, si concentravano moltissimo per non superarli sull'Amiga. Osservate queste due schermate tratte dal cult Gods. Ormai non dovrei aver bisogno di spiegarvi più nulla. La schermata Amiga ha 55 colori, quella PC solo 15, ma è facile notare anche a occhio nudo che ambiente e personaggio principale (qui non era nemmeno uno sprite hardware) sono uguali! Su Amiga c'erano scambi di palette per il cielo multicolore e per la status bar verde fosforescente in basso. Effetti scomparsi dalla versione PC, nella quale si approfittava dell'occasione per rivedere l'interfaccia e rimpicciolire leggermente la finestra di gioco, guadagnando in velocità dello scrolling. Che bel lavoro.

Come finisce quindi questo scontro cromatico? Ancora una volta a favore dell'Amiga, ma il PC si è difeso già meglio che nel primo round e nella prossima puntata vedremo come l'Amiga fosse stato già preso in contropiede...

A cura di: Domenico "Diduz" Misciagna

MasterDunno scrive:09/11/2014 - 01:39

Articolo splendido! E' stato un piacere leggerlo, grazie.

exitplanetdust scrive:05/11/2014 - 11:39

Che meraviglia, pure il cliffhanger alla fine! Non vedo l'ora di leggere il prossimo episodio :)

Invia nuovo commento
Il contenuto di questo campo è privato e non verrà mostrato pubblicamente.
CAPTCHA
Questa domanda serve a verificare che il form non venga inviato da procedure automatizzate
  _                           _    
| |__ _ _ _ __ ___ | | __
| '_ \ | | | | | '_ ` _ \ | |/ /
| | | | | |_| | | | | | | | | <
|_| |_| \__, | |_| |_| |_| |_|\_\
|___/
Enter the code depicted in ASCII art style.