Ero sivun ”Teksturointi” versioiden välillä

Wikipediasta
Siirry navigaatioon Siirry hakuun
[arvioimaton versio][arvioimaton versio]
Poistettu sisältö Lisätty sisältö
pEi muokkausyhteenvetoa
Rivi 7: Rivi 7:
Tekstuurimappauksen idean esitti Edwin Catmull vuonna 1974. Tekstuurimappaus jakautuu teknisesti kahteen vaiheeseen, geometriseen kuvaukseen eli tekstuurin kuvaamiseen kappaleen pinnalle ja suodatukseen, eli tapaan jolla pikselit esitetään ruudulla. Tekstuuri kuvataan geometriselle muodolle yleensä siten, että kolmion (polygoni voidaan aina jakaa kolmioiksi) jokaiselle kulmalle on määritelty tekstuurikoordinaatit ja teksturointi kolmion sisäosiin interpoloidaan kulmien koordinaattien perusteella käyttämällä [[Bresenhamin algoritmi]]n laajennusta. Muilla kuin ortogonaalisilla koordinaatistoilla yksinkertainen lineaarinen interpolointi johtaa kuitenkin perspektiivivääristymään, jonka korjaamiseksi tarvitaan perspektiivikorjausta. Se kuluttaa jonkin verran enemmän tehoa, mutta useimmat nykyiset näytönohjaimet pystyvät laitteistotasoiseen perpektiivikorjaukseen.
Tekstuurimappauksen idean esitti Edwin Catmull vuonna 1974. Tekstuurimappaus jakautuu teknisesti kahteen vaiheeseen, geometriseen kuvaukseen eli tekstuurin kuvaamiseen kappaleen pinnalle ja suodatukseen, eli tapaan jolla pikselit esitetään ruudulla. Tekstuuri kuvataan geometriselle muodolle yleensä siten, että kolmion (polygoni voidaan aina jakaa kolmioiksi) jokaiselle kulmalle on määritelty tekstuurikoordinaatit ja teksturointi kolmion sisäosiin interpoloidaan kulmien koordinaattien perusteella käyttämällä [[Bresenhamin algoritmi]]n laajennusta. Muilla kuin ortogonaalisilla koordinaatistoilla yksinkertainen lineaarinen interpolointi johtaa kuitenkin perspektiivivääristymään, jonka korjaamiseksi tarvitaan perspektiivikorjausta. Se kuluttaa jonkin verran enemmän tehoa, mutta useimmat nykyiset näytönohjaimet pystyvät laitteistotasoiseen perpektiivikorjaukseen.


Kunnollinen suodatusmenetelmä on tarpeen etenkin kappaleen ollessa 3d-avaruudessa kaukana katsojasta, jolloin tekstuurit muuttuvat pikselimössöksi, ja kappaleen ollessa erityisen lähellä, jolloin tekstuurivat karkeistuvat. Yksinkertaisin ja nopein suodatustapa on [[lähimmän naapurin menetelmä]]. Hieman kehittyneempi mutta myös hieman enemmän tehoa vievä on [[bilineaarinen interpolointi]]. Kaukana olevien tekstuurien pikselöitymisongelmaa voi korjata myös mipmapping-tekniikalla, jossa tekstuuri vaihdetaan pienempään versioon kappaleen siirtyessä kauemmas.
Kunnollinen suodatusmenetelmä on tarpeen etenkin kappaleen ollessa 3d-avaruudessa kaukana katsojasta, jolloin tekstuurit muuttuvat pikselimössöksi, ja kappaleen ollessa erityisen lähellä, jolloin tekstuurit karkeistuvat. Yksinkertaisin ja nopein suodatustapa on [[lähimmän naapurin menetelmä]]. Hieman kehittyneempi mutta myös hieman enemmän tehoa vievä on [[bilineaarinen interpolointi]]. Kaukana olevien tekstuurien pikselöitymisongelmaa voi korjata myös mipmapping-tekniikalla, jossa tekstuuri vaihdetaan pienempään versioon kappaleen siirtyessä kauemmas.


