rasterizácia, alias , anti-alias viditeľnosťkucerova/zs_2015_2016/zpgso_4.pdftransformácie...

65
Rasterizácia, Alias, Anti-alias Viditeľnosť Materiály, Textúry Júlia Kučerová

Upload: others

Post on 22-Feb-2020

13 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Rasterizácia, Alias , Anti-alias Viditeľnosťkucerova/ZS_2015_2016/ZPGSO_4.pdfTransformácie lokálne → globálne posunutie, rotácia, škálovanie, posunutie globálne → kamerové

Rasterizácia, Alias, Anti-alias Viditeľnosť

Materiály, Textúry

Júlia Kučerová

Page 2: Rasterizácia, Alias , Anti-alias Viditeľnosťkucerova/ZS_2015_2016/ZPGSO_4.pdfTransformácie lokálne → globálne posunutie, rotácia, škálovanie, posunutie globálne → kamerové

Zobrazovací kanál Modelové transformácie Lokálne → globálne

Pohľadové transformácie Globálne → kamerové

Projekčné transformácie Kamerové (3D)→ obrazovka (2D)

Orezávanie, Rasterizácia, Textúrovanie & Osvetlenie

Základy počítačovej grafiky a spracovanie obrazu 2015/2016 2

Page 3: Rasterizácia, Alias , Anti-alias Viditeľnosťkucerova/ZS_2015_2016/ZPGSO_4.pdfTransformácie lokálne → globálne posunutie, rotácia, škálovanie, posunutie globálne → kamerové

Transformácie lokálne → globálne posunutie, rotácia, škálovanie, posunutie

globálne → kamerové posunutie, rotácia, rotácia, projekcia

kamerové → obrazovka posunutie, škálovanie, posunutie

kombinácia transformácií = násobenie matíc

Základy počítačovej grafiky a spracovanie obrazu 2015/2016 3

Page 4: Rasterizácia, Alias , Anti-alias Viditeľnosťkucerova/ZS_2015_2016/ZPGSO_4.pdfTransformácie lokálne → globálne posunutie, rotácia, škálovanie, posunutie globálne → kamerové

Zobrazovací kanál Modelové transformácie Lokálne → globálne

Pohľadové transformácie Globálne → kamerové

Projekčné transformácie Kamerové (3D)→ obrazovka (2D)

Orezávanie, Rasterizácia, Textúrovanie & Osvetlenie

Základy počítačovej grafiky a spracovanie obrazu 2015/2016 4

Page 5: Rasterizácia, Alias , Anti-alias Viditeľnosťkucerova/ZS_2015_2016/ZPGSO_4.pdfTransformácie lokálne → globálne posunutie, rotácia, škálovanie, posunutie globálne → kamerové

Rasterizácia

Základy počítačovej grafiky a spracovanie obrazu 2015/2016 5

Page 6: Rasterizácia, Alias , Anti-alias Viditeľnosťkucerova/ZS_2015_2016/ZPGSO_4.pdfTransformácie lokálne → globálne posunutie, rotácia, škálovanie, posunutie globálne → kamerové

Všeobecný problém

Daná spojitá geometrická reprezentácia objektu Rozhodnutie, ktorý

pixel patrí objektu

Základy počítačovej grafiky a spracovanie obrazu 2015/2016 6

Page 7: Rasterizácia, Alias , Anti-alias Viditeľnosťkucerova/ZS_2015_2016/ZPGSO_4.pdfTransformácie lokálne → globálne posunutie, rotácia, škálovanie, posunutie globálne → kamerové

Rasterizácia úsečky

Základy počítačovej grafiky a spracovanie obrazu 2015/2016 7

Page 8: Rasterizácia, Alias , Anti-alias Viditeľnosťkucerova/ZS_2015_2016/ZPGSO_4.pdfTransformácie lokálne → globálne posunutie, rotácia, škálovanie, posunutie globálne → kamerové

DDA Digital Differential Analyzer m = (y2 – y1) / (x2 – x1) (smernica, desatinnné číslo)

Základy počítačovej grafiky a spracovanie obrazu 2015/2016 8

Page 9: Rasterizácia, Alias , Anti-alias Viditeľnosťkucerova/ZS_2015_2016/ZPGSO_4.pdfTransformácie lokálne → globálne posunutie, rotácia, škálovanie, posunutie globálne → kamerové

