Prezentace se nahrává, počkejte prosím

Prezentace se nahrává, počkejte prosím

3D počíta čová grafik a na PC © 2003 Josef Peliká n, MFF UK Praha cgg.m s.mff.c uni.cz/

Podobné prezentace


Prezentace na téma: "3D počíta čová grafik a na PC © 2003 Josef Peliká n, MFF UK Praha cgg.m s.mff.c uni.cz/"— Transkript prezentace:

1 3D počíta čová grafik a na PC © 2003 Josef Peliká n, MFF UK Praha http:// cgg.m s.mff.c uni.cz/

2 Pokro ky v hardw are 3D ak cel er ac e bě žn á i v ko nz u m ní m se kto ru za m ěř en í na hr y, m ulti m edi a vz hle d – kv alit a pr ez en tac e v e l m i d ů m y s l n é t e c h n i k y t e x t u r o v á n í k o m b i n a c e m n o h a t e x t u r, m o d u l a r i t a z p r a c o v á n í vy so ký vý ko n n e j m o d e r n ě j š í č i p o v é t e c h n o l o g i e p r o v ý r o b u G P U ( 0. 1 3 μ m ), m a s i v n í p a r a l e l i s m u s v e l m i r y c h l é p a m ě t i ( d v o u c e s t n ý p ř í s t u p, D D R ) v ý j i m e č n á s b ě r n i c e m e z i G P U a C P U – A G P

3 Pokro ky v softwa re dv ě hla vní kni ho vn y pr o 3D gr afi ku O p e n G L ( S G I ) a D i r e c t 3 D ( M i c r o s o f t ) p ř í s t u p j e p o d o b n ý, A P I j e v e l m i o v l i v n ě n o h a r d w a r e m na sta vo vá ní pa ra m etr ů a př en os da t do G P U m a x i m á l n í s d í l e n í s p o l e č n ý c h d a t o v ý c h p o l í pr og ra m ov án í gr afi ck éh o řet ěz ce ! r e v o l u c e v p r o g r a m o v á n í 3 D g r a fi k y „ v e r t e x - s h a d e r s ” : z p r a c o v á n í v r c h o l ů s í t ě „ f r a g m e n t - s h a d e r s ” ( „ p i x e l - s h a d e r s ” ) : z p r a c o v á n í j e d n o t l i v ý c h p i x e l ů p ř e d v y k r e s l e n í m

4 Řetěz ec zprac ování 3D grafiky I Aplik ace Geo metri e Raste rizac e Ap lik ac e r e p r e z e n t a c e 3 D d a t ( v i r t u á l n í u l o ž e n í n a d i s k u i v p a m ě t i ), p a r a m e t r i z a c e, š a b l o n y,.. c h o v á n í o b j e k t ů : f y z i k á l n í s i m u l a c e, u m ě l á i n t e l i g e n c e i n t e r a k c e m e z i o b j e k t y : k o l i z e, d e f o r m a c e,..

5 Řetěz ec zprac ování 3D grafiky II Ge o m etr ie („ H W T& L”) m o d e l o v é t r a n s f o r m a c e ( p o m á h a j í a p l i k a č n í v r s t v ě ) p r o j e k č n í t r a n s f o r m a c e ( p e r s p e k t i v a ), o ř e z á v á n í v ý p o č e t o s v ě t l e n í ( p ř í p. j e n p ř í p r a v a j i s t ý c h v e k t o r ů.. ) d l o u h ý ř e t ě z e c ( p i p e l i n e ), ř e t ě z c ů m ů ž e b ý t v í c e Aplik ace Geo metri e Raste rizac e

6 Řetěz ec zprac ování 3D grafiky III Ra ste riz ac e (vy kr esl en í) p ř e v o d o b j e k t ů s c é n y d o j e d n o t l i v ý c h p i x e l ů v ý p o č e t v i d i t e l n o s t i ( „ d e p t h - b u f f e r ” ), m a p o v á n í t e x t u r a j e j i c h k o m b i n a c e, i n t e r p o l a c e b a r e v, p r ů h l e d n o s t, m l h a v y s o k ý p a r a l e l i s m u s ( n e z á v i s l é z p r a c o v á n í ) Aplik ace Geo metri e Raste rizac e

7 Repre zentac e 3D dat v po čít ač ov é gr afi ce exi stu je ně kol ik odl išn ýc h sy sté m ů re pr ez en tac e 3D da t nej bě žn ějš í je po vrc ho vá re pr ez en tac e (B- re p, „b ou nd ar y re pr es en tati on ”) p o u z e i n f o r m a c e o p o v r c h u t ě l e s n e j j e d n o d u š š í f o r m á t : p o v r c h j e t v o ř e n r o v i n n ý m i p l o š k a m i ( t r o j ú h e l n í k y ) ge o m etr ie + to pol ogi e s o u ř a d n i c e v r c h o l ů + n a p o j e n í p l o š e k ( s í ť t r o j ú h e l n í k ů ) s d í l e n í s o u s e d n í c h v r c h o l ů, h r a n a p o d. ( ú s p o r y )

8 Síť trojúh elníků V1V1 V2V2 V3V3 V5V5 V4V4 V6V6 F1F1 V 1 x,y,z,w V 2 x,y,z,w V 3 x,y,z,w V 4 x,y,z,w V 5 x,y,z,w... F 1 V 1,V 4, V 5 F 2 V 1,V 3, V 4 F 3 V 2,V 3, V 1 F 4 V 2,V 4, V 3... po do bn ost s rel ač ní da ta bá zí t a b u l k y v r c h o l ů ( V, „ v e r t e x ” ), h r a n ( E, „ e d g e ” ) a s t ě n ( F, „ f a c e ” ) j s o u n a v z á j e m p r o p o j e n y k a ž d á e n t i t a m ů ž e o b s a h o v a t l i b o v o l n ý p o č e t d a l š í c h a t r i b u t ů ( v r c h o l : n o r m á l a, b a r v a ; s t ě n a : t e x t u r a,.. ) o d k a z y p o m o c í i n d e x ů ( m í s t o u k a z a t e l ů )

9 Síť trojúh elníků hr an y se u ně kte rýc h sy sté m ů po uží vaj í, ha rd wa re s n imi vš ak vět šin ou ne po čít á ha rd wa re u mí při stu po vat k da tů m ús po rn ě: z a d á s e k o m p l e t n í p o l e v r c h o l ů j e d n o t l i v é s t ě n y ( t r o j ú h e l n í k y ) s e p a k u ž j e n o m o d k a z u j í d o p o l e v r c h o l ů p o m o c í i n d e x ů n e j r y c h l e j š í k o n s t r u k c e : p r o u ž k y t r o j ú h e l n í k ů ( „ t r i a n g l e s t r i p ” ) n e b o v ě j í ř e ( „ t r i a n g l e f a n ” )

