Focus sulla versione PC di Rage: l'importanza dei 60 fps
Perché tanti problemi al lancio della versione PC di Rage? Cosa ha di veramente innovativo la nuova tecnologia allestita da John Carmack? In questo approfondimento alla recensione di Rage cerchiamo di rispondere a queste e ad altre domande. Include il videoarticolo e una gallery di screenshot inediti.
di Rosario Grasso pubblicato il 20 Ottobre 2011 nel canale VideogamesTrascodifica GPU
Su PC, poi, c'è la curiosa opzione "trascodifica GPU", attivabile solo con hardware Nvidia perché sfrutta Cuda, l'architettura per l'elaborazione parallela creata dal produttore californiano. La trascodifica della GPU, nelle intenzioni di Carmack, deve migliorare le performance di elaborazione sfruttando l'architettura parallela della GPU per applicazioni che normalmente vengono affidate alla CPU.
La trascodifica della GPU viene utilizzata soprattutto per la decompressione della texture. Ogni volta che una nuova parte della mappa risulta necessaria, in base all'azione del giocatore, le texture viene decompressa via DXT, un algoritmo di compressione delle texture sviluppato da S3 Graphics, la compagnia che gli appassionati dell'evoluzione delle schede video ricordano dagli anni '90 per aver prodotto la famiglia di GPU Savage.
Questa operazione richiede un quantitativo molto elevato di potenza di elaborazione, in funzione della velocità degli spostamenti operati dal giocatore e dei cambi di inquadratura. La trascodifica GPU, quindi, serve per contenere i problemi di pop-in della texture e alleviare il carico di lavoro della CPU, a cui rimane da svolgere "solamente" il 25-40% dei calcoli complessivi richiesti da Rage e legati, perlopiù, alla gestione della fisica, dell'audio e dell'intelligenza artificiale.
Il motore grafico cerca di individuare un equilibrio nel carico di lavoro della GPU tra rendering della grafica e decompressione della texture. Se non riesce a fare il rendering della grafica a 60 fotogrammi per secondo, in funzione della capacità computazionale della scheda video, spinge il lavoro di decompressione sul processore. Se neanche quest'ultimo è in grado di decomprimere la texture ad alta risoluzione, quindi, viene ulteriormente diminuita la risoluzione della texture, sempre nel tentativo di mantenere i 60 fps.
Con un workaround simile a quello che impone a Rage di avere sempre le texture in alta risoluzione, che si esegue sul file Rageconfig.cfg, si può imporre al motore grafico di usare sempre la GPU per le operazioni di decompressione della texture. Questo, però, comporta dei blocchi all'immagine (fino anche ad avere i 0 frame per secondo) in funzione della capacità della scheda video.
Sul PC di test dei videogiochi redazionale dotato di processore Intel Core i5 750, 4 GB di RAM e scheda video Nvidia GeForce GTX 470, le soluzioni pensate da John Carmack funzionano egregiamente. Il gioco, infatti, a prescindere dalle impostazioni relative a filtri e risoluzione complessiva dell'immagine, rimane sempre inchiodato sui 60 frame per secondo, offrendo un'esperienza di gioco per certi versi innovativa e assolutamente fluida e godibile (a prescindere dai limiti del gameplay di cui abbiamo parlato nella recensione). I tempi di caricamento, inoltre, sono praticamente nulli, offrendo nuovamente un punto di vantaggio rispetto alle controparti console.