DDA Algoritmus: 1. Z koncových bodov [x1, y1] a [x2, y2] urči smernicu m 2. Inicializuj bod [x, y] hodnotou [x1, y1] 3. Pokiaľ x≤ x2 opakuj: a) Vykresli bod [x, zaokrúhlené(y)] b) x = x+1 c) y = y+m

Základy počítačovej grafiky a spracovanie obrazu 2015/2016 9

Page 10: Rasterizácia, Alias , Anti-alias Viditeľnosťkucerova/ZS_2015_2016/ZPGSO_4.pdfTransformácie lokálne → globálne posunutie, rotácia, škálovanie, posunutie globálne → kamerové

DDA

Základy počítačovej grafiky a spracovanie obrazu 2015/2016 10

Page 11: Rasterizácia, Alias , Anti-alias Viditeľnosťkucerova/ZS_2015_2016/ZPGSO_4.pdfTransformácie lokálne → globálne posunutie, rotácia, škálovanie, posunutie globálne → kamerové

DDA

Základy počítačovej grafiky a spracovanie obrazu 2015/2016 11

Page 12: Rasterizácia, Alias , Anti-alias Viditeľnosťkucerova/ZS_2015_2016/ZPGSO_4.pdfTransformácie lokálne → globálne posunutie, rotácia, škálovanie, posunutie globálne → kamerové

DDA ak abs(m) > 1 zameň x↔y v algoritme

Základy počítačovej grafiky a spracovanie obrazu 2015/2016 12

Page 13: Rasterizácia, Alias , Anti-alias Viditeľnosťkucerova/ZS_2015_2016/ZPGSO_4.pdfTransformácie lokálne → globálne posunutie, rotácia, škálovanie, posunutie globálne → kamerové

Bresenhamov algoritmus DDA – desatinné čísla Bresenham – celé čísla Hlavná myšlienka: Pre každé x existujú iba 2 možné

hodoty y, kde sa vyberie hodnota s menšou chybou

Základy počítačovej grafiky a spracovanie obrazu 2015/2016 13

Page 14: Rasterizácia, Alias , Anti-alias Viditeľnosťkucerova/ZS_2015_2016/ZPGSO_4.pdfTransformácie lokálne → globálne posunutie, rotácia, škálovanie, posunutie globálne → kamerové

Bresenhamov algoritmus Algoritmus: 1. Z koncových bodov [x1, y1] a [x2, y2] urči konštanty k1= 2∆y, k2= 2(∆y-∆x) 2. Inicializuj rozhodovací člen p na hodnotu 2 ∆y - ∆x 3. Inicializuj [x,y] ako [x1, y1] 4. Vykresli bod [x,y] 5. Pokiaľ x≤ x2 opakuj: a) x = x+1 b) ak je p kladné y = y+1 a p = p+k2 c) ak p nie je kladné, tak p = p+k1 d) vykresli bod [x,y]

Základy počítačovej grafiky a spracovanie obrazu 2015/2016 14

Page 15: Rasterizácia, Alias , Anti-alias Viditeľnosťkucerova/ZS_2015_2016/ZPGSO_4.pdfTransformácie lokálne → globálne posunutie, rotácia, škálovanie, posunutie globálne → kamerové

Rasterizácia polygónov Scaneline Pre každú čiaru:

1) Nájdi prienik polygónu s čiarou 2) 2)Utrieď prieniky podľa x-ovej

súradnice 3) Vyplň pixle medzi

nasledujúcimi pármi prienikov

Základy počítačovej grafiky a spracovanie obrazu 2015/2016 15

Page 16: Rasterizácia, Alias , Anti-alias Viditeľnosťkucerova/ZS_2015_2016/ZPGSO_4.pdfTransformácie lokálne → globálne posunutie, rotácia, škálovanie, posunutie globálne → kamerové

Alias, anti-alias

Základy počítačovej grafiky a spracovanie obrazu 2015/2016 16

Page 17: Rasterizácia, Alias , Anti-alias Viditeľnosťkucerova/ZS_2015_2016/ZPGSO_4.pdfTransformácie lokálne → globálne posunutie, rotácia, škálovanie, posunutie globálne → kamerové

