Matrox G400 MAX

Matrox G400 MAX

Recensione scheda video Matrox G400 MAX

di pubblicato il nel canale Schede Video
 

Environment Mapped Bump Mapping

L'Environment Mapped Bump Mapping (EMBM) è una tecnica che mira ad aumentare il realismo delle textures e delle superfici 3D riprodotte, creando l'illusione che su superfici lisce siano presenti variazioni (bump) della superficie a seguito di irregolarità (ad esempio, un piccollo avallamento o una cunetta).
In dettaglio, l'Environmental Mapped Bump Mapping permette di implementare quattro differenti tipologie di effetti:

  1. Surface bumps (incisioni, cortecce di alberi);
  2. Surface animations with reflections (increspature, onde del mare);
  3. Surface animations and morphing (fusioni, modifiche della pelle);
  4. Environment - atmosphere distortion (effetti di lente, luccichio del metallo).

Ognuno di questi tipi di effetti può essere implementato all'interno della scena 3D anche ricorrendo ad una geometria della scena più complessa; questo permette di avere maggiore dettaglio rispetto alla scena originaria ma non a livello di quanto ottenibile impiegando l'Environment Mapped Bump Mapping; oltretutto, l'aumento della geometria dell'immagine ha impatto negativo sui frames generati in quanto impone un maggior numero di calcoli al processore di sistema per completare il processo di generazione della geometria.
L'idea alla base dell'Environment Mapped Bump Mapping è quella di avere una bump map contenente tutte le informazioni in merito alle variazioni, distorsioni oppure riflessioni di luce che intervengono sulla superficie alla quale viene applicata. I programmatori devono avere la disponibilità di tre differenti textures per poter applicare l'EMBM:

  1. texture di base (opzionale)
  2. bump map
  3. environment map

La environment map rappresenta quello che deve essere riflesso dalla superficie sulla quale è applicato l'EMBM; prima di applicare l'environmental map, viene applicata sulla superficie la bump map, così da generare le distorsioni e le variazioni della superficie (che sia quest'ultima semplice oppure con la texture di base applicata poco importa).

embm_terra_si.jpg (18186 byte) embm_terra_no.jpg (17195 byte)
Con EMBM Senza EMBM

Le due immagini qui sopra mostrano chiaramente come l'utilizzo dell'Environment Mapped Bump Mapping permetta di ottenere una scena  più realistica: le superfici mostrano delle variazioni in orizzontale, con un più spiccato effetto di tridimensionalità, rispetto a quelle pur molto belle ma, per così dire, bilineari della scena senza EMBM.

Qui di seguito sono riportati alcuni esempi dell'applicazione dell'Environment Mapped Bump Mapping:

expend1_on_small.jpg (14143 byte) expend1_off_small.jpg (12266 byte)

Con EMBM

Senza EMBM

 

fish_on550_small.jpg (10875 byte) fish_off550_small.jpg (8539 byte)

Con EMBM

Senza EMBM

 

slavezero-on_small.jpg (11949 byte) slavezero-on_small.jpg (11949 byte)

Con EMBM

Senza EMBM

L'applicazione dell'Environment Mapped Bump Mapping richiede che vengano effettuati ulteriori calcoli da parte del chip video rispetto alla situazione nella quale l'EMBM non viene applicato; l'impatto sugli fps complessivi è illustrato dal grafico sottostante:

embm_fps.gif (10777 byte)

Al variare della risoluzione video l'impatto dell'Environmental Mapped Bump Mapping è piuttosto limitato; la variazione è limitata ad 1 - 2 frames al secondo per tutte le risoluzioni video, più evidente passando da 16 a 32 bit di profondità colore per via della maggior mole di calcoli necessari.

Il benchmark utilizzato influisce, naturalmente, sui risultati ottenuti: nel benchmark timedemo di Expendable, infatti, l'EMBM viene utilizzato in misura non eccessiva, pertanto è presumibile che con scene particolari, nelle quali questo effetto viene utilizzato in misura più incisiva, si ottenga un divario maggiore di quanto qui sopra registrato.

 
^