10 Aproxi mace hladké ho tělesa ab y byl vz hle d co nej lep ší, m usí se po uží t vel ký po čet tro júh eln íků p r o k u l o v o u p l o c h u n ě k o l i k s t o v e k, p r o p o s t a v u č l o v ě k a a ž d e s í t k y t i s í c t r o j ú h e l n í k ů hla dk é m u vz hle du na po m áh á ně kte rá ze stí no va cíc h tec hni k i n t e r p o l a c e b a r v y n e b o n o r m á l y, v i z d á l e v pln é př es no sti se ne m usí kr esl it obj ekt y zn ač ně vz dál en é od po zo ro vat ele ú r o v e ň d e t a i l u ( L o D, „ L e v e l o f D e t a i l ” ), v i z d á l e

11 Aproxi mace hladké ho tělesa pr o re ali sti ck ý vý sle de k ani tak ov á př es no st ne m usí sta čit v i z o b r y s y „ h l a d k ý c h ” t ě l e s

12 Geom etrické transf ormac e v 3D ve kto r 3D so uř ad nic [ x, y, z ] tra nsf or m ac e ná so be ní m m ati cí 3 × 3 ř á d k o v ý v e k t o r s e n á s o b í z p r a v a tra nsf or m ač ní m ati ce 3 × 3 m ají po dst at né o m ez en í – nel ze je po uží t pr o po su nu tí (tr an sla ci)

13 Homo genní souřa dnice ve kto r ho m og en níc h so uř ad nic [ x, y, z, w ] tra nsf or m ac e ná so be ní m m ati cí 4 × 4 ho m og en ní m ati cí lze i po su no vat (tr an sla ce ) a pr ov ád ět pe rs pe kti vní pr oje kci

14 Převo d homo genní ch souřa dnic ho m og en ní so uř ad nic e [ x, y, z, w ] se př ev ád ějí na bě žn é ka rté zs ké so uř ad nic e vy děl en ím (je -li w≠ 0) [ x/ w, y/ w, z/ w ] so uř ad nic e [ x, y, z, 0 ] ne od po víd ají žá dn é m u vla stn ím u bo du v pr ost or u l z e j e c h á p a t j a k o r e p r e z e n t a c i s m ě r o v é h o v e k t o r u ( b o d v n e k o n e č n u ) př ev od z ob yč ejn ýc h so uř ad nic do ho m og en níc h je jed no du ch ý: [ x, y, z ] … [ x, y, z, 1 ]

15 Eleme ntární transf ormac e Nejbě žn ějš í jso u afi nn í tra nsf or m ac e: lev á ho rní po d m ati ce [ a 11 až a 33 ] vyj ad řuj e ro zm ěr a ori en tac i, pří pa dn ě zk os en í ve kto r [ t 1, t 2, t 3 ] ud áv á po su nu tí (tr an sla ci) p o s u n u t í j e a ž p o s l e d n í o p e r a c e

16 Kombi nace několi ka transf ormac í dík y vla stn ost e m m ati co vé ho ná so be ní (a so cia tivi ta) lze m ati ce sd ru žo vat : m ati ce slo že né tra nsf or m ac e se při pr aví př ed e m a při hr o m ad né m vý po čtu se jed no tliv é so uř ad né ve kto ry ná so bí již jen to ut o m ati cí

17 Otoče ní m ati ce ot oč en í kol e m os y „z” o úh el „α” : m ati ce ot áč en í ok olo ost at níc h so uř ad ný ch os jso u an alo gic ké mí sto za dá vá ní úhl u ot oč en í se ča sto po uží vá pří m o sin us a co sin us (a by se ne m us ela po čít at go nio m etr ie)

18 Posun utí (transl ace) m ati ce po su nu tí o ve kto r [ t 1, t 2, t 3 ]: ot oč en í kol e m lib ov oln é os y ro vn ob ěž né s os ou „z” lze re ali zo vat jak o: po su nu tí, ot oč en í kol e m „z” a po su nu tí zp ět

19 Změn a měřítk a zv ětš en í cel éh o obj ekt u se stř ed e m v po čát ku: pr ot až en í po uz e ve sm ěr u os y „z” :

20 Zkose ní m ati ce ob ec né ho zk os en í: uk áz ka v ro vin ě: yx[0,0]yx

21 Transf ormac e tuhéh o tělesa za ch ov áv á tva r těl es, m ěn í po uz e jeji ch ori en tac i s k l á d á s e j e n o m z p o s u n u t í a o t á č e n í č a s t o s e p o u ž í v á k p ř e v o d u m e z i s o u ř a d n i c o v ý m i s y s t é m y ( n a p ř. m e z i „ s v ě t o v ý m i ” s o u ř a d n i c e m i a s y s t é m e m s p o j e n ý m s p o z o r o v a t e l e m ) yxz(levor uký = pravot očivý systé m) v (view) u (up)r (right)

22 Projek ce ro vn ob ěž né pr o mí tá ní n e r e á l n ý p o h l e d ( j a k o z n e k o n e č n é v z d á l e n o s t i ) pe rs pe kti vní pr oje kc e p ř i r o z e n ý p o h l e d ( o k o, f o t o a p a r á t, k a m e r a ) i m p l e m e n t a c e p o t ř e b u j e o p e r a c i d ě l e n í xyz

23 Persp ektivní projek ce xyz z zpřeno s sousta vy kamer y [v,r,u] do [z,x,y] projek ční transf ormac e a ořezá ní cílový box: [-1,- 1,0] až [1,1,1] pohle dová transf ormac e

24 Projek ční transf ormac e po su nu tí př ed ní oř ez áv ací ro vin y do po čát ku pe rs pe kti vní pr oje kc e s fak tor e m „z + z fr ” z fr z bk zxy

25 Stínov ání po zo ro va ný od stí n na po vrc hu plo šk y je zá vis lý na její ori en tac i v p ro sto ru + na pol oz e sv ět eln ýc h zd roj ů exi stu je m no ho os vět lov ací ch m od elů l o k á l n í v ý p o č e t o d r a z u s v ě t l a n a p o v r c h u t ě l e s a i d e á l e m j e p ř e s n é n a p o d o b e n í p ř í r o d y Ph on gů v sv ět eln ý m od el j e d n o d u c h ý v ý p o č e t a l e s p o ň k v a l i t a t i v n ě s o u h l a s í s f y z i k á l n í r e a l i t o u k v ů l i l e s k l é s l o ž c e j e n e j l e p š í p o č í t a t h o v k a ž d é m p i x e l u s i n t e r p o l a c í n o r m á l y

26 Situac e LNRVaabA