Alias

Základy počítačovej grafiky a spracovanie obrazu 2015/2016 17

Page 18: Rasterizácia, Alias , Anti-alias Viditeľnosťkucerova/ZS_2015_2016/ZPGSO_4.pdfTransformácie lokálne → globálne posunutie, rotácia, škálovanie, posunutie globálne → kamerové

Alias Nežiadúci jav

spojité → diskrétne, môžu sa objaviť aftefakty Vznik

ak je pôvodná funkcia frekvenčne neobmedzená (neexistuje žiadna maximálna frekvenica)

rekonštrukcia signálu vzorkovaného pod Nyquistovým limitom (2fmax), fmax je maximálna frekvencia

vzorkovanie Pozorovania spojitej funkcie

v diskrétnych intervaloch vzorkovacia frekvenica - hustota pixlov

Základy počítačovej grafiky a spracovanie obrazu 2015/2016 18

Page 19: Rasterizácia, Alias , Anti-alias Viditeľnosťkucerova/ZS_2015_2016/ZPGSO_4.pdfTransformácie lokálne → globálne posunutie, rotácia, škálovanie, posunutie globálne → kamerové

Formy aliasu priestorový alias Zubaté hrany/zubatice

(jaggy edges) moiré (pi vzorkovaní textúry

s pravidelným vzorom) Skreslenie textúry

časový obrazovka snímaná

kamerou “wagon wheel”

Základy počítačovej grafiky a spracovanie obrazu 2015/2016 19

Page 20: Rasterizácia, Alias , Anti-alias Viditeľnosťkucerova/ZS_2015_2016/ZPGSO_4.pdfTransformácie lokálne → globálne posunutie, rotácia, škálovanie, posunutie globálne → kamerové

Anti-aliasing Odstránenie / zmenšenie aliasu Alias zvyčajne nemôžeme úplne odstrániť, môžme ho

čiastočne potlačiť najjednoduchšie: Odstránenie vysokých frekvencií

Anti-aliasing Posunutie aliasu k vyšším hodnotám (vzorkovanie) Prevedenie aliasu na šum (náhodné čísla)

Základy počítačovej grafiky a spracovanie obrazu 2015/2016 20

Page 21: Rasterizácia, Alias , Anti-alias Viditeľnosťkucerova/ZS_2015_2016/ZPGSO_4.pdfTransformácie lokálne → globálne posunutie, rotácia, škálovanie, posunutie globálne → kamerové

Anti-aliasing všeobecný (globálny) anti-aliasing -

nadvzorkovanie (supersampling) pravidelné stochastické (jittering)

Objektový (lokálny) anti-aliasing čiarový anti-aliasing anti-aliasing siluety textúrny anti-aliasing

Základy počítačovej grafiky a spracovanie obrazu 2015/2016 21

Page 22: Rasterizácia, Alias , Anti-alias Viditeľnosťkucerova/ZS_2015_2016/ZPGSO_4.pdfTransformácie lokálne → globálne posunutie, rotácia, škálovanie, posunutie globálne → kamerové

Anti-aliansing

Supersampling všeobecný (globálny) anti-aliasing vzorkovanie s viac ako jednou vzorkou na pixel Previdelné FSAA (Full Screen AntiAliasing)

Stochstické Poisson disc Roztrasenie (jittering)

Základy počítačovej grafiky a spracovanie obrazu 2015/2016 22

Page 23: Rasterizácia, Alias , Anti-alias Viditeľnosťkucerova/ZS_2015_2016/ZPGSO_4.pdfTransformácie lokálne → globálne posunutie, rotácia, škálovanie, posunutie globálne → kamerové

Anti-aliansing

Poisson disc Na základe rozloženia tyčiniek a čapíkov v ľudskom oku Výpočtovo náročné

Roztrasenie (jittering) Najčstejšie používaný stochastický anti-aliasing Aproximácia optimálneho rozloženia voriek Algoritmus: generovanie vzoriek do superpixlov a ich

umiestnenie do stredu (rovnako ako pri pravidelnom vzorkovaní s vyššou frekvenciou). Vzorky sa náhodne posunú z okolia stredu pixlu, tak, aby žiaden neopustil hranicu svojho superpixla

