4. Adaptive VSync e Anti Aliasing

 

Adaptive VSync

Con l’aumentare delle prestazioni delle schede video, il framerate nei giochi è cresciuto notevolmente, ma questo non è sempre un vantaggio poichè quando il numero di frame prodotti dalla scheda video è maggiore rispetto a quelli visualizzabili dallo schermo, si può incorrere nel fenomeno di Tearing.


NVIDIA GeForce GTX 680 : ecco Kepler! 4. Adaptive VSync e Anti Aliasing 1

 

Il Tearing è causato dalla visualizzazione di due o più frame in contemporanea sullo stesso schermo con la comparsa di fastidiose linee orizzontali che “rompono” l’immagine.

Per risolvere questo problema è sufficiente attivare il VSync, modalità che consente di sincronizzare il numero di frame inviati dalla scheda video allo schermo con la frequenza di refresh dello stesso (generalmente 60Hz per i monitor LCD).


NVIDIA GeForce GTX 680 : ecco Kepler! 4. Adaptive VSync e Anti Aliasing 2

 

In condizioni ottimali il VSync garantisce la massima qualità visiva e se ne consiglia l’attivazione, tuttavia nei titoli più impegnativi la GPU potrebbe non riuscire sempre a generare un sufficiente numero di frame al secondo per restare sincronizzata con la frequenza dello schermo, di conseguenza si verifica uno Stutter, ovvero un “salto” di immagine, causato dal passaggio dalla modalità a 60 FPS a quella a 30 FPS (si opera sempre a sottomultipli della frequenza).


NVIDIA GeForce GTX 680 : ecco Kepler! 4. Adaptive VSync e Anti Aliasing 3

 

Per risolvere questo fastidioso problema NVIDIA ha introdotto la modalità Adaptive VSync che consente di disattivare automaticamente il VSync quando il numero di frame per secondo cala sotto i 60 FPS previsti.

In questo modo si riesce ad evitare il Tearing e in contemporanea si riduce lo Stuttering, lasciando arrivare allo schermo il reale numero di frame prodotti dalla scheda video.

Il VSync viene poi riattivato automaticamente quando il frame rate torna sopra il valore limite.

 

Anti Aliasing: FXAA e TXAA

Le tecniche di Anti Aliasing consentono di ridurre l’effetto scalettatura che si può notare nel rendering degli spigoli obliqui, compromettendo sensibilmente la qualità dell’immagine.

Per ovviare a questo problema nel corso degli anni sono state sviluppate numerose tecniche per rendere l’immagine più realistica, di cui la più diffusa è indubbiamente l’MSAA (Multi Sample Anti Aliasing).

L’MSAA è piuttosto oneroso in termini di potenza dal momento che richiede l’analisi di un numero variabile di punti adiacenti a quello preso in esame, in base al numero di Sample che si vogliono utilizzare (2x, 4x, 8x).

 

NVIDIA GeForce GTX 680 : ecco Kepler! 4. Adaptive VSync e Anti Aliasing 4  NVIDIA GeForce GTX 680 : ecco Kepler! 4. Adaptive VSync e Anti Aliasing 5  NVIDIA GeForce GTX 680 : ecco Kepler! 4. Adaptive VSync e Anti Aliasing 6  NVIDIA GeForce GTX 680 : ecco Kepler! 4. Adaptive VSync e Anti Aliasing 7 
NO AA - 130 FPS
AA 4x - 107 FPS
AA 8x - 80 FPS
FXAA - 120 FPS

 

La tecnica alternativa proposta da NVIDIA è l’FXAA, tecnologia che consente di applicare il filtro di Anti Aliasing in fase di post processing sfruttando la potenza di calcolo dei CUDA Cores delle GPU GeForce, riducendo così l’impatto sulle prestazioni.

Fino alla release R300 dei driver GeForce, l’FXAA doveva essere implementato dal produttore del videogioco nel codice dello stesso, oggi è invece possibile attivarlo dal Control Panel di NVIDIA ed è compatibile con centinaia di videogiochi.

L’implementazione nativa dell'FXAA in un videogioco consente di ottenere migliori prestazioni ed è completamente configurabile dallo sviluppatore; la versione attivabile dal pannello di controllo non richiede alcuna modifica al software, ma essendo applicato in una fase successiva del rendering, non può però discernere su quali parte della scena applicare il filtro, potenzialmente diminuendo la qualità dell'HUD  o del testo, ma impattando solo marginalmente sul framerate rispetto al tradizionale MSAA (circa il 60% più veloce).

Con Kepler NVIDIA introduce anche una nuova modalità di Anti Aliasing chiamata TXAA.

Questa tecnica usa un mix di multi-sampling eseguito in hardware, un motore di AA personalizzato e l’utilizzo di una componente temporale per aumentare la qualità dell’immagine.

 

NVIDIA GeForce GTX 680 : ecco Kepler! 4. Adaptive VSync e Anti Aliasing 8  NVIDIA GeForce GTX 680 : ecco Kepler! 4. Adaptive VSync e Anti Aliasing 9 
AA 8x - Fonte NVIDIA
TXAA - Fonte NVIDIA


Il TXAA 1 ha un costo, in termini di performance, simile a quello di un MSAA 2x, ma offre una qualità degli spigoli paragonabile a quella di un MSAA 8x.

Il TXAA 2 riesce invece ad offrire una qualità di immagine superiore a quella di un MSAA 8x, ma con il consumo di risorse di un MSAA 4x.

Quando potremo beneficiare di questo nuovo filtro ?

A differenza dell'FXAA non sarà attivabile, almeno in un primo tempo, attraverso i driver NVIDIA ma dovrà essere implementato all’interno dei motori dei videogiochi.

I principali partner videoludici di NVIDIA hanno già espresso interesse in questa nuova tecnica, supportando l’azienda americana nei futuri titoli in uscita.