27 Phong ův model osvětl ení sv ětl o se skl ád á ze tří slo že k: z b y t k o v é s v ě t l o ( „ a m b i e n t ” ) – n á h r a d a z a n e p o č í t a n é s e k u n d á r n í o d r a z y d i f u s n í o d r a z ( „ d i f f u s e ” ) – i d e á l n ě m a t n é t ě l e s o l e s k l ý o d r a z ( „ s p e c u l a r ” ) – n e o s t r ý o d r a z, o d l e s k

28 Param etry Phong ova model u op tic ké vla stn ost i po vrc hu těl es a („ m at eri ál” ): v l a s t n í b a r v a t ě l e s a „ C ” ( p ř i o s v ě t l e n í b í l ý m s v ě t l e m ) k o e f i c i e n t y „ k a ”, „ k d ” a „ k s ” ( c h a r a k t e r p o v r c h u : m a t n ý, l e s k l ý,.. ) e x p o n e n t o d l e s k u „ h ” ( č í m v ě t š í, t í m j e o d l e s k o s t ř e j š í ) vla stn ost i zd roj e sv ětl a: b a r v a a i n t e n z i t a „ C L ” ( t ř í s l o ž k o v ý v e k t o r, s b a r v o u z d r o j e s e n á s o b í p o s l o ž k á c h ) víc e zd roj ů sv ětl a:

29 Spojit é stínov ání Tři tec hni ky po uži tí os vět lov ací ho m od elu : ko nst an tní stí no vá ní („fl at sh adi ng ”) c e l á p l o š k a s e v y b a r v í s t e j n ý m o d s t í n e m Go ur au do va int er pol ac e ba rvy o s v ě t l e n í s e p o č í t á v e v r c h o l e c h, u v n i t ř p l o š e k s e b a r v a l i n e á r n ě i n t e r p o l u j e Ph on go va int er pol ac e no rm ály p r o k a ž d ý p i x e l p l o š k y s e n o r m á l o v ý v e k t o r l i n e á r n ě i n t e r p o l u j e a s p o č í t á s v ě t e l n ý m o d e l n e j d o k o n a l e j š í m e t o d a, v y ž a d u j e s p o l u p r á c i H W

30 Spojit é stínov ání ko nst an tní stí no vá ní je ad ek vát ní u hr an atý ch těl es int er pol ac e ba rvy po tla čuj e „hr an atý ” vz hle d ap ro- xi m ov an ýc h těl es o s t r é o d l e s k y s e v š a k n e k r e s l í k o r e k t n ě int er pol ac e no rm ály je vh od ná i pr o vy so ký les k trojúh elník interp olace barvy flat shadin g Goura ud shadin g Phong shadin g

31 Mlha př ed ch ozí os vět lov ací m od el po čít al po uz e int er ak ci sv ětl a s p ov rc he m př ed m ět ů vli v pr ost ře dí (at m osf ér y) na šíř en í pa pr sk u n e j j e d n o d u š š í a n e j č a s t ě j š í j e v ý p o č e t m l h y ( u m í i H W ) p ř e s n ý v ý p o č e t p o h l c e n í / r o z p t y l u p a p r s k u v k o u ř i n e b o a e r o s o l u j e m n o h e m s l o ž i t ě j š í ba rv a ml hy „C f ” (o bv ykl e bíl á) se mí sí s ba rv ou těl es a l i n e á r n í m l h a ( k o e fi c i e n t s e m ě n í l i n e á r n ě s e v z d á l e n o s t í ) e x p o n e n c i á l n í m l h a ( e x p o n e n c i á l n í z á v i s l o s t k o e fi c i e n t u n a v z d á l e n o s t i p ř e d m ě t u o d p o z o r o v a t e l e )

32 Mlha mí ch án í ml hy s ba rv ou těl es a „ C f ” j e b a r v a m l h y, „ C s ” b a r v a t ě l e s a „ f ” j e k o e f i c i e n t lin eá rní ml ha „ z e n d ” a „ z s t a r t ” j s o u v z d á l e n o s t i z a č á t k u a k o n c e m l h y „ z ” j e v z d á l e n o s t v y k r e s l o v a n é h o b o d u o d p o z o r o v a t e l e ex po ne nci áln í ml ha „ D ” j e h u s t o t a m l h y ( č í m j e v ě t š í, t í m j e m l h a h u s t š í )

33 Úrove ň detailu (LoD) Optim áln í ef ekt ivit a vy kr esl ov án í: v z d á l e n é d e t a i l y ( v e l i k o s t í s r o v n a t e l n é s r o z m ě r e m p i x e l u ) s e u ž n e m u s í v y k r e s l o v a t n a o p a k – n e j b l i ž š í p ř e d m ě t y ( n a k t e r é s e d í v á u ž i v a t e l ) s i z a s l u h u j í c o m o ž n á n e j l e p š í v i z u á l n í k v a l i t u dy na mi ck á úr ov eň de tail u („d yn a mi c Le vel of De tail ”) p r o g r a m a u t o m a t i c k y p ř i z p ů s o b u j e j e m n o s t d a t l z e i m p l e m e n t o v a t g l o b á l n í d o l a ď o v á n í ( n a p ř. z a d á n í c e l k o v é h o p o č t u t r o j ú h e l n í k ů, k t e r é s e m a j í v y k r e s l o v a t ) n á r o č n á p ř í p r a v a d a t : p ř e d e m s e m u s í p ř i p r a v i t n ě k o l i k ú r o v n í d a t ( n e b o a l g o r i t m u s s p o j i t é h o z j e m ň o v á n í )

34 Hierar chické model ování sc én a se skl ád á z obj ekt ů o b j e k t y s e s k l á d a j í z k o m p o n e n t - k o m p o n e n t y s e s k l á d a j í z e s o u č á s t e k » s o u č á s t k y s e s k l á d a j í z... Hierar chi ck é m od elo vá ní je při ro ze né a ef ekt ivn í v d a t a b á z i m o h o u b ý t u l o ž e n y c e l é k n i h o v n y d í l ů, z e k t e r ý c h s i k o n s t u k t é r / u m ě l e c v y b í r á d a l š í „ p ř i d r u ž e n é ” v l a s t n o s t i h i e r a r c h i c k é m e t o d i k y : - a t r i b u t y u z l ů h i e r a r c h i e ( d ě d i č n o s t, p a r a m e t r i z o v a t e l n o s t ) - r e l a t i v n í t r a n s f o r m a č n í m a t i c e ( p o l o h a p o t o m k a j e d e fi n o v á n a p o u z e v z h l e d e m k j e h o r o d i č o v s k é m u u z l u )

35 Strom scény Strom sc én y je ulo že n na dis ku k v ů l i v í c e n á s o b n ý m o d k a z ů m s e n ě k d y v p a m ě t i r o z v í j í robothlavatělorukanoha rukaoko rame no loket zápě stí... palecprst1prst2 T1T1 T2T2 T3T3