Pridanie šumu do pravidelného vzorkovania Základy počítačovej grafiky a spracovanie obrazu 2015/2016 23

Page 24: Rasterizácia, Alias , Anti-alias Viditeľnosťkucerova/ZS_2015_2016/ZPGSO_4.pdfTransformácie lokálne → globálne posunutie, rotácia, škálovanie, posunutie globálne → kamerové

Super-sampling Pre každý pixel vytvor viacero sub-

pixlov a skombinuj ich

Základy počítačovej grafiky a spracovanie obrazu 2015/2016 24 Pravidelné (mriežka)

Náhodné (stochastické)

Poisson Jitter

Page 25: Rasterizácia, Alias , Anti-alias Viditeľnosťkucerova/ZS_2015_2016/ZPGSO_4.pdfTransformácie lokálne → globálne posunutie, rotácia, škálovanie, posunutie globálne → kamerové

Viditeľnosť

Základy počítačovej grafiky a spracovanie obrazu 2015/2016 25

Page 26: Rasterizácia, Alias , Anti-alias Viditeľnosťkucerova/ZS_2015_2016/ZPGSO_4.pdfTransformácie lokálne → globálne posunutie, rotácia, škálovanie, posunutie globálne → kamerové

Viditeľnosť projekcia 3D objektov do 2D je nedostatočná Musíme brať do úvahy aj hĺbku (tretie D)

Základy počítačovej grafiky a spracovanie obrazu 2015/2016 26

Page 27: Rasterizácia, Alias , Anti-alias Viditeľnosťkucerova/ZS_2015_2016/ZPGSO_4.pdfTransformácie lokálne → globálne posunutie, rotácia, škálovanie, posunutie globálne → kamerové

Viditeľnosť v rôznych metódach

lokálne → svetové → kamerové Každý objekt je spracovávaný samostatne (lokálne) potrebujeme spracovávať hĺbku samostatne jeden objekt má veľa samostatných plôch

Základy počítačovej grafiky a spracovanie obrazu 2015/2016 27

Page 28: Rasterizácia, Alias , Anti-alias Viditeľnosťkucerova/ZS_2015_2016/ZPGSO_4.pdfTransformácie lokálne → globálne posunutie, rotácia, škálovanie, posunutie globálne → kamerové

Optimalizovanie viditeľnosti Zbaviť sa všetkých objektov, ktoré určite

nevidíme

Orezanie viditeľného objemu (Frustum culling)

Orezávanie zadných stien (Backface culling) Occlusion culling Portal culling

Základy počítačovej grafiky a spracovanie obrazu 2015/2016 29

Page 29: Rasterizácia, Alias , Anti-alias Viditeľnosťkucerova/ZS_2015_2016/ZPGSO_4.pdfTransformácie lokálne → globálne posunutie, rotácia, škálovanie, posunutie globálne → kamerové

Orezanie viditeľného objemu (Frustum culling)

6 plôch Vnútri= viditeľný objem

Nachádza sa bod vnútri? Objektový hraničný kváder

(bounding box) Zrýchlenie

Základy počítačovej grafiky a spracovanie obrazu 2015/2016 30

Page 30: Rasterizácia, Alias , Anti-alias Viditeľnosťkucerova/ZS_2015_2016/ZPGSO_4.pdfTransformácie lokálne → globálne posunutie, rotácia, škálovanie, posunutie globálne → kamerové

Backface culling

Ktoré steny objektu sú viditeľné? Normálový vektor (orientácia steny objektu)

Základy počítačovej grafiky a spracovanie obrazu 2015/2016 31

Page 31: Rasterizácia, Alias , Anti-alias Viditeľnosťkucerova/ZS_2015_2016/ZPGSO_4.pdfTransformácie lokálne → globálne posunutie, rotácia, škálovanie, posunutie globálne → kamerové

Occlusion culling

Niektoré objekty sú plne zakryté inými Priestorové vzťahy medzi

objektami Renderovanie

v reálnom čase

Základy počítačovej grafiky a spracovanie obrazu 2015/2016 32

Page 32: Rasterizácia, Alias , Anti-alias Viditeľnosťkucerova/ZS_2015_2016/ZPGSO_4.pdfTransformácie lokálne → globálne posunutie, rotácia, škálovanie, posunutie globálne → kamerové

Portal culling

