Pagina 5 di 11
nVidia PhysX:
Dopo la recente acquisizione di Ageia da parte di NVIDIA, la casa californiana, ha deciso di integrare attraverso la tecnologia CUDA, tutte le funzionalità delle PPU (unità di elaborazione della fisica) all'interno della scheda video GTX 200 . Attualmente sono disponibili i driver per il pieno supporto di queste nuove librerie.
NVIDIA ha ufficialmente annunciato che i giochi già esistenti che utilizzano l'SDK Ageia potranno beneficiare della accelerazione fisica.
La tecnologia PhysX offre un incremento nella potenza di elaborazione della fisica virtuale e porta i giochi ad ottenere un maggior realismo grazie alla possibilità di creare ambienti ricchi e coinvolgenti, dotato di funzionalità quali:
Giochi che sfruttano questa tecnologia sono in continuo aumento.
Vediamo che migliorie apporta " PhysX " con i giochi:
Dopo la recente acquisizione di Ageia da parte di NVIDIA, la casa californiana, ha deciso di integrare attraverso la tecnologia CUDA, tutte le funzionalità delle PPU (unità di elaborazione della fisica) all'interno della scheda video GTX 200 . Attualmente sono disponibili i driver per il pieno supporto di queste nuove librerie.
NVIDIA ha ufficialmente annunciato che i giochi già esistenti che utilizzano l'SDK Ageia potranno beneficiare della accelerazione fisica.
La tecnologia PhysX offre un incremento nella potenza di elaborazione della fisica virtuale e porta i giochi ad ottenere un maggior realismo grazie alla possibilità di creare ambienti ricchi e coinvolgenti, dotato di funzionalità quali:
- Esplosioni che provocano la comparsa di nubi di polvere e detriti;
- Personaggi con geometrie complesse e dotate di giunture per rendere più verosimili; movimenti e interazioni;
- Nuove e spettacolari armi dotate di effetti speciali davvero straordinari;
- Tessuti che si tendono e si strappano in modo naturale;
- Fumo e nebbia densi che creano volute attorno agli oggetti in movimento.
Giochi che sfruttano questa tecnologia sono in continuo aumento.
Vediamo che migliorie apporta " PhysX " con i giochi:
Mirror's Edge:
http://www.youtube.com/watch?v=V_B3_upOvmc
Batman Arkham Asylum:
http://www.youtube.com/watch?v=luSAnouAFJs
Cryostasis:
http://www.youtube.com/watch?v=fQMbFQVLhMc
http://www.youtube.com/watch?v=V_B3_upOvmc
Batman Arkham Asylum:
http://www.youtube.com/watch?v=luSAnouAFJs
Cryostasis:
http://www.youtube.com/watch?v=fQMbFQVLhMc
Altri giochi/applicativi che supportano il PhysX sono:
FSAA:
Il FSAA che significa ” Full Scene AntiAliasing ”.Rappresenta un compromesso tra qualità e “peso” dei calcoli. Il FSAA non agisce solo sui bordi dei modelli renderizzati, ma sull’intera immagine (da cui Full Scene).
Per ottenere un buon FSAA è necessario renderizzare (e mantenere in memoria) un certo numero di versioni della stessa immagine. Maggiore sarà il numero di tali versioni e migliore sarà la qualità del FSAA.
Le versioni dell'immagine vengono generati effettuando delle minime variazioni (Jitter) della visuale corrente. Il valore minimo per il FSAA è costituito da due samples (AA 2x), mentre già con quattro varianti si ottiene un ottimo risultato (AA 4x). Per generare il FSAA è necessario dalle due alle quattro volte il tempo necessario per un rendering senza AntiAliasing. Il FSAA consente risultati comparabili al TEAA come resa visuale, ma richiede una gran quantità di memoria per stoccare le diverse versioni dell'immagine.
Tale tecnica è quindi attuabile su sistemi dotati di molta memoria video.
In sintesi, i vantaggi del FSAAsono nel basso sfruttamento della CPU e nella buona qualità visiva.
Il principale aspetto negativo consiste nella necessità di grandi quantitativi di memoria video.
La vga è compatibile con le librerie Microsoft DirectX 10.0 e Shader Model 4.0.
Ricordiamo che le DirectX 10 sono usufruibili solo con il nuovo sistema operativo Microsoft “Windows Vista”.
Di recente, Microsoft ha rilasciato per il suo nuovo sistema “Windows Vista” il Service pack 1.
Tre le tente novità introdotte dal Service pack 1, troviamo l’aggiornamento delle librerie Microsoft DirectX 10 in 10.1.
Nvidia con la GeForce GTX 280 non offre alcun supporto alle nuove librerie Microsoft DirectX 10.1
Le Direct3D 10.1 sono pienamente compatibili con la versione 10.
Le Direct3D 10.1, derivano direttamente dalle Direct3D 10, e ne aggiungono alcune caratteristiche.
Il passaggio alle Direct3D 10 ha portato molte novità, ma come spesso accade in queste situazioni, le nuove API erano affette da alcuni errori. La versione 10.1 è una sorta di aggiornamento che corregge i problemi ed elimina alcune restrizioni.
Tutti i miglioramenti possono essere riassunti in tre categorie:
Ora è obbligatorio supportare il filtraggio texture FP32, mentre nella versione 10 era solo opzionale.
E’ obbligatorio anche il blending integer a 16 bit.
Le Direct3D 10 introducono il “Cube Map Arrays”. Con le Direct3D 10, Microsoft ha introdotto i Texture Arrays, tabelle di texture che possono essere indicizzate direttamente negli shader. I Texture Arrays ricordano le Texture 3D, in circolazione da molto tempo, ma praticamente il loro comportamento è molto differente. Quando si accede a un elemento delle texture 3D, viene applicato ai vari layer un filtraggio, comportamento normale poiché una texture 3D è caratterizzata da un volume. Diversamente, le texture presenti nella tabella non hanno nessun nesso tra loro. Conseguentemente, non c'è alcun filtraggio tra gli elementi limitrofi. Inoltre, quando si usa il mipmapping, una texture 3D è divisa in 2 secondo le 3 dimensioni, mentre con le texture arrays ciò non avviene: se la composizione delle varie texture vede una diminuzione delle loro dimensioni, la dimensione della tabella rimane inalterata.
Le Direct3D 10.1 generalizzano queste Texture Arrays aggiungendo il supporto alle Cube Maps, mentre fino ad ora, erano supportate solo le tabelle di texture 1D e 2D.
Ci chiediamo come mai Nvidia non abbia ancora deciso di supportare le nuove librerie Microsoft DirectX 10.1, questa mossa di fatto rallenta lo sviluppo dei giochi con queste nuove funzionalità che porterebbero senza dubbio vantaggi al consumatore finale.
Per quanto riguarda lo Shader Core, Nvidia ancora una volta, rimane fedele al vecchio Shader Model 4.0,pur sapendo che potrebbe adottare lo Shader Model 4.1
Lo Shader Model 4.1 apporta alcune novità come il Gather-4.
Per aggiornare la memoria più velocemente, questa istruzione permette di recuperare 4 elementi non filtrati da una single-channel texture con un solo texture fetch, che quindi permette un'implementazione più efficiente e personalizzati dei filtri negli shader.
Un'altra istruzione presente nello Shader Model 4.1 permette di recuperare il livello di dettaglio (mipmal level) durante un texture sampling. Microsoft ha aggiornato anche alcuni limiti, specialmente il numero di input vertex shader, passando da 16 vettori a 128 bit (4 floating point precision) a 32.
Per quanto riguarda il blending, abbiamo già menzionato il nuovo formato supportato, Int 16, ma non è l'unica novità; le Direct3D 10.1 ora permettono l'utilizzo di modalità di blending indipendenti durante rendering simultanei in più di un buffer (MRT: Multiple Render Targets).
Con le Direct3D 10.1, Microsoft ha focalizzato sulla qualità del rendering, con un occhio di riguardo all'antialiasing. Prima notizia: da ora, il supporto dell'antialiasing 4x è obbligatori per i buffer a 32 bit (RGBA8) e 64-bit (RGBA16).
Microsoft ha cercato anche di razionalizzare la gestione dell'antialiasing offrendo più controllo ai programmatori e cercando di lasciare meno libertà ai produttori di GPU. Oltre ai livelli di anti-aliasing (2x, 4x, 8x), l'utente ha accesso al transparency antialiasing per filtrare le texture alpha sia in modalità multisampling che supersampling, e ognuna di queste modalità risponde a delle specifiche dipendenti dall'hardware: CSAA, CFAA, etc. Con le Direct3D 10.1, i programmatori possono finalmente specificare se vogliono un multisampling o un supersampling, garantendogli il controllo sui sample che vengono applicati agli shader
Infine, dove le Direct3D 10 abilitano l'accesso ai sample di un buffer colori multisampled, è ora possibile fare lo stesso in un multisampled depth buffer.
Come potete intuire sono diverse le novità apportate in queste nuove istruzioni introdotte da Microsoft DirectX 10.1 e dallo Shader Model 4.1.
AMBIENT OCCLUSION:
L'ambient occlusion è un metodo di shading usato nella computer grafica 3D che contribuisce a conferire realismo ai modelli di riflessione locale in quanto tiene conto dell'attenuazione luminosa in prossimità di volumi occlusi. Diversamente da metodi locali come il Phong shading, l'ambient occlusion è un metodo globale, cioè l'illuminazione di ogni punto è funzione della geometria della scena. Ad ogni modo è un'approssimazione grezza dell'intera illuminazione globale.
- Space Siege, Gas Powered games;
- Nurien, a social network platform ;
- Bionic Commando, CAPCOM, GRINN
- Backbreaker, Natural Motion
- APB, Realtime Worlds
- Stalker Clear Sky realtime debris - cloth
- Race Driver - GRID - Phill Scott - cloth physics in flags
- Gearbox Software, Brother in Arms - Hell's Highway & Aliens: Colonial Marines and Borderlands
- e molti altri ancora
FSAA:
Il FSAA che significa ” Full Scene AntiAliasing ”.Rappresenta un compromesso tra qualità e “peso” dei calcoli. Il FSAA non agisce solo sui bordi dei modelli renderizzati, ma sull’intera immagine (da cui Full Scene).
Per ottenere un buon FSAA è necessario renderizzare (e mantenere in memoria) un certo numero di versioni della stessa immagine. Maggiore sarà il numero di tali versioni e migliore sarà la qualità del FSAA.
Le versioni dell'immagine vengono generati effettuando delle minime variazioni (Jitter) della visuale corrente. Il valore minimo per il FSAA è costituito da due samples (AA 2x), mentre già con quattro varianti si ottiene un ottimo risultato (AA 4x). Per generare il FSAA è necessario dalle due alle quattro volte il tempo necessario per un rendering senza AntiAliasing. Il FSAA consente risultati comparabili al TEAA come resa visuale, ma richiede una gran quantità di memoria per stoccare le diverse versioni dell'immagine.
Tale tecnica è quindi attuabile su sistemi dotati di molta memoria video.
In sintesi, i vantaggi del FSAAsono nel basso sfruttamento della CPU e nella buona qualità visiva.
Il principale aspetto negativo consiste nella necessità di grandi quantitativi di memoria video.
La vga è compatibile con le librerie Microsoft DirectX 10.0 e Shader Model 4.0.
Ricordiamo che le DirectX 10 sono usufruibili solo con il nuovo sistema operativo Microsoft “Windows Vista”.
Di recente, Microsoft ha rilasciato per il suo nuovo sistema “Windows Vista” il Service pack 1.
Tre le tente novità introdotte dal Service pack 1, troviamo l’aggiornamento delle librerie Microsoft DirectX 10 in 10.1.
Nvidia con la GeForce GTX 280 non offre alcun supporto alle nuove librerie Microsoft DirectX 10.1
Le Direct3D 10.1 sono pienamente compatibili con la versione 10.
Le Direct3D 10.1, derivano direttamente dalle Direct3D 10, e ne aggiungono alcune caratteristiche.
Il passaggio alle Direct3D 10 ha portato molte novità, ma come spesso accade in queste situazioni, le nuove API erano affette da alcuni errori. La versione 10.1 è una sorta di aggiornamento che corregge i problemi ed elimina alcune restrizioni.
Tutti i miglioramenti possono essere riassunti in tre categorie:
- Rigorose specifiche per limitare le discrepanze tra implementazioni multiple.
- Una manciata di nuove caratteristiche
- Maggiore qualità e precisione di rendering e antialiasing
Ora è obbligatorio supportare il filtraggio texture FP32, mentre nella versione 10 era solo opzionale.
E’ obbligatorio anche il blending integer a 16 bit.
Le Direct3D 10 introducono il “Cube Map Arrays”. Con le Direct3D 10, Microsoft ha introdotto i Texture Arrays, tabelle di texture che possono essere indicizzate direttamente negli shader. I Texture Arrays ricordano le Texture 3D, in circolazione da molto tempo, ma praticamente il loro comportamento è molto differente. Quando si accede a un elemento delle texture 3D, viene applicato ai vari layer un filtraggio, comportamento normale poiché una texture 3D è caratterizzata da un volume. Diversamente, le texture presenti nella tabella non hanno nessun nesso tra loro. Conseguentemente, non c'è alcun filtraggio tra gli elementi limitrofi. Inoltre, quando si usa il mipmapping, una texture 3D è divisa in 2 secondo le 3 dimensioni, mentre con le texture arrays ciò non avviene: se la composizione delle varie texture vede una diminuzione delle loro dimensioni, la dimensione della tabella rimane inalterata.
Le Direct3D 10.1 generalizzano queste Texture Arrays aggiungendo il supporto alle Cube Maps, mentre fino ad ora, erano supportate solo le tabelle di texture 1D e 2D.
Ci chiediamo come mai Nvidia non abbia ancora deciso di supportare le nuove librerie Microsoft DirectX 10.1, questa mossa di fatto rallenta lo sviluppo dei giochi con queste nuove funzionalità che porterebbero senza dubbio vantaggi al consumatore finale.
Per quanto riguarda lo Shader Core, Nvidia ancora una volta, rimane fedele al vecchio Shader Model 4.0,pur sapendo che potrebbe adottare lo Shader Model 4.1
Lo Shader Model 4.1 apporta alcune novità come il Gather-4.
Per aggiornare la memoria più velocemente, questa istruzione permette di recuperare 4 elementi non filtrati da una single-channel texture con un solo texture fetch, che quindi permette un'implementazione più efficiente e personalizzati dei filtri negli shader.
Un'altra istruzione presente nello Shader Model 4.1 permette di recuperare il livello di dettaglio (mipmal level) durante un texture sampling. Microsoft ha aggiornato anche alcuni limiti, specialmente il numero di input vertex shader, passando da 16 vettori a 128 bit (4 floating point precision) a 32.
Per quanto riguarda il blending, abbiamo già menzionato il nuovo formato supportato, Int 16, ma non è l'unica novità; le Direct3D 10.1 ora permettono l'utilizzo di modalità di blending indipendenti durante rendering simultanei in più di un buffer (MRT: Multiple Render Targets).
Con le Direct3D 10.1, Microsoft ha focalizzato sulla qualità del rendering, con un occhio di riguardo all'antialiasing. Prima notizia: da ora, il supporto dell'antialiasing 4x è obbligatori per i buffer a 32 bit (RGBA8) e 64-bit (RGBA16).
Microsoft ha cercato anche di razionalizzare la gestione dell'antialiasing offrendo più controllo ai programmatori e cercando di lasciare meno libertà ai produttori di GPU. Oltre ai livelli di anti-aliasing (2x, 4x, 8x), l'utente ha accesso al transparency antialiasing per filtrare le texture alpha sia in modalità multisampling che supersampling, e ognuna di queste modalità risponde a delle specifiche dipendenti dall'hardware: CSAA, CFAA, etc. Con le Direct3D 10.1, i programmatori possono finalmente specificare se vogliono un multisampling o un supersampling, garantendogli il controllo sui sample che vengono applicati agli shader
Infine, dove le Direct3D 10 abilitano l'accesso ai sample di un buffer colori multisampled, è ora possibile fare lo stesso in un multisampled depth buffer.
Come potete intuire sono diverse le novità apportate in queste nuove istruzioni introdotte da Microsoft DirectX 10.1 e dallo Shader Model 4.1.
AMBIENT OCCLUSION:
L'ambient occlusion è un metodo di shading usato nella computer grafica 3D che contribuisce a conferire realismo ai modelli di riflessione locale in quanto tiene conto dell'attenuazione luminosa in prossimità di volumi occlusi. Diversamente da metodi locali come il Phong shading, l'ambient occlusion è un metodo globale, cioè l'illuminazione di ogni punto è funzione della geometria della scena. Ad ogni modo è un'approssimazione grezza dell'intera illuminazione globale.
L’Ambient Occlusion è una tecnica utilizzata nell’ambito della Grafica 3d che aiuta a dare realismo alla scena simulando l’attenuazione della luce uno un ambiente chiuso. Il suo punto di forza è la velocità, per questo motivo, specie nelle animazioni, viene utilizzata al posto della Global illumination: più accurata ma molto più esigente in termini di tempo. In parole povere si renderizza un’immagine in chiaro/scuro e poi viene sommata all’immagine ancora piatta, senza l’effetto di alcuna luce. E’ stato introdotto da Nvidia con i Driver Forceware 185.20 ed è in continua evoluzione e sviluppo. Un esempio chiarirà in breve quanto appena detto:
Detta in parole semplici, l’ Ambient Occlusion è un algoritmo di illuminazione globale che permette l´ombreggiatura di intere scene 3D basandosi sull´attenuazione della luce in prossimità di volumi occlusi.
Diversi sono i giochi che supportano l’ ambient Occlusion:
Ecco un esempio di cosa riesce a fare l’ ambient Occlusion con i giochi:
Diversi sono i giochi che supportano l’ ambient Occlusion:
- Assassin's Creed
- Crysis
- Crysis WARHEAD
- BioShock
- Call of Duty 4
- Call of Duty 5
- Call Of Juarez
- Company Of Heroes
- Counter-Strike Source
- Dead Space
- Devil May Cry 4
- F.E.A.R. 2
- Fallout 3
- Farcry 2
- Half Life 2 series
- Left 4 Dead
- Lost Planet: Colonies
- Lost Planet: Extreme Condition
- Mirror's Edge
- Portal
- Team Fortress 2
- Unreal Tournament 3
- World In Conflict
- World of Warcraft
- Batman Arkham Asylum
- Need For Speed Shift
- ……..altri in continuo supporto.
Ecco un esempio di cosa riesce a fare l’ ambient Occlusion con i giochi:
Gioco “Crysis”
Ambient Occlusion disattivato: | Ambient Occlusion attivato: |
Ricordiamo che l’uso del ambient Occlusion ha un impatto visivo notevole, ma è decisamente “pesante. Una volta attivato, si perderanno diversi frame.
I test condotti da noi in laboratorio hanno beneficiato dei seguenti driver:
Per sfruttare la fisica della GeForce GTX 275, abbiamo usato i driver nVidia PhysX v. 9.09.0814:
http://it.download.nvidia.com/Windows/other/9.09.0814_PhysX_WHQL/PhysX_9.09.0814_SystemSoftware.exe
Consigliamo sempre di installare i driver più recenti per la vostra scheda video Nvidia Geforce GTX295, purché essi siano certificati WHQL dalla stessa Microsoft.
I test condotti da noi in laboratorio hanno beneficiato dei seguenti driver:
- Nvidia Forceware 190.62 WHQL per sistema operativo Windows XP Professional 32 bit SP3.
- Driver scaricabili da qui: http://it.download.nvidia.com/Windows/190.62/190.62_desktop_winxp_32bit_international_whql.exe
- Nvidia Forceware 190.62 WHQL per sistema operative Windows Vista Ultimate 64 bit SP2
- Driver scaricabili da qui: http://it.download.nvidia.com/Windows/190.62/190.62_desktop_win7_winvista_64bit_international_whql.exe
Per sfruttare la fisica della GeForce GTX 275, abbiamo usato i driver nVidia PhysX v. 9.09.0814:
http://it.download.nvidia.com/Windows/other/9.09.0814_PhysX_WHQL/PhysX_9.09.0814_SystemSoftware.exe
Consigliamo sempre di installare i driver più recenti per la vostra scheda video Nvidia Geforce GTX295, purché essi siano certificati WHQL dalla stessa Microsoft.