Mipmapping

Secondo quanto segnalato nei vari forum di esperti e appassionati su Internet, il filtro trilineare ATI implementato nelle nuove schede video Radeon X800 non sarebbe un VERO filtro trilineare. ATI si difende. Quale sarà la verità?

Avatar di Tom's Hardware

a cura di Tom's Hardware

Tom's Hardware Guide Graphics Cards: ATI's Optimized Texture Filtering Called Into Question - Mipmapping

Mipmapping

Il texture filtering di cui stiamo parlando si occupa di filtrare diversi livelli di mipmap. I mipmap sono le variazioni che intercorrono tra una texture e la stessa texture nelle diverse misure. Immaginiamo di essere in piedi su una superficie composta da mattoni e guardiamo verso l'orizzonte. Per assicurarci un buon livello di realismo, i mattoni più vicini devono essere molto dettagliati, ed allontanandosi dal punto di vista, i mattoni diventeranno sempre più piccoli e meno dettagliati. Questa differenza tra i vari livelli di mipmap è determinata dalla cosiddetta Texture LOD (Level of detail)

Different sizes of the same texture.

Stessa texture in differenti misure.

Both parts of the screen show a bilinear filtered image. On the left side, we made the different mipmap levels visible. You can see the bilinear banding on the right were one mipmap level merges into the next.

Entrambi le parti dello schermo rappresentano un’immagine filtrati bilinearmente. Nel lato sinistro, abbimo reso i vari livelli di bipmap visibili.

Entrambi le parti dello schermo rappresentano un'immagine filtrata bilinearmente. Nel lato sinistro, abbiamo reso i vari livelli di bipmap visibili.

Ci vuole però molto di più oltre al mipmapping per riprodurre un risultato decente. Senza nessun tipo di filtro, l'immagine sarebbe molto pixellata, dato che a mano a mano che la scena si allontana dall'osservatore, sempre meno pixel saranno disponibili per visualizzare correttamente le texture.

Here´s an in-game scene similar to our hallway floor example. You can see that different scaling is needed because of the perspective.

Questa scena di un gioco rende l'idea.

La prossima sezione dell'articolo mostra come il mipmapping previene la pixellazione della scena. Per dimostrarlo abbiamo utilizzato il "texture filtering test" di 3D Mark 2003 (versione Pro).

The left part is done without mipmapping. You might think that it looks sharper in the screenshot here. It is, but without mipmaps all textures flicker with a large amount of noise - this looks awful when the scene is set in motion. You can try it on your own with all games based on the Q3 engine. Set r_textureMode to: "GL_LINEAR" to disable mipmapping with linear filtering, GL_NEAREST for mipmapping with point sampling.

La parte sinistra è renderizzata senza mipmapping, e nell’immagine è presente molto rumore, il che rende l’animazione molto sgradevole. Potete provare anche voi con qualsiasi gioco basato sul motore grafico Q3. Impostate r_textureMode a “GL_LINEAR” per disabilitare il mipmapping con filtro lineare.