Niektoré časti scény nie sú viditeľné z iných častí scény

Základy počítačovej grafiky a spracovanie obrazu 2015/2016 33

Page 33: Rasterizácia, Alias , Anti-alias Viditeľnosťkucerova/ZS_2015_2016/ZPGSO_4.pdfTransformácie lokálne → globálne posunutie, rotácia, škálovanie, posunutie globálne → kamerové

Viaceré objekty

Uvažujme polygonálne objekty => zredukovanie viditeľnosti objektov na viditeľnosť stien

Hlavná myšlienka – uvažujeme hĺbku objektu (z)

Základy počítačovej grafiky a spracovanie obrazu 2015/2016 34

Page 34: Rasterizácia, Alias , Anti-alias Viditeľnosťkucerova/ZS_2015_2016/ZPGSO_4.pdfTransformácie lokálne → globálne posunutie, rotácia, škálovanie, posunutie globálne → kamerové

Svet -> Kamera

Základy počítačovej grafiky a spracovanie obrazu 2015/2016 35

Page 35: Rasterizácia, Alias , Anti-alias Viditeľnosťkucerova/ZS_2015_2016/ZPGSO_4.pdfTransformácie lokálne → globálne posunutie, rotácia, škálovanie, posunutie globálne → kamerové

Maliarov algoritmus

Usporiadať steny objektu do poradia zozadu-dopredu, vyrenderovať ich

Nové pixle prekreslia staré

Základy počítačovej grafiky a spracovanie obrazu 2015/2016 36

Page 36: Rasterizácia, Alias , Anti-alias Viditeľnosťkucerova/ZS_2015_2016/ZPGSO_4.pdfTransformácie lokálne → globálne posunutie, rotácia, škálovanie, posunutie globálne → kamerové

Maliarov algoritmus – problém

Ktorý pixel reprezentje stenu? Prienik plôch Cyklicky sa prekrývajúce sa steny

prebytočné renderovanie Vhodný pre jednoduché scény

Základy počítačovej grafiky a spracovanie obrazu 2015/2016 37

Page 37: Rasterizácia, Alias , Anti-alias Viditeľnosťkucerova/ZS_2015_2016/ZPGSO_4.pdfTransformácie lokálne → globálne posunutie, rotácia, škálovanie, posunutie globálne → kamerové

Iné algoritmy Warnockov algorimus

Prerozdelenie scény pomocou quadtree kým nie je celá bunka vnútri jedného polygónu

Obrátený maliarov algoritmus

Vykresľovať spredu-dozadu a vymaľovávať len prázdne oblasti

Z-buffer

Zapamätá si z-ovú hodnotu pre každý pixel a vykreslí iba, keď je nová hodnota vyššia

Základy počítačovej grafiky a spracovanie obrazu 2015/2016 38

Page 38: Rasterizácia, Alias , Anti-alias Viditeľnosťkucerova/ZS_2015_2016/ZPGSO_4.pdfTransformácie lokálne → globálne posunutie, rotácia, škálovanie, posunutie globálne → kamerové

Z-buffer (Pamäť hĺbky) Pracuje v priestore obrazovky obrazovka š×v ↔ z-buffer š×v Algoritmus: 1. vyplň obrazovú pamäť farbou pozadia 2. Vyplň pamäť hĺbky hodotu -∞ 3. Pre každú plochu nájdi pixely, do ktorých sa plocha premietne. Pre

každý pixel [xi,yi] urči hĺbku zi 4. Ak má z väčšiu hodnotu ako [xi,yi] v pamäti hĺbky, tak

a) zafarbi pixel [xi,yi] v obrazovej pamäti farbou tejto plochy b) položku [xi,yi] v pamäti hĺbky aktualizuj na hodnotu zi

Základy počítačovej grafiky a spracovanie obrazu 2015/2016 39

Page 39: Rasterizácia, Alias , Anti-alias Viditeľnosťkucerova/ZS_2015_2016/ZPGSO_4.pdfTransformácie lokálne → globálne posunutie, rotácia, škálovanie, posunutie globálne → kamerové

Z-buffer – výhody a nevýhody

GPU Testovanie pred osvetľovanín/tieňovaním ušetrí

nadbytočnú prácu

