MIP map: differenze tra le versioni

Contenuto cancellato Contenuto aggiunto
Chobot (discussione | contributi)
m r2.6.5) (Bot: Modifico: ko:밉맵
 
(23 versioni intermedie di 18 utenti non mostrate)
Riga 1:
{{F|informaticacomputer grafica|aprilemarzo 20112013}}
Una '''MIP map''' è, nell'ambito della [[computer grafica 3D]], una raccolta [[Ottimizzazione (informatica)|ottimizzata]] di immagini [[bitmap]] precalcolate associate ad una [[Texture (grafica)|texture]] principale; essa ha lo scopo di aumentare la velocità di [[rendering]] e di ridurre gli [[Artefatto (segnali)|artefatti]] a scapito di una maggiore richiesta di memoria.
 
Le MIP map sono molto usate nei [[videogioco|videogiochi]] 3D, [[simulatore di volo|simulatori di volo]] e altre applicazioni. Le lettere "MIP" sono l'acronimo della frase [[Lingua latina|latina]] ''multum in parvo'' che significa "molto nel piccolo".
Riga 8:
 
==Funzionamento==
[[Immagine:MipMap Example STS101.jpg|thumb|300px|Un esempio di insieme Mip map: l'immagine principale è sulla sinistra affiancata dalle copie di dimensione ridotta.]]
Ogni bitmap dell'insieme MIP map è una versione più piccola della [[texture]] principale, cioè con un dettaglio e una [[risoluzione (grafica)|risoluzione]] minore. La texture principale viene utilizzata quando il punto di vista è tale da permettere di renderizzarla con il massimo dettaglio, il processo passa ad un'immagine dell'insieme più ridotta (o ne crea una nuova, per [[interpolazione (matematica)|interpolazione]] tra le due immagini più "vicine", se è attivo il [[filtro trilineare]]) quando la texture è vista in lontananza o in piccole dimensioni.
La velocitá di rendering aumenta dato che il numero di [[pixel]] calcolati può diminuire sensibilmente rispetto a quello delle texture semplici. La possibilità che si formino artefatti si riduce per il fatto che sulle immagini MIP map è già stato applicato l'[[antialiasing]] con conseguente diminuzione del carico di lavoro in [[Real-time|tempo reale]]. Infine anche il ridimensionamento viene eseguito in modo più efficiente.
 
===MIP map standard===
Se la texture ha una dimensione di base di 256x256 pixel (solitamente le texture sono quadrate e hanno lati uguali a una potenza di 2) allora l'insieme MIP map può contenere una serie di 8 immagini, ognuna della dimensione di un quarto rispetto alla precedente: 128x128 pixel, 64x64, 32x32, 16x16, 8x8, 4x4, 2x2, 1x1. Se, per esempio, è necessario renderizzare la texture in uno spazio di 40x40 pixel, verrà calcolata un'interpolazione tra la MIP map da 64x64 e e quella da 32x32.
[[ImmagineFile:MipMap Example STS101.jpg|thumb|300pxupright=1.4|Un esempio di insieme Mip map: l'immagine principale è sulla sinistra affiancata dalle copie di dimensione ridotta.]]
Ogni bitmap dell'insieme MIP map è una versione più piccola della [[Texture (grafica)|texture]] principale, cioè con un dettaglio e una [[risoluzione (grafica)|risoluzione]] minore. La texture principale viene utilizzata quando il punto di vista è tale da permettere di renderizzarla con il massimo dettaglio, il processo passa ad un'immagine dell'insieme più ridotta (o ne crea una nuova, per [[interpolazione (matematica)|interpolazione]] tra le due immagini più "vicine", se è attivo il [[filtro trilineare]]) quando la texture è vista in lontananza o in piccole dimensioni.
La velocitávelocità di rendering aumenta dato che il numero di [[pixel]] calcolati può diminuire sensibilmente rispetto a quello delle texture semplici. La possibilità che si formino artefatti si riduce per il fatto che sulle immagini MIP map è già stato applicato l'[[antialiasing]] con conseguente diminuzione del carico di lavoro in [[RealSistema real-time|tempo reale]]. Infine anche il ridimensionamento viene eseguito in modo più efficiente.
 
Se la texture ha una dimensione di base di 256x256 pixel (solitamente le texture sono quadrate e hanno lati uguali a una potenza di 2) allora l'insieme MIP map può contenere una serie di 8 immagini, ognuna della dimensione di un quarto rispetto alla precedente: 128x128 pixel, 64x64, 32x32, 16x16, 8x8, 4x4, 2x2, 1x1. Se, per esempio, è necessario renderizzare la texture in uno spazio di 40x40 pixel, verrà calcolata un'interpolazione tra la MIP map da 64x64 e e quella da 32x32.
L'aumento di spazio occupato da tutte le MIP map è di un terzo rispetto a quello occupato dalla texture originale, infatti la somma della [[serie geometrica]] con termine generale pari a 1/4 è:
 
L'aumento di spazio occupato da tutte le MIP map è di un terzo50% rispetto a quello occupato dalla texture originale, anche se la superficie occupata è solo di un terzo maggiore, infatti la somma della [[serie geometrica]] con termine generale pari a 1/4 è:
 
:<math>\sum_{k=0}^{\infty}\left( \frac{1}{4} \right)^k = \frac{4}{3}</math>
Line 22 ⟶ 24:
In molti casi è necessario un processo non uniforme in ogni direzione (cioè [[filtro anisotropico]]) e viene utilizzata una soluzione di compromesso. Si può adoperare una bitmap a risoluzione maggiore, in questo caso diminuisce la [[coerenza della cache]] e aumenta l'[[aliasing]] in una direzione, ma l'immagine tende a diventare più nitida. Diversamente si può adoperare una bitmap a risoluzione minore, in questo caso aumenta la coerenza della cache, ma l'immagine risulta sfuocata al punto che potrebbe diventare difficile da riconoscere.
 
===RIP map===
Per risolvere questo problema si utilizzano, talvolta, MIP map non uniformi (chiamate ''RIP map''). Partendo da una texure base di 16x16, le risoluzioni delle RIP map sarebbero: 16×8, 16×4, 16×2, 16×1, 8×16, 8×8, 8×4, 8×2, 8×1, 4×16, 4×8, 4×4, 4×2, 4×1, 2×16, 2×8, 2×4, 2×2, 2×1, 1×16, 1×8, 1×4, 1×2 1×1. Sfortunatamente questo approccio richiede il quadruplo della memoria della texture di base.
[[File:MipMap Example STS101 Anisotropic.png|thumb|RIP map]]
Per risolvere questo problema si utilizzano, talvolta, MIP map non uniformi (chiamate ''RIP map''). Partendo da una texure base di 16x16, le risoluzioni delle RIP map sarebbero: 16×8, 16×4, 16×2, 16×1, 8×16, 8×8, 8×4, 8×2, 8×1, 4×16, 4×8, 4×4, 4×2, 4×1, 2×16, 2×8, 2×4, 2×2, 2×1, 1×16, 1×8, 1×4, 1×2 1×1. Sfortunatamente; questo approccio richiede il quadruplo della memoria della texture di base.
 
Queste immagini riescono sia a svolgere la funzione delle classiche BIP map, sia a facilitare il calcolo e la resa visiva su superfici inclinate, riducendo il peso del filtro anisotropico, ma richiedono una quantità maggiore di RAM, in quanto il loro peso è doppio rispetto alle MIP map, in compenso contengono 2,5 volte le informazioni rispetto alle MIP map.
 
==Voci correlate==
*[[Antialiasing]]
*[[Filtro anisotropico]]
*[[Filtro lineare]]
 
==Altri progetti==
[[Categoria:Computer grafica]]
{{interprogetto}}
 
==Collegamenti esterni==
[[ca:Mipmap]]
*{{cita web|url=http://www.tomshw.it/graphic.php?guide=20040603&page=ati_optimized-01|titolo=Mipmapping|accesso=5 dicembre 2011|urlarchivio=https://web.archive.org/web/20060306030152/http://www.tomshw.it/graphic.php?guide=20040603&page=ati_optimized-01|dataarchivio=6 marzo 2006|urlmorto=sì}}
[[de:Mip Mapping]]
 
[[en:Mipmap]]
[[Categoria:Computer grafica]]
[[es:Mipmap]]
[[fr:MIP mapping]]
[[ja:ミップマップ]]
[[ko:밉맵]]
[[pl:Mipmapping]]
[[ru:MIP-текстурирование]]
[[uk:MIP-текстурування]]
[[zh:Mipmap]]