Käytettävä tekstuuri on yleensä kaksiulotteinen bittikarttakuva, mutta se voi olla myös yksi- tai kolmiulotteinen. Se voidaan ottaa valokuvasta tai konstruoida matemaattisena funktiona ja esittää normaalina bittikarttataulukkona tai esim. Fourier-sarjoina. Tekstuuri voi olla myös muu kuin kuva: esimerkiksi [[bump mapping]]-tekniikassa vaikutetaan valaistuksessa käytettäviin parametreihin.
Käytettävä tekstuuri on yleensä kaksiulotteinen bittikarttakuva, mutta se voi olla myös yksi- tai kolmiulotteinen. Se voidaan ottaa valokuvasta, piirtää tai konstruoida matemaattisena funktiona ja esittää normaalina bittikarttataulukkona tai esim. Fourier-sarjoina. Tekstuuri voi olla myös muu kuin kuva: esimerkiksi [[bump mapping]]-tekniikassa vaikutetaan valaistuksessa käytettäviin parametreihin.


==Lähteet==
==Lähteet==

Versio 22. helmikuuta 2007 kello 17.21

Tekstuurimappauksella tai tekstuuripinnoituksella tarkoitetaan tietokonegrafiikassa geometrisen perusmuodon pinnoittamista useimmiten bittikarttakuvalla eli tekstuurilla. Tekstuurimappausta käytetään etenkin 3d-grafiikassa tuomaan kuvaan lisää realismia ja näyttävyyttä ilman että kuvan polygonirakennetta tarvitsee monimutkaistaa. 3d-grafiikassa kappaleen muotoa kuvataan polygoneilla eli monikulmioilla ja sen pintarakennetta tekstuureilla.

Tekstuurimappausta käytetään nykyisissä peleissä lähes aina, ja nykyaikaiset näytönohjaimet ja pelikonsolit pystyvätkin reaaliaikaiseen tekstuurimappaukseen laitteistotasolla.

Tekniikkaa

Tekstuurimappauksen idean esitti Edwin Catmull vuonna 1974. Tekstuurimappaus jakautuu teknisesti kahteen vaiheeseen, geometriseen kuvaukseen eli tekstuurin kuvaamiseen kappaleen pinnalle ja suodatukseen, eli tapaan jolla pikselit esitetään ruudulla. Tekstuuri kuvataan geometriselle muodolle yleensä siten, että kolmion (polygoni voidaan aina jakaa kolmioiksi) jokaiselle kulmalle on määritelty tekstuurikoordinaatit ja teksturointi kolmion sisäosiin interpoloidaan kulmien koordinaattien perusteella käyttämällä Bresenhamin algoritmin laajennusta. Muilla kuin ortogonaalisilla koordinaatistoilla yksinkertainen lineaarinen interpolointi johtaa kuitenkin perspektiivivääristymään, jonka korjaamiseksi tarvitaan perspektiivikorjausta. Se kuluttaa jonkin verran enemmän tehoa, mutta useimmat nykyiset näytönohjaimet pystyvät laitteistotasoiseen perpektiivikorjaukseen.

Kunnollinen suodatusmenetelmä on tarpeen etenkin kappaleen ollessa 3d-avaruudessa kaukana katsojasta, jolloin tekstuurit muuttuvat pikselimössöksi, ja kappaleen ollessa erityisen lähellä, jolloin tekstuurit karkeistuvat. Yksinkertaisin ja nopein suodatustapa on lähimmän naapurin menetelmä. Hieman kehittyneempi mutta myös hieman enemmän tehoa vievä on bilineaarinen interpolointi. Kaukana olevien tekstuurien pikselöitymisongelmaa voi korjata myös mipmapping-tekniikalla, jossa tekstuuri vaihdetaan pienempään versioon kappaleen siirtyessä kauemmas.

Käytettävä tekstuuri on yleensä kaksiulotteinen bittikarttakuva, mutta se voi olla myös yksi- tai kolmiulotteinen. Se voidaan ottaa valokuvasta, piirtää tai konstruoida matemaattisena funktiona ja esittää normaalina bittikarttataulukkona tai esim. Fourier-sarjoina. Tekstuuri voi olla myös muu kuin kuva: esimerkiksi bump mapping-tekniikassa vaikutetaan valaistuksessa käytettäviin parametreihin.

Lähteet