Môžu sa vyskytnúť nepresnosti Pamäťová náročnosť (šírka x výška x presnosť)

Môže byť zrýchlený použitím scanline algoritmu

(šírka x 1 x presnosť) Základy počítačovej grafiky a spracovanie obrazu 2015/2016 40

Page 40: Rasterizácia, Alias , Anti-alias Viditeľnosťkucerova/ZS_2015_2016/ZPGSO_4.pdfTransformácie lokálne → globálne posunutie, rotácia, škálovanie, posunutie globálne → kamerové

Zobrazovací kanál Modelové transformácie Lokálne → globálne

Pohľadové transformácie Globálne → kamerové

Projekčné transformácie Kamerové → obrazovka

Orezávanie, Rasterizácia, Textúrovanie & Osvetlenie

Základy počítačovej grafiky a spracovanie obrazu 2015/2016 41

Page 41: Rasterizácia, Alias , Anti-alias Viditeľnosťkucerova/ZS_2015_2016/ZPGSO_4.pdfTransformácie lokálne → globálne posunutie, rotácia, škálovanie, posunutie globálne → kamerové

Textúry a mapovanie textúr

Základy počítačovej grafiky a spracovanie obrazu 2015/2016 42

Page 42: Rasterizácia, Alias , Anti-alias Viditeľnosťkucerova/ZS_2015_2016/ZPGSO_4.pdfTransformácie lokálne → globálne posunutie, rotácia, škálovanie, posunutie globálne → kamerové

Materiály Vizuálne rozlíšia 2 objekty s identickou

geometriou Zatiaľ sa zameriame na farbu objektu Iné materiály,

vlastnosti preberieme neskôr

Základy počítačovej grafiky a spracovanie obrazu 2015/2016 43

Page 43: Rasterizácia, Alias , Anti-alias Viditeľnosťkucerova/ZS_2015_2016/ZPGSO_4.pdfTransformácie lokálne → globálne posunutie, rotácia, škálovanie, posunutie globálne → kamerové

Farba objektu Triviálny prípad Konštantná farba

Zvyčajný prípad Farba sa mení

Základy počítačovej grafiky a spracovanie obrazu 2015/2016 44

Page 44: Rasterizácia, Alias , Anti-alias Viditeľnosťkucerova/ZS_2015_2016/ZPGSO_4.pdfTransformácie lokálne → globálne posunutie, rotácia, škálovanie, posunutie globálne → kamerové

Textúra Používa sa na definovanie

zmien vo farbe objektu 2D bitmapa 3D bitmapa Texel Procedurálne textúry

Základy počítačovej grafiky a spracovanie obrazu 2015/2016 45

Page 45: Rasterizácia, Alias , Anti-alias Viditeľnosťkucerova/ZS_2015_2016/ZPGSO_4.pdfTransformácie lokálne → globálne posunutie, rotácia, škálovanie, posunutie globálne → kamerové

Rozdelenie textúr Podľa vlastnosti Farba povrchu, odraz svetla, zmena normálového

vektora, drsnosť, priehľadnosť Podľa rozmeru 1D, 2D, 3D (objemové), 4D (animácia 3D textúr)

Podľa reprezentácie Tabuľkové, procedurálne

Základy počítačovej grafiky a spracovanie obrazu 2015/2016 46

Page 46: Rasterizácia, Alias , Anti-alias Viditeľnosťkucerova/ZS_2015_2016/ZPGSO_4.pdfTransformácie lokálne → globálne posunutie, rotácia, škálovanie, posunutie globálne → kamerové

Mapovanie textúr Nanášanie textúry na povrch objektov Obobjektový priestor ↔ 2D textúrny priestor

Nový súradnicový priestor: Textúrne súradnice Základy počítačovej grafiky a spracovanie obrazu 2015/2016 47

Page 47: Rasterizácia, Alias , Anti-alias Viditeľnosťkucerova/ZS_2015_2016/ZPGSO_4.pdfTransformácie lokálne → globálne posunutie, rotácia, škálovanie, posunutie globálne → kamerové

Mapovanie textúr na polygóny

Všeobecný problém: Ktorý textúrny pixel zobrazíme ako obrazový pixel na texturovanom

polygóne?

Základy počítačovej grafiky a spracovanie obrazu 2015/2016 48

