Reljefa kartēšana

Reljefa kartēšanaAkadēmiskā terminu datubāze - bump mapping ( — ‘punu iezīmēšana’) ir datorgrafikas tehnika, lai simulētu nelīdzenumus un rievas uz objekta virsmas. Tas tiek panākts, izmainot objekta virsmas perpendikulu (normālvērtības) leņķi, un to izmanto apgaismošanas aprēķinos. Rezultātā rodas vizuāli nelīdzena virsma, par spīti tam, ka pamata objekta struktūra nav izmainīta. Bump mapping 1978. gadā izgudroja Džeimss Blinns (James Blinn).Blinn, James F. "Simulation of Wrinkled Surfaces", Computer Graphics, Vol. 12 (3), pp. 286-292 SIGGRAPH-ACM (August 1978)

Normal mapping ir visbiežāk izmantotais bump mapping paveids.Mikkelsen, Morten. Simulation of Wrinkled Surfaces Revisited , 2008 (PDF)

 Bump mapping pamati 

Bump mapping ir datorgrafikas tehnika, lai atveidotā virsma izskatītos vairāk reālistiskāka, imitējot nelielus virsmas pārvietojumus. Taču, atšķirībā no displacement mapping, virsmas ģeometrija netiek izmainīta. Tā vietā, virsmas perpendikuli tiek lokāli modificēti tā, lai izskatītos, ka virsmas ģeometrija ir izmainīta. Tālāk šie modificētie perpendikuli tiek izmantoti ēnošanas aprēķinos, piešķirot objektam sīku daļiņu detalizējumu.


Bump mapping ir daudz ātrāka un patērē mazāk resursu tādam pašam detalizējuma līmenim, kādu var iegūt ar displacement mapping, jo objekta ģeometrija paliek nemainīga.

Pastāv arī papildinājumi, kas izmaina ģeometriju, lai palielinātu dziļuma sajūtu.

Galvenais ierobežojums ir tāds, ka šī tehnika neizmaina objekta ģeometriju, līdz ar to objektu silueti un ēnas neizmainīsies, ko visvairāk var pamanīt lielākās simulācijās. Šo ierobežojumu var pārvarēt ar citām tehnikām, piemēram, displacement mapping, kur nelīdzenumi tiek pielietoti uz objekta ģeometrijas. Izmantota var tikt arī izovirsma (isosurface).

 Metodes 

Ir divas galvenās metodes, lai veiktu bump mapping. Pirmā ir izmantojot augstuma kartes, lai simulētu virsmas izmaiņas, izmantojot izmainītas normālvērtības. Šo metodi izgudroja Blinns, un parasti uz to atsaucas, kā uz bump mapping, ja nav norādīts citādāk. Šīs metodes soļi aprakstīti zemāk.

Pirms tiek veikti apgaismošanas aprēķini katram redzamajam punktam uz objekta virsmas:

 Atrast augstumu iekš augstumu kartes, kas atbilst vietai uz virsmas.
 Aprēķina virsmas normālvērtību augstuma kartei, parasti izmantojot galīgās atšķirības metodi.
 Apvieno virsmas normālvērtības no otrā soļa ar patiesajām virsmas normālvērtībām, lai apvienotie normālvērtību punkti vērstos citā virzienā.
 Aprēķina jaunās "nelīdzenās" virsmas mijiedarbību ar gaismām izmantojot, piemēram, Phong ēnojuma modeli.

Iznākums ir virsma, kurai izskatas, ka ir patiess dziļums. Algoritms arī nodrošina, lai virsma izskats mainītos, ja gaismas pozīcija tiek mainīta.

Otra metode ir norādot normal map, kas satur modificētu normālvērtību katram virsmas punktam. Tā kā normālvērtības tiek dotas tieši, nevis aprēķinātas no augstuma kartes, šī metode sniedz vairāk paredzamus rezultātus. Šī metode atvieglo darbu māksliniekiem, padarot to par visbiežāk lietoto bump mapping metodi.

 Reāllaika reljefa kartēšanas tehnikasReal-Time Bump Map Synthesis, Jan Kautz1, Wolfgang Heidrichy2 and Hans-Peter Seidel1, (1Max-Planck-Institut für Informatik, 2University of British Columbia) 

Reāllaika 3D grafikas programmētāji bieži izmanto dažādas tehnikas, lai simulētu bump mapping ar pēc iespējas zemākām aprēķināšanas izmaksām.

Viens tipisks veids ir izmantot fiksētu ģeometriju, kas ļauj izmantot augstuma kartes virsmas normālvērtības gandrīz tieši. Apvienojumā ar iepriekšaprēķinātu tabulu apgaismošanas aprēķiniem, šī metode var tikt ieviesta ar ļoti vienkāršu un ātru ciklu, ļaujot izveidot pilnekrāna efektu. Šī metode bija tipisks vizuālais efekts, kad bump mapping tika pirmoreiz ieviesta.

 Skatīt arī 
 Normal mapping
 Parallax mapping
 Texture mapping

 Atsauces 

Kategorija:Datorgrafika
Kategorija:3D grafika