36 Relati vní transf ormac e Trans for m ac e list u sc én y (sí ť tro júh eln íků ) do sv ět ov ýc h so uř ad nic se skl ád á z po slo up no sti tra nsf or m ací s l o ž e n é t r a n s f o r m a c e m ů ž e o m e z e n ě p o č í t a t a ž G P U robothlavatělorukanoha rukaoko rame no loket zápě stí... palecprst1prst2 T5T5 T7T7 T9T9 T 9 · T 7 · T 5

37 Výpoč et viditel nosti his tor ick y pr vní ko m po ne nt a př en es en á na ha rd wa re (Si lic on Gr ap hic s) alg ori tm us: pa m ěť hlo ub ky („d ep th- bu ffe r”) v i d i t e l n o s t s e ř e š í n a ú r o v n i j e d n o t l i v ý c h p i x e l ů p r o k a ž d ý p i x e l j e v b u f f e r u u l o ž e n a v z d á l e n o s t ( h l o u b k a ) n e j b l i ž š í h o d o s u d n a k r e s l e n é h o b o d u h l o u b k a j e 1 6 - n e b o 2 4 - b i t o v é č í s l o ( p e v n á d e s. č á r k a ) s o u ř a d n i c e „ z ” n e b o „ w ” ( h o m o g e n n í s l o ž k a p ř e d v y d ě l e n í m, v ý h o d n ě j š í p r o i n t e r p o l a c i i k v ů l i p ř e s n o s t i ) p ř i k r e s l e n í s e m u s í g r a fi c k á p r i m i t i v a r o z k l á d a t n a j e d n o t l i v é p i x e l y ( „ r a s t e r i z a c e ”, ř á d k o v ý r o z k l a d )

38 Paměť hloubk y hloubk a 24 bitů RGB obraz ová paměť „color buffer” paměť hloubk y „depth buffer”

39 Paměť hloubk y Výho dy: v y k r e s l o v á n í o b j e k t ů v l i b o v o l n é m p o ř a d í s p r á v n ě v y ř e š í v š e c h n y p r o b l e m a t i c k é s i t u a c e ( c y k l y ) j e d n o d u c h o s t Ţ s n a d n á i m p l e m e n t a c e v h a r d w a r e, m a s i v n í p a r a l e l i s m u s Nevý ho dy: o m e z e n á p ř e s n o s t h l o u b k y „ z ” ( m í s t o n í „ w ” ) p o z o r n a „ Z - fi g h t i n g ” ( p o l y g o n y v j e d n é r o v i n ě ) v ý p o č e t j e z á v i s l ý n a s m ě r u p o h l e d u p o l o p r ů h l e d n é p l o c h y s e m u s í t ř í d i t

40 Textur y

41 vyl ep šuj í vz hle d po vrc hu těl es m o d i f i k a c e b a r v y ( „ b i t m a p a ” ) d o j e m h r b o l a t é h o p o v r c h u ( „ b u m p - t e x t u r e ” ) p ř í p. m o d u l a c e d a l š í c h p a r a m e t r ů : p r ů h l e d n o s t, o d r a z i v o s t, l e s k Defini ce tex tur y: 2 D d a t o v ý m p o l e m ( r a s t r, „ b i t m a p a ” ) – n e j č a s t ě j š í, u m í t o k a ž d ý H W 3 D d a t o v ý m p o l e m ( „ v o l u m e t e x t u r e ” ) p r o c e d u r á l n ě – a l g o r i t m e m v k a ž d é m p i x e l u ( p r o g r a m o v a t e l n é G P U )

42 Mapo vání textur 2D tex tur y se m usí na po vrc h těl es a m ap ov at t e x t u r o v é s o u ř a d n i c e [ u, v ] s e z a d á v a j í v k a ž d é m v r c h o l u g r a f i c k ý a k c e l e r á t o r j e i n t e r p o l u j e d o j e d n o t l i v ý c h p i x e l ů v b i t m a p ě s e m u s í i n t e p o l o v a t ( m e z i s o u s e d n í m i p i x e l y t e x t u r y = „ t e x e l y ” ) uvuvCoke

43 Kombi nace textur m od er ní G P U u m ějí v jed no m pix elu ko m bin ov at ně kol ik tex tur g l o b á l n í ( p o m a l u s e m ě n í c í ) z á k l a d + d e t a i l n í t e x t u r a p ř e d e m s p o č í t a n é o s v ě t l e n í ( g l o b á l n í o s v ě t l e n í ) „ e n v i r o n m e n t m a p s ” – o d l e s k z b y t k u s c é n y a p o d. +

44 Zprac ování pixelů Raste riz ac e – ro zkl ad pri mit iv (tr ojú hel ník ů) na pix ely a l g o r i t m u s ř á d k o v é h o r o z k l a d u ( „ s c a n l i n e ” ) i m p l e m e n t a c e v h a r d w a r u u ž n ě k o l i k l e t s e u v a ž u j e o s l o ž i t ě j š í c h p r i m i t i v e c h ( B è z i e r o v y p l o c h y, N U R B S, „ s u b d i v i s i o n ” p l o c h y ) zp ra co vá ní pix elů – fin áln í fáz e Ra ste riz ac e i n t e r p o l a c e b a r v y, h l o u b k y a t e x t u r o v ý c h s o u ř a d n i c t e s t h l o u b k y ( „ d e p t h t e s t ” ) p ř í p a d n ě t é ž : t e s t š a b l o n y ( „ s t e n c i l t e s t ” ) a u v i d i t e l n é h o p i x e l u v ý p o č e t p r ů h l e d n o s t i

45 Interp olace v pixele ch Snah ou je po uží vat co nej víc e lin eá rní int er pol aci h l o u b k u „ z ” l z e i n t e r p o l o v a t l i n e á r n ě p r o t e x t u r o v é s o u ř a d n i c e n e b o „ w ” s e m u s í i m p l e m e n t o v a t p e r s p e k t i v n ě - k o r e k t n í i n t e r p o l a c e : l i n e á r n ě i n t e r p o l u j i „ 1 / w ”, „ u / w ” i „ v / w ”, [ u, v ] p a k d o p o č í t á m d ě l e n í m ( h y p e r b o l i c k á i n t e r p o l a c e ) [x 1,y 1, z 1,1/w 1,u 1 /w 1,v 1 /w 1 ] [x 3,y 3, z 3,1/w 3,u 3 /w 3,v 3 /w 3 ] [x 2,y 2, z 2,1/w 2,u 2 /w 2,v 2 /w 2 ] 1.2.3. w = 1 / (1/w) u = (u/w) / (1/w)...