Page 48: Rasterizácia, Alias , Anti-alias Viditeľnosťkucerova/ZS_2015_2016/ZPGSO_4.pdfTransformácie lokálne → globálne posunutie, rotácia, škálovanie, posunutie globálne → kamerové

Textúrne súradnice Pozícia kontrolných

bodov polygónu v textúrnom priestore

Textúrne súradnice pre C sú [0.6, 0.9]

Základy počítačovej grafiky a spracovanie obrazu 2015/2016 49

Page 49: Rasterizácia, Alias , Anti-alias Viditeľnosťkucerova/ZS_2015_2016/ZPGSO_4.pdfTransformácie lokálne → globálne posunutie, rotácia, škálovanie, posunutie globálne → kamerové

Určenie pixlov textúry Rasterizácia polygónu

Základy počítačovej grafiky a spracovanie obrazu 2015/2016 50

S C A N L I N E

Projektovaný scaneline

Priestor obrazovky Priestor textúry

Page 50: Rasterizácia, Alias , Anti-alias Viditeľnosťkucerova/ZS_2015_2016/ZPGSO_4.pdfTransformácie lokálne → globálne posunutie, rotácia, škálovanie, posunutie globálne → kamerové

Opakovanie textúry Texture tiling Čo sa stane, ak sú súradnice textúry > 1? Napr. [ 0, 0 ] [ 2.5 , 0 ] [ 2.5, 1.5 ], [ 0, 1.5 ]

Základy počítačovej grafiky a spracovanie obrazu 2015/2016 51

Page 51: Rasterizácia, Alias , Anti-alias Viditeľnosťkucerova/ZS_2015_2016/ZPGSO_4.pdfTransformácie lokálne → globálne posunutie, rotácia, škálovanie, posunutie globálne → kamerové

Problémy texturovania

Veľkosť textúry <> veľkosť polygónu 1-pixelový krok na obrazovke <> 1-pixelový krok v

textúre Čítanie pixelov

z textúry je vzorkovanie

Artefakty Alias

Základy počítačovej grafiky a spracovanie obrazu 2015/2016 52

Page 52: Rasterizácia, Alias , Anti-alias Viditeľnosťkucerova/ZS_2015_2016/ZPGSO_4.pdfTransformácie lokálne → globálne posunutie, rotácia, škálovanie, posunutie globálne → kamerové

Príklad

Základy počítačovej grafiky a spracovanie obrazu 2015/2016 53

Page 53: Rasterizácia, Alias , Anti-alias Viditeľnosťkucerova/ZS_2015_2016/ZPGSO_4.pdfTransformácie lokálne → globálne posunutie, rotácia, škálovanie, posunutie globálne → kamerové

Vylepšenia Použitie redukovanej textúry na vzdialené polygóny MIP-mapy (Multum in Pravo)

Drawbacks – “waves” http://www.gamedev.net/reference/articles/article1233.asp

Základy počítačovej grafiky a spracovanie obrazu 2015/2016 55

Page 54: Rasterizácia, Alias , Anti-alias Viditeľnosťkucerova/ZS_2015_2016/ZPGSO_4.pdfTransformácie lokálne → globálne posunutie, rotácia, škálovanie, posunutie globálne → kamerové

Vylepšenia – MIP mapy

http://www.gamedev.net/reference/articles/article1233.asp

Základy počítačovej grafiky a spracovanie obrazu 2015/2016 56

Page 55: Rasterizácia, Alias , Anti-alias Viditeľnosťkucerova/ZS_2015_2016/ZPGSO_4.pdfTransformácie lokálne → globálne posunutie, rotácia, škálovanie, posunutie globálne → kamerové

Vylepšenia

Najbližší sused – nie filtrovanie

Základy počítačovej grafiky a spracovanie obrazu 2015/2016 57

Page 56: Rasterizácia, Alias , Anti-alias Viditeľnosťkucerova/ZS_2015_2016/ZPGSO_4.pdfTransformácie lokálne → globálne posunutie, rotácia, škálovanie, posunutie globálne → kamerové

Vylepšenia - Filtrovanie Bilineárne filtrovanie

Drawbacks – artefakty stále vznikajú Základy počítačovej grafiky a spracovanie obrazu 2015/2016 58

