I test in dettaglio: Battlefield 3

Test - Con DirectCompute i giochi diventano più realistici, con un impatto sulle prestazioni ma sotto controllo.

Avatar di Tom's Hardware

a cura di Tom's Hardware

I test in dettagli: Battlefield 3

DICE ha usato DirectCompute per accelerare il calcolo delle luci non ombreggiate all'interno di Battlefield 3. Questo processo richiede la divisione dello schermo in riquadri (tile), e successivamente l'analisi della loro illuminazione. Questo a sua volta aiuta a stabilire un'illuminazione per-pixel, e così si riducono le possibili illuminazioni in ogni riquadro.

"DirectCompute permette di applicare questo effetto con prestazioni molto rapide perché è altamente parallelizzabile", ha dichiarato il rendering architect di DICE, Johan Andersson. "Per ogni riquadro da 8x8 pixel, c'è un gruppo completo di elementi che esegue le operazioni richieste simultaneamente. Si possono quindi gestire diversi riquadri allo stesso tempo, sulle diverse unità di calcolo presenti nelle moderne GPU. Elaborare in fretta luci non ombreggiate è un elemento chiave dei motori Deferred Rendering, poiché sempre più giochi usano questa tecnica ".

Potete vedere qualcosa di più nella demo AMD Leo, che ha accompagnato il debutto della Radeon HD 7970. Secondo AMD, la demo Leo usa l'eliminazione di alcuni pixel (z-culling) e calcoli simili rispetto a quelli di DICE, ma l'elaborazione è anche più rapida grazie a un forward-rendering engine. In questo modo è possibile eseguire il calcolo della luce con tutte le principali tecniche di rendering in uso.

In modo simile alla maggior parte dei giochi, Battlefield 3 si basa molto sui compute shader per moltissimi effetti, e deve aggirare le limitazioni degli shader. Per esempio, il bilateral upsampling compute shader accelera il rendering di tecniche selezionate: prima riproduce l'effetto desiderato (ad esempio SSAO) a metà risoluzione, e poi interpola il risultato per portarlo alla risoluzione desiderata, usando il filtro edge-preserving ad alta qualità presente in DirectCompute.

Le future versioni potrebbero essere in grado di compiere l'operazione a risoluzione full-screen senza pesare sulle prestazioni, oppure DirectCompute potrebbe intervenire per colmare la necessità.

Thomas di Codemasters ha dichiarato che DiRT 3 usa una tattica d'interpolazione simile con l'High-Definition Ambient Occlusion (HDAO). Si calcola HDAO a metà risoluzione perché campionare partendo da buffer di profondità a metà risoluzione è come farlo con un pixel di base a doppio diametro, con risoluzione full-screen.

Il risultato si potrebbe riprodurre a schermo pieno, ma la qualità sarebbe migliore solo di poco; di contro, il costo per gestire un campionamento così grande sarebbe molto alto. La risoluzione a metà schermo sembra essere la cosa migliore per oraL'assistenza di DirectCompute sugli effetti come l'Ambient Occlusion ha quindi un costo. Secondo le condizioni della scena, può sia migliorare sia peggiorare le prestazioni.

"È importante testare una zona con molte fonti di luce, come la metropolitana nella mappa MP di Metro", ha dichiarato Neal Robison di AMD. "Il compute path serve per accelerare i settori peggiori in cui abbiamo più fonti luminose, non situazioni medie o i casi migliori. È attivo per tutto il tempo, ma in realtà riduce le prestazioni a causa dell'overhead extra nelle scene in cui ci sono solo un paio di sorgenti luminose".

In questa demo registrata, la clip di 90 secondi che usiamo per tutte le recensioni, la combinazione di condizioni interne (semi-oscurità) ed esterne (più luminose) dovrebbe fornire una valutazione abbastanza equilibrata.

Abbiamo scoperto in precedenza che le APU AMD non forniscono frame rate giocabili, tranne che con impostazioni molto basse. Perciò per avere una fluidità accettabile in ogni situazione con Battlefield 3 abbiamo impostato texture, ombre, effetti, mesh, qualità e decorazioni del terreno su Low; AA deferred, AA post, e motion blur su Off; e filtro anisotropico su 1x.