46 Průhle dnost pol op rů hle dn é plo ch y ne bo tex tur y d a l š í a t r i b u t p i x e l u – k a n á l „ α ” ( „ a l p h a c h a n n e l ” ) d e fi - n u j e n e p r ů h l e d n o s t 0... a b s o l u t n ě p r ů h l e d n ý p o v r c h 1... n e p r ů h l e d n ý m a t e r i á l ( z a n í m u ž n i c n e p r o s v í t á ) v p r a x i s e p o u ž í v á s t e j n é r o z l i š e n í j a k o u R, G, B ( 8 a ž 1 6 b i t ů ) – b a r e v n ý p r o s t o r s e r o z š i ř u j e n a [ R, G, B, α ] d a l š í u ž í v a n ý f o r m á t : [ R α, G α, B α, α ] pol op rů hle dn ost a gr afi ck é ka rty p ř i v y k r e s l o v á n í p o l o p r ů h l e d n é s c é n y j e p o t ř e b a p l o š k y t ř í d i t o d z a d u d o p ř e d u ( n e b o b u d e k r e s b a n e k o r e k t n í )

47 Šablo ny („sten cils“) Další bu ffe r vel iko sti ob ra zo vk y n e n í p ř e d e m d á n o, p r o j a k é ú č e l y s e m á p o u ž í t j e h o p o u ž i t í j e t ř e b a p r o g r a m o v a t n e b o a l e s p o ň k o n - fi g u r o v a t ( k d i s p o z i c i j s o u : b o o l o v s k é I / O o p e r a c e, t e s t y ) b ě ž n ě s e k e k a ž d é m u p i x e l u d á p ř i p o j i t 8 b i t ů š a b l o n d o š a b l o n y s e z a p i s u j e ( a / n e b o s e t e s t u j e ) v j e d n é z p o s l e d n í c h f á z í z p r a c o v á n í p i x e l u Aplika ce: z e j m é n a p ř i v í c e p r ů c h o d o v é m z p r a c o v á n í ( v i z ) o m e z e n é v y k r e s l o v á n í, s e l e k t i v n í h l o u b k o v ý t e s t, v ý p o č e t v r ž e n ý c h s t í n ů,...

48 Progr amov ání GPU re vol uč ní (al e log ick ý) kr ok ku př ed u N V i d i a a M i c r o s o f t – D i r e c t X 8. 0 : „ v e r t e x s h a d e r s ” V S a „ p i x e l s h a d e r s ” P S ( 2 0 0 0 ) O p e n G L – N V i d i a „ e x t e n s i o n s ” ( 2 0 0 1 ) D i r e c t X 8. 1 – P S v e r z e 1. 2 a ž 1. 4 / j e n A T I / ( 2 0 0 1 ) D i r e c t X 9. 0 – V S 2. 0, P S 2. 0 ( 2 0 0 2 ) v e l m i s i l n é s p e c i f i k a c e V S 3. 0 a P S 3. 0 z a t í m v ě t š i n a a k c e l e r á t o r ů s i m u l u j e s o f t w a r o v ě „ H i g h L e v e l S h a d i n g L a n g u a g e ” H L S L : p r o č l o v ě k a č i t e l n ě j š í, s t r u k t u r o v a n é p ř í k a z y, d e f i n i c e t y p ů ( p o d t í m j e t ř e b a s t á l e v i d ě t h a r d w a r o v á o m e z e n í ! )

49 Shade rs Princi p pr og ra m ov án í (k on fig ur ac e) G P U: n ě k t e r é č á s t i z o b r a z o v a c í h o ř e t ě z c e z ů s t á v a j í n e m ě n n é ( a l g o r i t m y o ř e z á v á n í, o k é n k o v á t r a n s f o r m a c e, v ý p o č t y m l h y, p r ů h l e d n o s t i, t e s t y h l o u b k y a š a b l o n y ) d v ě n e j d ů l e ž i t ě j š í f á z e s e m o h o u p r o g r a m o v a t z v e n č í : - z p r a c o v á n í j e d n o h o v r c h o l u t r o j ú h e l n í k a - z p r a c o v á n í j e d n o h o p i x e l u t r o j ú h e l n í k a ( n e b o c e l é h o s e g m e n t u – f r a g m e n t u ) „ v e r t e x s h a d e r ” s e b l í ž í p r o g r a m u v a s s e m b l e r u b ě ž n ý c h C P U ( p o č e t i n s t r u k c í i z p r a c. d a t j s o u o m e z e n y ) „ p i x e l s h a d e r ” j e v e l m i o m e z e n ý, m á l o i n s t r u k c í, „ s k r i p t ” p o p i s u j í c í k o n fi g u r a c i j i s t ý c h e t a p r a s t e r i z a c e

50 Progr amov atelný grafick ý řetěze c Data vrcho lu Topol ogie sítě Pevn ý řetěz ec T & L Verte x- shad er Ořez ání a okén ková transf orma ce Pixel- shad er Komb inace textur Alfa- test, stenci l-test, Z-test Mlha Geom etrie Raster izace HW T& L („ Ha rd wa re Tr an sfo rm & Lig hti ng ”) o d N v i d i a G e F o r c e 2 5 6 ( 1 9 9 9 ) Ra ste riz ac e se na čip u děl á již dlo uh o s t a n i c e S i l i c o n G r a p h i c s A P I : I r i s G L p o d. m u l t i - t e x t u r o v á n í : a ž d r u h á p o l o v i n a 9 0. l e t

51 Vertex - shade rs zp ra co vá va ná da ta vrc hol u (dl e VS 1. 1): s o u ř a d n i c e v r c h o l u n o r m á l o v ý v e k t o r b a r v a p o v r c h u t e x t u r o v é s o u ř a d n i c e d a l š í a t r i b u t y s i m ů ž e z v o l i t p r o g r a m á t o r vý stu p (d o zp ra co vá ní pix elů /fr ag m en tů) : s o u ř a d n i c e v r c h o l u a n o r m á l o v ý v e k t o r d v ě b a r v y p r o s t í n o v á n í ( m a t n á a l e s k l á s l o ž k a ) b a r v a m l h y v e l i k o s t b o d u ( p r o b o d o v á p r i m i t i v a „ p o i n t s p r i t e ” ) a ž 8 t e x t u r o v ý c h s o u ř a d n i c

52 Prostř edí VS 1.1 Pomo cné registr y (až 12 vektor ů) Vertex - shade r (až 128 instru kcí) „Kons tanty” (až 96 vektor ů) Vstup ní data vrchol u (až 16 vektor ů) Výstu pní data vrchol u (až 13 vektor ů) Souřa dnice, normá la, 2 barvy, mlha, veliko st bodu (sprite ), 8 textur ových souřa dnic