Page 57: Rasterizácia, Alias , Anti-alias Viditeľnosťkucerova/ZS_2015_2016/ZPGSO_4.pdfTransformácie lokálne → globálne posunutie, rotácia, škálovanie, posunutie globálne → kamerové

Bilineárna interpolácia

Základy počítačovej grafiky a spracovanie obrazu 2015/2016 59

A

B

P

D

C

Q X

Page 58: Rasterizácia, Alias , Anti-alias Viditeľnosťkucerova/ZS_2015_2016/ZPGSO_4.pdfTransformácie lokálne → globálne posunutie, rotácia, škálovanie, posunutie globálne → kamerové

Bilineárna interpolácia

4 rohové body A,B,C,D so známymi hodnotami 1 vútorný bod X s neznáou hodnotou P = A + u(B-A), Q = D+u(C-D) X = P+v(Q-P)

Maticový zápis

Základy počítačovej grafiky a spracovanie obrazu 2015/2016 60

Page 59: Rasterizácia, Alias , Anti-alias Viditeľnosťkucerova/ZS_2015_2016/ZPGSO_4.pdfTransformácie lokálne → globálne posunutie, rotácia, škálovanie, posunutie globálne → kamerové

Aplikácia: mapovanie textúr

Interpolácia D↔A = P, D↔C = Q, P↔Q = X

Základy počítačovej grafiky a spracovanie obrazu 2015/2016 61

Page 60: Rasterizácia, Alias , Anti-alias Viditeľnosťkucerova/ZS_2015_2016/ZPGSO_4.pdfTransformácie lokálne → globálne posunutie, rotácia, škálovanie, posunutie globálne → kamerové

Ďalšie vylepšenia

Trilineárna interpolácia Bilineárna interpolácia v MIP

mapách+ lineárna interpolácia

Anizotropné filtrovanie Rôzne vzorky textúry v

rôznych smeroch Procedurálne textúry Parametrické Menší aliasing

Základy počítačovej grafiky a spracovanie obrazu 2015/2016 62

Page 61: Rasterizácia, Alias , Anti-alias Viditeľnosťkucerova/ZS_2015_2016/ZPGSO_4.pdfTransformácie lokálne → globálne posunutie, rotácia, škálovanie, posunutie globálne → kamerové

Textúrovanie objektov

Objekty zložené z polygónov Vieme, ako textúrovať polygóny použitím textúrnych

súradníc ich vrcholov Ale ako nastavíme textúrne súradnice? Okrem manuálneho nastavenia

Rozloženie objektu do roviny

Základy počítačovej grafiky a spracovanie obrazu 2015/2016 63

Page 62: Rasterizácia, Alias , Anti-alias Viditeľnosťkucerova/ZS_2015_2016/ZPGSO_4.pdfTransformácie lokálne → globálne posunutie, rotácia, škálovanie, posunutie globálne → kamerové

Textúrovanie objektov - príklad

Rozloženie zeme do roviny

Základy počítačovej grafiky a spracovanie obrazu 2015/2016 64

Page 63: Rasterizácia, Alias , Anti-alias Viditeľnosťkucerova/ZS_2015_2016/ZPGSO_4.pdfTransformácie lokálne → globálne posunutie, rotácia, škálovanie, posunutie globálne → kamerové

UV mapovanie

XYZ ↔ UV guľa:

Základy počítačovej grafiky a spracovanie obrazu 2015/2016 66

Page 64: Rasterizácia, Alias , Anti-alias Viditeľnosťkucerova/ZS_2015_2016/ZPGSO_4.pdfTransformácie lokálne → globálne posunutie, rotácia, škálovanie, posunutie globálne → kamerové

Rôzne UV mapovanie

Základy počítačovej grafiky a spracovanie obrazu 2015/2016 67

Page 65: Rasterizácia, Alias , Anti-alias Viditeľnosťkucerova/ZS_2015_2016/ZPGSO_4.pdfTransformácie lokálne → globálne posunutie, rotácia, škálovanie, posunutie globálne → kamerové

UV mapovanie 3DS MAX: Planar Face Cylindrical Box Shrink wrap Spherical

http://www.ru.is/kennarar/hannes/useful/BlenderManual/htmlI/ Základy počítačovej grafiky a spracovanie obrazu 2015/2016 68