53 Výpoč et ve vrchol u vý sle de k po kr ač uje dál v ce stě zo br az ov ací m řet ěz ce m v ě t š i n a h o d n o t j e p o z d ě j i a u t o m a t i c k y i n t e r p o l o v á n a v r a s t e r i z á t o r u d o j e d n o t l i v ý c h p i x e l ů n ě k t e r á d a t a m ů ž e v y u ž í v a t i „ f r a g m e n t - s h a d e r ” nel ze při da t no vý vrc hol ! pr og ra m ov án í: a s s e m b l e r n e b o n ě k o l i k v y š š í c h v ý v o j o v ý c h p r o s t ř e d í : C g / N V i d i a, R e n d e r M o n k e y / A T I, H L S L / M i c r o s o f t 4 - s l o ž k o v é v e k t o r y 3 2 - b i t o v ý c h č í s e l ( „ fl o a t [ 4 ] ” ) v í c e v e k t o r ů z a s e b o u t v o ř í m a t i c e 4 × 3 n e b o 4 × 4, v š e c h n y i n s t r u k c e u m ě j í i m p l i c i t n ě p e r m u t a c e s l o ž e k,..

54 Příkla d v HLSL float4x 4 World : WORL D; float4x 4 View : VIEW; float4x 4 Projec tion : PROJ ECTI ON; struct VS_O UTPU T { float4 Pos : POSI TION; float4 Diff : COLO R0; float4 Spec : COLO R1; float2 Tex : TEXC OORD 0; }; VS_O UTPU T VS ( float3 Pos : POSI TION, float3 Norm : NOR MAL, float2 Tex : TEXC OORD 0 ) { VS_O UTPU T Out = (VS_ OUTP UT)0; float3 L = - lightDi r; float4x 4 World View = mul( World, View ); float3 P = mul( float4( Pos, 1), (float4 x3)Wo rldVie w ); // positio n (view space ) float3 N = norma lize( mul( Norm, (float3 x3)Wo rldVie w ) ); // norma l (view space ) float3 R = norma lize( 2 * dot(N, L) * N – L ); // reflecti on vector (view space ) float3 V = - norma lize( P ); // view directi on (view space ) Out.P os = mul( float4( P, 1), Projec tion ); // positio n (proje cted) Out.Di ff = I_a * k_a + I_d * k_d * max( 0, dot(N, L) ); // diffuse + ambie nt Out.S pec = I_s * k_s * pow( max(0, dot(R, V) ), 8 ); // specul ar Out.Te x = Tex; return Out; }

55 Pixel- shade rs (fragm ent- shade rs) vst up ní da ta pr o jed en pix el (dl e PS 1.x ): i n t e r p o l o v a n á m a t n á a l e s k l á b a r v a ( R G B ) i n t e r p o l o v a n á p r ů h l e d n o s t ( „ α ” ) o s m k o n s t a n t i n t e r p o l o v a n é t e x t u r o v é s o u ř a d n i c e ( m a x i m á l n ě o s m ) h l o u b k a „ z ” vý stu p: v ý s l e d n á b a r v a p i x e l u ( R G B α ) p ř í p a d n ě z m ě n ě n á h l o u b k a „ z ”

56 Prostř edí PS Pomo cné registr y Pixel- shade r ALU Adres ování textur Difusn í a lesklé světlo Regist ry konst ant hloubk a „z” Textur ové souřa dnice RGBA

57 Výpoč et v pixelu kó d je vel mi úz ce sv áz án s pix elo vý mi int er pol át or y p ř í s n é l i m i t y n a p o č e t i n s t r u k c í a d é l k u „ p i p e l i n e ” v ý p o č e t m u s í b ě ž e t c o n e j r y c h l e j i, j i n a k b y s e m o h l s n i ž o v a t p i x e l o v ý v ý k o n ( „ fi l l - r a t e ” ) nel ze m odi fik ov at so uř ad nic i pix elu ! PS lze ch áp at spí š jak o ko nfi gu ra ční skr ipt ně kte rýc h fáz í ra ste riz ac e k o m b i n a c e t e x t u r + v ý p o č e t v ý s l e d n é b a r v y p i x e l u n ě k d y j e d o v o l e n o m o d i fi k o v a t h l o u b k u „ z ” ( n a p ř. p r o „ h y p e r t e x t u r y ” )

58 Příkla d v HLSL textur e Tex0 ; sampl er Sampl er = sampl er_sta te { Textur e = (Tex0) ; MipFilt er = LINEA R; MinFilt er = LINEA R; MagFi lter = LINEA R; }; float4 PS ( float4 Diff : COLO R0, float4 Spec : COLO R1, float2 Tex : TEXC OORD 0 ) : COLO R { return tex2D( Sampl er, Tex ) * Diff + Spec; } techni que TBoth Shade rs { pass P0 { // both vertex & pixel shade rs Vertex Shade r = compil e vs_1_ 1 VS(); PixelS hader = compil e ps_1_ 1 PS(); } // shade r sampl es: © 2002 Micros oft Inc.

59 Pokro čilé techni ky Nejdů lež itěj ší po kr oči lé tec hni ky uží va né v ha rd wa re m po dp or ov an é 3D gr afi ce: „ a n t i - a l i a s i n g ” ( „ v y h l a z o v á n í ” ) „ m i p - m a p p i n g ” a n e i z o t r o p i c k é fi l t r o v á n í v í c e p r ů c h o d o v é z p r a c o v á n í v ý p o č e t v r ž e n ý c h s t í n ů „ b u m p - m a p p i n g ” „ e n v i r o n m e n t - m a p p i n g ” ča sto jso u to trik y so uvi sej ící s m ap ov án ím tex tur n e v ž d y j e p o t ř e b a p r o g r a m o v a t e l n á G P U

60 Anti- aliasin g při ka žd é m pr avi del né m bo do vé m vz or ko vá ní sp ojit ě de fin ov an é fu nk ce vz nik á „ali as ” z u b a t é o b r y s y h l a d k ý c h p ř e d m ě t ů „ z r n ě n í ” a p ř e s k a k o v á n í u v z d á l e n ý c h t e x t u r i n t e r f e r e n c e p r a v i d e l n é h o v z o r k u v d á l c e „a nti - ali asi ng ” je oz na če ní tec hni k po tla čuj ící ch ali as „ s u p e r s a m p l i n g ” – m e t o d a h r u b é s í l y - o b r a z s e r a s t e r i z u j e v n ě k o l i k r á t z v ě t š e n é m r o z l i š e n í - fi n á l n í v ý s t u p s e z í s k á p r ů m ě r o v á n í m t o h o t o m e z i v ý s l e d k u ( k o n fi g u r a c e f a k t o r u z v ě t š e n í i fi l t r ů... )

61 Anti- aliasin g mí sto zu ba týc h ok raj ů se na ob rys u obj eví pix ely s p ře ch od ov ým i ba rv a mi:

62 Filtrov ání textur tex tur y po zo ro va né z vel ké dál ky se tak é m us ejí filtr ov at (pr ů m ěr ov at při zm en šo vá ní) j i n a k b y s e p r o j e v i l „ a l i a s ” – z r n ě n í p ř i p o h y b u k a m e r y exi stu je ně kol ik tec hni k, jak si zm en še né tex tur y př ed e m při pr avi t: „ M I P - m a p ” ( „ m u l t u m i n p a r v o ” ) j e a s i n e j z n á m ě j š í „ r i p m a p ” ( H e w l e t t - P a c k a r d ) o b s a h u j e i n e i z o t r o p n í z m e n š e n i n y n e i z o t r o p n í fi l t r a c e – d y n a m i c k y s e p o č í t á, v j a k é m p o m ě r u s e m á t e x t u r a z m e n š i t, s č í t á s e j e n p á r t e x e l ů s o u č t o v é t a b u l k y – p ř e d e m s e č t e n é L U o b d é l n í k y

63 MIP- mappi ng př ed e m se tex tur a zm en ší na bin ár ní zlo mk y (1/ 4, 1/ 16, ap od.) p ř i z m e n š o v á n í s e p o u ž i j e p r ů m ě r o v á n í b a r e v v s o u s e d n í c h p i x e l e c h p r o 3 - k a n á l o v o u b a r v u ( n a p ř. R G B ) e x i s t u j e š i k o v n é u s p o ř á d á n í M I P - m a p y – z m e n š e n á č t v r t i n a t e x t u r y s e v p a m ě t i u l o ž í m í s t o c h y b ě j í c í č t v r t é s l o ž k y po uži tí MI P- m ap y u r č í s e ú r o v e ň a z n í s e p ř e č t e j e d i n á b a r v a ( r y c h l o s t ) i n t e r p o l u j e s e m e z i d v ě m a ú r o v n ě m i M I P - m a p y, p ř í p a d n ě j e š t ě m e z i č t y ř m i s o u s e d y v j e m n ě j š í ú r o v n i

64 MIP- mapa G0G0 B0B0 R0R0 G1G1 B1B1 R1R1 G2G2 B2B2 R2R2 G3G3 B3B3 R3R3

65 Neizot ropick é filtrová ní zp ět ně pr o mí tn utý pix el m á na tex tuř e tva r de for m ov an éh o čtv er ce z M I P - m a p y s e v y b e r e t a k o v á ú r o v e ň, a b y m ě l a k r a t š í s t r a n a t o h o č t y ř ú h e l n í k a d é l k u c c a j e d n o h o t e x e l u p o d é l d e l š í s t r a n y č t y ř ú h e l n í k a s e p r ů m ě r u j e zobra zovan ý pixel přístu p do MIP- mapy

66 Součt ové tabulk y pr o ryc hlé po čít án í so učt u (a te dy i pr ů m ěr u) lib ov oln éh o ob dél ník a p ř e d e m s e p ř i p r a v í s o u č t y v š e c h o b d é l n í k ů z a č í n a j í c í c h v l e v é m h o r n í m r o h u t e x t u r y j e p o t ř e b a v ě t š í p ř e s n o s t ( m i n i m á l n ě 1 6 b i t ů m í s t o 8 ) ABCD X X = A + B – C - D A, B, C, D... levé horní součty

67 Více průch odů ně kte ré ef ekt y se be z víc e pr ůc ho dů sc én ou ne ob ejd ou p o u ž i t í š a b l o n, a k u m u l a č n í h o b u f f e r u m ezi jed no tliv ým i pr ůc ho dy se za ch ov áv á (m ůž e za ch ov at – dle po tře by ): š a b l o n y b u f f e r h l o u b k y b u f f e r b a r v y ( v ý s l e d n á b i t m a p a ) a k u m u l a č n í b u f f e r ( d o n ě j l z e s č í t a t b a r e v n é b u f f e r y ) to pol ogi e sc én y se m ezi pr ůc ho dy ob yč ejn ě ne m ěn í g e o m e t r i e a t r a n s f o r m a c e s e m ě n i t m o h o u ( p r o m ě k k é s t í n y n e b o r o z m a z á n í p o h y b e m )

68 Výpoč et vržený ch stínů vý po čet stí nů, kte ré vz nik ají při os vět len í sc én y ost rý m zd roj e m sv ětl a uč eb nic ov ý pří kla d po uži tí ša blo ny („s te nci l”) a víc e pr ůc ho dů sc én ou š a b l o n a m a s k u j e p l o c h y, n a k t e r é m á s t í n d o p a d a t, a z a ř í d í, a b y s e s t í n y n e z d v o j o v a l y jed no du ch ý alg ori tm us: s t í n y s e v r h a j í n a j e d i n o u r o v i n u ( „ r o v i n a p ř í j e m c e ” ) o b r a z s t í n u m ů ž e b ý t n e p r ů h l e d n ý ( v e s t í n u z a n i k á p ů v o d n í b a r v a / t e x t u r a p ř í j e m c e ) n e b o p r ů h l e d n ý ( s t í n j e n s n i ž u j e m n o ž s t v í s v ě t l a )

69 Stíny vrhan é do roviny jed no du ch ý alg ori tm us, stí ny se vr haj í do jed iné ro vin y p r o j e k č n í m a t i c e z 3 D p r o s t o r u d o r o v i n y p ř í j e m c e plochá stínov á tělesa šablon a příjem ce stínu vrhači stínů

70 Stíny vrhan é do roviny po stu p vy kr esl ov án í: 1. c e l á 3 D s c é n a s e v y k r e s l í v b ě ž n é m p r o m í t á n í - p ř í j e m c e n a s t a v u j e d a n ý b i t š a b l o n y - v š e c h n y o s t a t n í p l o c h y t e n t o b i t n u l u j í 2. s v y p n u t ý m t e s t e m h l o u b k y s e v š i c h n i p o t e n c i á l n í v r h a č i s t í n u p r o m í t n o u d o r o v i n y p ř í j e m c e - m u s í s e n a s t a v i t s p e c i á l n í p r o m í t a c í m a t i c e - s t í n o v é p l o š k y s e k r e s l í p o u z e n a m í s t a, k d e j e n a s t a v e n d a n ý b i t š a b l o n y ( z p r v n í h o p r ů c h o d u ) - p o u ž í v a j í - l i s e p o l o p r ů h l e d n é s t í n o v é p l o š k y, j e n e ž á d o u c í, a b y s e d v ě p ř e k r e s l i l y p ř e s s e b e – i t a d y p o m ů ž e š a b l o n a ( p r v n í s t í n o v á p l o š k a j i z p á t k y v y n u l u j e )

71 Bump- mappi ng sp eci áln í tex tur ov ací tec hni ka – vyt vá ří doj e m ne ro vn éh o po vrc hu n a h r a z u j e v e l m i k o m p l i k o v a n o u m i k r o - g e o m e t r i i m o d i fi k a c e ( m o d u l a c e ) n o r m á l o v é h o v e k t o r u p o z o r o v a t e l z í s k á v á v ě t š i n u i n f o r m a c e o s t r u k t u ř e p o v r c h u t ě l e s z e s t í n o v á n í ( o d l e s k ů ) im ple m en tac e př ed po klá dá sp olu pr áci ra ste riz ač ní ho ha rd wa re a l e s p o ň k o m b i n a c e v í c e t e x t u r l e p š í j e p o č í t a t s l o ž k y o s v ě t l e n í p ř í m o v j e d n o t l i v ý c h p i x e l e c h – s p o l u p r á c e s P h o n g o v ý m s t í n o v á n í m

72 Situac e za dá ní: dif er en ční fu nk ce b( u,v ) de fin ují cí od ch ylk u si m ulo va né ho po vrc hu od jeh o jed no du šší ap ro xi m ac e NUVN'b(u,v)původ ní normá la odchýl ená normá la

73 Výpoč et odchýl ené normá ly si m ulo va ný bo d na po vrc hu hr bol at éh o těl es a od ch ýle ní no rm álo vé ho ve kto ru v po dst at ě je po tře ba zn át po uz e pa rci áln í de riv ac e fu nk ce b( u,v ) – a ne její ho dn ot u...

74 Další textur ovací techni ky co m ůž e být de fini ční m ob or e m tex tur y ? d v o j r o z m ě r n é s o u ř a d n i c e n a p o v r c h u t ě l e s a [ u, v ] – k l a s i c k ý p ř í s t u p t r o j r o z m ě r n é s o u ř a d n i c e [ x, y, z ] – t z v. „ p r o s t o r o v á t e x t u r a ” - v n i t ř n í s t r u k t u r a m a t e r i á l u ( d ř e v o, m r a m o r,... ) n o r m á l o v ý v e k t o r N – „ e n v i r o n m e n t m a p p i n g ” - p ř e d e m s p o č í t a n á d a t a ( C P U i s p o l u p r á c e s G P U ) s e d o r a s t e r i z á t o r u p ř e d á v a j í p o m o c í z v l á š t n í „ t e x t u r y ” - o d r a z o k o l n í s c é n y n a l e s k l é m p o v r c h u t ě l e s a - m a p a o s v ě t l e n í ( d o p ř e d u s p o č í t a n é s v ě t l o o d v í c e z d r o j ů, o d p l o š n ý c h z d r o j ů, s l o ž i t ě j š í m s v ě t e l n ý m m o d e l e m,... )

75 Enviro nment - mappi ng (EM) no rm álo vý ve kto r N se př ev ád í do s f é r i c k ý c h s o u ř a d n i c – s l o ž i t ě j š í p ř í p r a v a d a t š e s t i č t v e r c o v ý c h s t ě n k r y c h l e – „ c u b i c m a p p i n g ” - v s t u p n í d a t a s e d a j í z í s k a t d y n a m i c k y p o m o c í G P U ! okolí (čtyři světov é strany ) plášť krychl e ze šesti čtverc ových textur podla ha obloh a

76 Enviro nment map bump- mappi ng s f é r i c k é i k u b i c k é m a p o v á n í u m í d ě l a t s o u č a s n é G P U v tex tur ov ýc h so uř ad nic ích „e nvi ro n m en t- m ap y” lze děl at ele ga nt ně též „b u m p- m ap pin g” m í s t o z m ě n y n o r m á l y s e m o d i fi k u j e [ u, v ] p r o E M t a k é t u t o t e c h n i k u u m í d n e š n í r a s t e r i z a č n í j e d n o t k y NR[du,dv ] [u+du, v+dv]

77 Akum ulační buffer ve dle jší ba re vn ý bu ffe r, do kte ré ho lze při čít at akt uál ní na kr esl en é ba re vn é bu ffe ry po uží vá se pr o rů zn é ef ekt y „ro zm az án í” ob ra zu r o z m a z á n í p ř e d m ě t u r y c h l ý m p o h y b e m - n a p o d o b e n í r e á l n é u z á v ě r k y f o t o a p a r á t u / k a m e r y - p o h y b u j í c í p ř e d m ě t y s e n a k r e s l í v n ě k o l i k a č a s o v ý c h o k a m ž i c í c h, a k u m u l a č n í b u f f e r o b r á z k y z p r ů m ě r u j e h l o u b k a o s t r o s t i k a m e r y - s k u t e č n á o p t i k a k r e s l í ú p l n ě o s t ř e j e n v r o v i n ě z a o s t ř e n í - s i m u l a c e : c e l á s c é n a s e n a k r e s l í n ě k o l i k r á t, v ž d y s m a l i č k o m o d i fi k o v a n ý m ú h l e m p o h l e d u ( z m ě n a p r o j e k č n í m a t i c e )

78 Literat ura To m as Ak eni ne - M öll er, Eri c Ha ine s: Re al- tim e re nd eri ng, 2 nd edi tio n, A K Pe ter s, 20 02 J. D. Fo ley, A. va n Da m, S. K. Fe ine r, J. H. Hu gh es: Co m pu ter Gr ap hic s: Pri nci ple s an d Pr act ice, Se co nd Ed itio n in C, Ad dis on - W esl ey, 19 96 Al an W att, M ar k W att : Ad va nc ed An im ati on an d Re nd eri ng Te ch niq ue s – Th eo ry an d Pr act ice, Ad dis on - W esl ey, 19 92 Jiří Žá ra, Be dři ch Be ne š, Pe tr Fe lke l: M od er ní po čít ač ov á gr afi ka, Co m pu ter pr es s, 19 98 Pe ter Ko va ch: Ins ide Dir ect 3D, Mi cr os oft Pr es s, 20 00

79 On- line zdroje N Vi dia pr o vý voj ář e: htt p:/ /d ev elo pe r.n vid ia. co m/ AT I pr o vý voj ář e: htt p:/ /w w w. ati. co m/ de vel op er/ Op en GL ko ns or ciu m: htt p:/ /w w w. op en gl. or g/ Mi cr os oft o Dir ect X: htt p:/ /m sd n. mi cr os oft.co m/ dir ect x/ e- zin pr o vý voj ář e he r: htt p:/ /w w w. ga m as utr a.c o m/ po pul ár ní cit ač ní da ta bá ze (o bs ah uje ča sto i pln é ve rz e člá nk ů): htt p:/ /cit es ee r.n j.n ec. co m/


Stáhnout ppt "3D počíta čová grafik a na PC © 2003 Josef Peliká n, MFF UK Praha cgg.m s.mff.c uni.cz/"

Podobné prezentace


Reklamy Google