Professional Documents
Culture Documents
DirectX Rendering W Czasie Rzeczywistym
DirectX Rendering W Czasie Rzeczywistym
11
·~ -
[Q)[g[RłQ~@J
- ·& ~§0~
O§~M
KELLY DEMPSKI
Podzitkowania1
Nil" '"'·iem J.ak W)r'fflrU wdzi~"lCXl10 ł mojeJ tonie R;,chrd. któ cierpliwie wytreym.il11
~ · ~ lonyc:h m~~ i~.- pi . nie. k J wkl„c.d d01ycey \'ti.S.t.)'Slkic iw - od\.\, parnu cmo-
cj onaln go do, pon'! c w uruchamicilllm m~h3m:t,n1Ó'W pad slia,iu. Bc:.r. J :J c iu-p1 iwnśc 1
1 ,, porda po1. tank: 1~;_1 • i~.-.k• ni~ byfob::r tnotliwe.
Dzj~lu1ę moim prq;ut:·mło111 i aioihi111 ti~m 1nm i Clił.Su dl,1 o:-.ab. któr~ <l lili mme-
\'trai.ne Dzi 'kuję m ci r.plt\~os,; ok :n m w ci. u ost, ,mc:h kilku m~es•~cy
c.. ; hc1:1lbym r , 1uc1 podnc;ko,,'J innym lud1101n, kt<Jf'Z) cow...ilJ n d t· książką Jestt~m
n,·~, y kl,i: \i.dz:1,; zn~ n11 pomoc Fd1cmu mithov.:i. 1ill.i Fu!lr:r. 1lc..ither Tulbot, Knsowi
imrnon5(1 i r.l.r. J\ ndri.:mu . łotl1 mu Dzii;kuj" \ m ,..-~zystkim a~ to" :.i~ za.:-nit
mi u 1,, orzcniu moJCJ pit.:""'sz1:i k iażki.
k a koni.: c hcudb::,:m pir,J/1 ·m, Philipo--. ·• Ta) lmo-...i 4 lii.:m.sotl), Jasono"'i 1t. 1tchcllm·i
(,\ 1 IJ, SrmQ-\ I D11.;lrictt.)\\ l tnVuli.a) or.u\\ idu lnn)m pr,a4.,w.n1J...om ka:l'1ej z ly~h ru.ceb
1rm, \\ i kszośt l cci::.,1, c:tc-_gn \ii,; n:i ,c71 I ·m, r,<J<'llfld✓. t z il h tfo !.:on;JI eh pri:.•7. ·nta. J•
ora1. maLr::ri.ilow dos.1i;pn)d1 unhtu1' Jt'!ill!'rn n1i::1\i,;: kk \\tfr11.; zn~ z.a I h lkzpo'.!»-redn ią
1 p<i:ircdm ~moc hi.::,aib) m nk,r.: l~M:iJz1~~m,ać ,mm\l Oiecric::ho"'' :,;;i pOS'li i •r:1,:ni,
czasu IIJ 11JJl l$ilmi: skm, ,, ~•~pntigo.
\ -'SZ) C). k,ól') eh " 1·nUL:'Uilem "} :ri.:J \\ pc,~·um sp,o:.tłb ,,r-lycl;)'DI 11 1t; do le:~''• 1~ 1-.: 1:.tJJ..a
tilJr...~r li:p m ~tdt=e;r-J11c tbdi,;~uj'i 1...1 idt .... i.:.1ad
Spis treści
o Autor!& !ł Il■ I •• I •• I ■■!I • • • • • • • • • I • • I • • ,,. I!■■ •■■:Jl ■■m 11■■ I ■■li . . . . I • • • I . . . . . . . I • • • ., • • • • • • • • • • I I • • I . . . . . ■■■ Iii I ■■!A I „:1.5
Od w~dawcy serij ." .. ~- .!!',. ••• •1111 , • • • • • • • • • Il■■ •••• •• " Il■■ . ................... . li • • • • • • • • • • • .-11 • • • __ . . . . . . . . . . . . .11
S.towo wstępne "!! . . . . . . ii . . . . . . . . . . lil ■rl ....... Il■■ ............... ., •• • ■■Iii Ił■■ •••• Il■■ 11■•• ••• • ■■ li ..................... 1·9
\: stęp 'I••• ., ,i i- • i l l ■il ll■il li■!ł ■■ I ■■ ■■I■■ I ■■ .. ■■ ■!l:JI ■■'t ■•'I ■■'li ■■1 r■• I P■ l!■ t ••■
I I t t •••••'I ••I" i _,ii i i, .,,. i,.,.,,. .. ,.,. i oióiol lillll I ll■il 21
, CzłŚĆ I :P odstawy . ■ ••• ■ ••• li !I !I!!!~!!! ó!ll óil il I!!. il il il li il Iii. 1111 • • • • • • • • ■ • • • • • • • • • • • • • • • ■• ■ • • • • • ll'e'!!'rfP!ł'♦i! óf '! il li • • 23
RQfdtiał 1. Grafika 3D, Rys histor,rcmy .••••••• ,... 111•'"•■••11•• .......... 11.i ■il ■óil"■■ r■■ l ■■ • •·········· .. .,••• .,, . ...... 25
..
('OOłąlmOM. ,1111~
Powtónotm
io wiadomosci QI macierzach I ■ ■• ~ t t t · ••· • • I ■■'I ■li ■■ I ■ I 111 • r !lł oli •Ił ł>■ I ■■ I ■ Il■ t I i t • a,lli łJ■ I ■■ 41
o l u Jt'"tt lll3C t rr'
Mac~n f'r7ll'.~Lalix111.1 ,o> ,Lino'
l la. r ' [1. lr..iru:1-ili.: 11 lPTl.C..SUrlllj'l;1 ),
I ..:l";t' --~.lh)\\ ln l .
M 11; ,, o bro1u ,
L· ,..-en 1c: m. c1i:t:t.}'
M :tL'f"l't .t bi bl1
Pnt.humn~,:um~
IAwdti:at 4 . IKUka stów o kolorach i o · w~utMe n.i u ... ............................... , •,...... •· .......... •49
C1) 111 J ;1 1-.,Jlar'J. 19
O. ,,.,1,;1 ,;111 • oL~i..:l„!.fiC~ 1 cm1syJni.: .. 5 I
O~ c1lc1 e ro1pr.1s.t~J~ , .... . .. 2
Oś.Yi11i:1 l"nre l"\\'ii:K1.tdl:111( . 53
l'oiosłal · • 11dl.1Jl'.' i \lto I.JLlu. . . . .•..•... 5-4
8
ni:m ie" Y!-ilk.i~h r(J'(WIJth oś..vietlcni'1 w Dtr~1J O., ..,. .. .. ., .. ""' ,... ,......,... ••. , 55
-
U~tęd i ł Sł I . . . . . . . ,.-,. • •, .... 1-1"a1 . . . . . . . . ,.. · · · · - · · - · ... 0 0
R~,...i~•e
. . ..... , . , ......
,. ~r„1,.łlolk; ol!Dł. pt.1"'1er1.dmit: wyZ;)l~g_o r~u .... • ·•· ···.., •• · .... · · · .... ·· ..... ,.... • . 60
Fcua sc.11) h fun«j„f8116l'orm j, onu os,,,it:-lkmJ , , ... .. . , •. •, .......... • •,..... • . , ..... ,.. . 61
i«łt 11im1), \ fer1C sh.n.l r ... • .... · • .......................... ·• · •• • • • .... · • 62
M~btllll/r'll ołH,:11'1:lJ•lr,;.} ........ • "'• .... • .... .•. ' '' " ..... .
~lulllkksturu"' nic-. , ,.... u, .......... . . . . . . . . . . . . . . .,,,., ... - . . . . . . . . , • • • • • • • • • •
•t..::h;..l)r j7~ ph.el ~ d~r ............. " .. .. • ... .. . . .. .. .. •. .. .. .. .. .......... , ................ ... 63
",.,·,li,g I • • • • ł •••• I
.. •• •................... , •• , •• , .....................,.......... .. ••• •• •......... . M
I - . . . .. , • • , , • • , , ............. I ,.
r~ h· g,l~hi, lill U)· > MUl knnn]u lll FI\ ..... .. .• .. .. .. ..... .. ....... . ..........••. ......... .... •. •• • ... .•.•,&.t
0
z goon,crd:.1 zmą-.QJlc 'l \\ )'G.JJ 11ókJit ................... •···· ............... · · .................. · · ·· • ...... .65
r~\łil,O\\,;;an1e ..... .•. ·- 11111' ... .. ........ .66
Ili •••• , . ,............. li • • • • • , , . , , .... , . . . , .... . . , ...... , •• I
D~ić li Tworzymy siłki efet ...................... -· .. -·....... . ••... ••-•••••........... •••.... •..... •.. 69
Rozdt1ał 6. Kontigurnc,i a środowiska i prosta a,prikacj.a Win32 ... .................... ............ 71
Ki Ila: sló\\ {1 1 OK .... ... .. . . . ........... .. .. . , , ,...... ..... -· . .. .. .. . .. ••.• ., •71
n.()tl
I!.~ c,1a l"JC:)\:
ri1gur •. , ł.:,. •-•
&3 .........,. I ·••rt•P• •~· -·· - · · - · · . .... • • . . . . . ,, . . . . . . 40
...•.. ·········l····.....n
Prosta n.pl1 .JCJit \VinJ::!......... ..... ..... .. .. ........ .. .. ... --··-· ........... - . ,.7
PliL W~ koli) " In> .h .. .. .... .. . .. .. ..
Pit .-\ph ·... J.:2 h ...
Plik '\.V} ktlll) 1',l.lJIJ •"'W . ....................16
Plal: Aph'-xj.1 cpJ• I t•■ ł■ I l,I I n•'"
... 79
K""'I'•' •cio t Uftld13m1 nn1r prost.:J :ip1if.:::K"J 1.
lu~łi1. T>l.il z· ,_. ~•Jt .rrob1l1~m:· \\ u '·i 5P(l., b1 .$0
., is I
~~'.2l,nL,= bttl'bru ~U!l':l(;holk,lt\'I.· ....... .. . .. .. ...... .. ....... ..... ... ......... .. ................... 10
R~•gurn.CJ:l I mOd)lil:iiK'Jlli d il'li)-Ch o wicr-zcllo-Jkach. ... .... ..... .................. ... ........ ..... . to
e-r \l'all ie ~ tl!rlci1olkó,1. ,............ ... u, ................... , .... , ....... ,. •1 . . , . . . • ......... , I09
11. . . , . ........ ..
Spi• tNłcl 1
Zastosowan la transformacj~ ......... -~· ■i. • • • • • • • ,.. , ,!I,,........ "· .... 11 ,f !!+• ............ 9 . . . . . . . . . .. . . U.9
( ."o rv c ns1brn1 gi:'> • • .. , . -. • .. •. . .. ... , .•. . . . • • • • • . . ........ . . .... 119
rran:sforn,:tCJC S\.\,ia.1. L . . . ...... • ...... ' ' .... ...... .. ' ........... ' ...... .. . .... I20
rrain fbnl){l4;J'I!' \'Vi do U . , -•·, •. . .. •• ,. • , , • . •. •• • . •••• , .•. . • • .. .. , •••.••• . • , • , , ........... 12 1
1 w~1ru1rn: 1ruri:1tll►"f11l, li S\'1n'UJ I mm.n!'> L1-m1.-.:J1 ,ulla ku , ..... .... . . ~• , • .... ... ... .. • 121
ltlut_ . .. ., . .. ........ ... ...... , ... ,.. •-A••··-···-... .• lll
Prl<ł..!!-1.t ki:111..t ;i ur.r.ąd.rrnic JJ.3 D .. • , ... .. ... . ..... . .... .. .. . .. . . t l~
I . ~ł050\\ i1111" :l,iOSU m, ci c-rz.~ ..... 126
W1dol.. d,r ,m111 127
I :te0 M:> cu r,17'1.:'m . . .• . . .• . . . .• .......... . 128
lalc,Jnc b., 1-.:zll!ma. • Ul
7.-l~dm~iia i.wi, 7.l)n • 1 "'• dąJnośc •~ . . B3
PoJ. um~l'n .1n11:: .. .... .... .. .... ..... .. .. • .. 133
Rozdział 10. Od wJer.zchoH<ów do, figur lll■■ ••••11■ ■■, ■ ■ ll!l ■■'l l ■■ llll ■ ■ ll■ ■■!l ■■tl'■■■•••111••··••i■■■ llll ■■-■■lll■ • •· ••*•• ·· ·13s
Pr;i:l :(J-'f k.,mc ~ 1e-r1chutkó•w \\ f'O',,\ 11:l""L.Chmi: 13:S
R~ndcmwtum: J'O" 1r.:rtchm 13 6
R~ńd11.1\1,1- 1M1 · z ": kor:ry-..1.1mt'm hsl ln\jl-; to\\ I .. ,
Ri:mkW\\ ,me z\"'} korJ')Sl,m11:m Ha hl. rz~ lróJk 1'"1, , l
Render1..,.,. nic: 7. W} kori:) .,,.,mi=m pa...._h w tr ukąt \,. ............ 138
R •ndi:m,,. me z ni."t1.l~1.w.;m 1c m Pl) m1 cy,,,,\, md~ · ..• •···· ..... i 39
~ 3- m\.a.n1c I rend1m:m.m1c phko'"' ..... . . ... .... l I
Pmtdem:,; "J d11Jnu 1 M~
..._.,d.... ... ..... I 4
lloJ'.'lłllllU\,\c an I C' 15,;;
dZlll11~ m 1 11r1-1_d:rc1u 2(
. c ,qui-. , 111 .
ar11an, ..h~'f 20I
. 208
PudMJruo,..,UJ'lie • ?lS
Rozdt, 14. Te stowanj głęt,i i prz6.Z!_mc2)$1ość ••••••• ~- .~. ■ 11 •••••••••• 6■ łoił . !ł r• '1■ ••• • • • • tł■~ •• I!■ I •• I • •• 21l
T~vw.u, c- gli;t>i 21
Rllto r W . ..... 119
f'n.,c,c; . :?19
/ erm~ Il•
P'r7t;Il'"04; 220
\.V .1rt~ .dfa " 2.20
Kru, I lt11"' g ' 11
J(;1r13t ,.I fa o re n1
IC prJ)l;,a in
T~ J12
Pt :!13
.23
. lll
Część IV Mechan~ my shader ......... ..... ,. . . . . ..••. . ... . .. .. •••... . . . . •. .. .... •.................233,
Ao.zdłf_ał 15, M c haniimy ve irtex shader•...• ,........ .................... ,... .. ................ ............ 235
Co rn JC t \t:nt:X haid,:l . ... . • , . , .. . ...... , •. . .. 2'36
Rt!'jt,try dan:ri.::h o wte<, hol , h •. . , .
Rc;, >U'y ,ruJyi.:h •. ,
RcscMr Jreso~ > .. . . . . . . . ..... .. . .
Rejeslry l)'IDL:t:lśO\\C, .......... , • . . • • • • . ,
Kod\.\)mk L1al 111 1..1 n · ·h:ini n6" 'li --ne ~h d~r •• , . . .. . ... ••. ... .. . . •........
~ h.W111zm{.1Jii1 s'.JI Cl ,. •• ,~,., ••••• ... ,,.,., •• ' • •· ······••r•~•• • •• ...... , ......... .
SpiatreNI t
"-h~•e , IAlPI'\} \~ .ante nl!ISCł. ......... • ........... , ...• ,.... .. ,.... ... . .... .. .... , .... . 241
ln1plcn1enl1KJB :lt,11tKli:ru ·· · · .. .. .. .. .. • " " .. ,•., · .. .. ................... ...... . .... .. .. 242
' hau,,, a u17.:l(ILC,11e . ••. .. .. •. •. .. . •• •. .. ........ .. • •• . •. .. ..• .• •• .... • • • • • u 242
Ut\, an4'nic: deklllf..acJ' , .. •. .... ..... .. .. ..... . .. •. . . •. . , ......... ,., , •••. .... ••• • • ••• ........ •
.,..~'li
.. iii. . .]
1\.sc1111bld „.J3 ~ .................. , ... . ..•.. ..• ,.. I . . . . . . . . . . . . . . . ........ 1111 ł ■M•• ···•··· . ........... _ • • 245
Roz(iział 16. Mechanizmy pixol sbader ......1, ■•••• ■ U ■ !!~ •lo• IIIIH ••··········· · ······· ·· ·········· ••ue • •···"· 259
Co LI.} Jl.... a ri,cl ~-hudcr'ł . . , .... , .... .. • .• • ... . 2SQ
\\'(Is i: rm;,.;h ni m \\ p,,.-el ha .. _,,.....,. 260
\\'ej i.1, \\ }J)(fo or.11 opc .L.:JC r 1 . 2M
ReJ~ 1I)' ktt I• . .2o •
Ri:j ·:i.l i) 1~m 262
ReJ 1.--str, ,t11I • ~ 2
RrJ i:,rl') tek _(S:!
\ ... run (1\'lo e t 1<k • :!62
lnstru ~je LlU l ;r1 I ' c ~. . . . . . . . . ., 26
ł :tl"nt · m .... u i ~, 264
Jn-.,1mki.:jc .-id :m „ 26-l
~1nd~ fi kiJtol) do,t ·pni! d 26\J
Ogr· lC.fC"nm 1ll~\. LdliJ[_ I 7. _,o
Sp~ Jo:!,Lqmok1
"d1~1nt1! x<:I sh, der 2i' L
A~mbl lćjil. J\\o'(1r1 ·me I w;- k r1~:r.L) \t,;.J.JUt." me h miw x - 7'
lJ.urJ,,, l"'t 1 aphL: ~ I \\)kuny łlll,l .i rncdi;:u11l".m pi d -.h r;_
rro!o.tl! () \ kult 7 l fHUOO<. 111. Jum1n111 \'Cr1CX ~ho11Jc1 27J
Prosit" 11 e l1tC1 ·111.1 \\e 0.rną111. p1 cl sh.1dcru 2 "
Pn, 1••ipl ·u 1 "~ Llf7.} tcmicrn p1xd mad.: 276
r•oo tt111m ~ . •. .. '? ()
Jnnc- p.--zylr.Mh ill\M:}atJó-w - • , · ···•· .. ,•. · · ,.. ,..... · ... · ........ ' ·•···· .......... · .., · ... ..... · .. · 2l
PndslJmLl\\;;Jn1 . . • , • •· , • ·· .... • • · · 22 " ' .. • • ' • • · •· · · ' • · ··· ··"' •
Rozdliał • operacjo w inn,~h Układach wspótrUdnyeh nit układ kartezjański ........ 3.26
28 UJ u1:an(".1o :uh i orJZ m,w: u tadt "srórf"ł - r...} 11 • . . . . ·. . • .• • • .. .. . . . . .. • . ns
1
0,1w.wro~, -,ni poi.ur;,.l~ ukfad-lflll v.spólr~n)iełl w me h:IJI 1zm1e ,~11 ;,. !shadtr . . • . •. 3:n
Kod pr,opuifllJ . . .. . .• .. . ...... .. .. ' . • . . • . . .••. l lO
rnnt ~W\'i JJlln pc)J...ll.Jll ~ 1c-chn1k1 •. ,..................................... ,_.......... ... . . ... . .. 136
~:,lJ.rnQ' ni o , o , li I • • •" • I I ~ I • , .. , , . , , , •· ł I ,,, ••• •I 1,.1 l■ I tet•I
1
'' ••• ,..,. ,,., '1111_. J;
R01dział ~ K~o tBie!iem .. ..... ...... .................... , •· •.. ••· ••· ......... ~•· ~· ••· •· •·· ... •· •·· ..... •·· .. 339
Lrni~. 1,;r; ,y,,n. olb.l..Jr,,• ... • ,.. ,. · · .. , , . 339
Oblt,:z..nir: \,\ c- 1urÓ';.\ norm :llll. eh r-1 po,n ~ r &alt<',e~" . , ., ... ····-···· ..... • , .... l 4i
OJJJ1t W1 1c: ,,. n o ·ull~ ob:!lznm :r..u p.111xKi:p,h· ,., . . •. ...... . . , • .... . .. , • • , ... l4i~
!'1.pli 31:fD\\ ·om>;-,ujlf!3 .1.:in.,· Il ~ .1 .... • • • ... .. • • • • ...... . • •• ••• .. .... • . .. ••• 3
Z ll'i6u'l'I JJ1ia. 1 .r.11~•~ h.MMÓ" Bc.llem . • . , )~
l "" liMtr: k~ \\~e,h I obs;mrO,.\ 3S7
Poo:sumio~.mi . . . .... ... ... . . . . . . .... . ........ SS
R(.ltdł.iał 22·. Arnimacj,a postaci - skinn[ng z wykoll'l)'staniem paJt1ty mcacrerą ...,.........359
Tttl 111·J .n11im 1i po~t ,1 ... . . . .. .. . 3S9
ftes- '!1.lf ,, rl(:-.ll', \ }' , . . •••. , .. . . , .. , ..... , , , ..... •. • ąl
S ·1nrw1d ., \\)'_,,_on.)("LJ.rl em p.31 cy maic en~ \\ "nu.to: ~il<l .;1 • 63
,,,1a~....i 36
IM( I:. ...l o ~-·~ull palcl ....
Potl"\lltr\o,'I. 1t1 i:
R-md.Ział 29. Cienie - CZ1ęsc 3. Mapy ci n1 ... ......... ?e•aa;•··· ····· .. ..... t.~ł ......... ,u!.. ,. ... lj . . . . . . . . . 11.,•···463
(~ '> J\'I,) m:lf') L ni IM
K.:ndL·m\i. ITTLC' d n tl!l.:s.tur)
Rcndt>rO\c\.,m1~ dn ,~~ rnr)
.. "
1' "h, nt7.fi1 ..-;11.:,uon mia\\ 1t17Lholko\, porót.~nuJ i.~· ,~.rrto
Ptxel sh kr ")1--.:unlJJ, ) 1mqx,...., r1ic 1en1 . ,HO
,\phk:l,Jil , , ,GL
\\ ad) 1 Z'lil ·t) tcch111ki mapo,, 111a i.:tctn. 179
l 1odsu111 ,w,lm~ "79
...,. r""·•ifi\l, <J 1 1Knnw.111cl'l ti.: 11111 1r:,d'L\ lOl'O" IILJ 111c111;i',-Vnci;:K;I .•• • , , • . S1:S
.~~=;I ~--:~: ... -----~:-... ' .. . . . . ... .. .. ... .. .... ..
r
ł •• , :Sh:i
Rimlzlilł 32. lmpfemanłacJa technik per \l'Ol'teX j\eko toe'.hnlki pBT ph:el. ................ ..... S,1 9
• ).,.lk ,.._,,.
1!.,NUl'-• '- r--
llk1'II' j11 ~
~ ~■ · · · · ' ......
, ., ••••• ""' • • ••• •• ••• •• • • • • • • • • • s.,
Ko.ił},.sł-ml~ uc-xm )I.)~ .. .. . • . .. . • • . •. .• . . .. . . . ...• • • • • . Slo
en~ s.tmder ,o,:h\ .t(lr-.m 11ni.s mr:ro,.,;f1L1~1 :I' odb1C'. l<'m śm rl , . . •• • . ... .. , . • • .. • . . Sł:!
Pi~• !iił!Jd« 00'" lOfOV, ~1,1, nr \'l,fl~I ,xlbicii:m '""i3Jla „ 524
,lipl q oclVi .t.i.tC'O\\ m :i 111LTÓV1-fl1J~ z. odtucu.?m \\ l':U!i:i . , •• . • .. .• , •. . ••• , .. . ••• . • 525
Cicfl~qm1e O\' ko" per p•xd . ,, •• • • • , • , ••.. , •· .. • • •..... , .. S I)
Ve,rt -. -.n::id('I jc:r111:1\,.1111., h:: ·L,~'lko\, ._: , per p1 -.ei , S O
P1:i.i,:I iliudcr IC'fl IL"J',\ ,1m:1 fl:sJ(ó" "(l\l, t:,g0 pt:f prxel ... • • • ,. ,. • , . Sn
, \plrl.: J~ C.itfltO" , ~ri.;. ó'I.\ O\ L'"g.ll ptr prxd . :S3
J1«hu1t1L'l\\-ani,r . . . . , •• • SliJ
RozdZicał 33. Rondnrowanlo do, tiekstJUJY - IPfJlnookrnnowo rcmnyc,e ruettu ...... .......... 541
J\nNzet11e ~dS111r)· ~ l!'J tde.in lLl'I I rn"nrn1 S :?
W~ ldf1ilJJl1iJJ1 1; rtm iW1:dn11 2 t i . : ~ r bN~~ cit L"('I m rcndc:rl.lMi S-~1
RIC!n crn~,~k: do Le -....i1il) S
Rendef0\\an1c dei Ił~ 11.!11111:;m ;, muw ,zd..:1.rnneJ ... • :i4 5
RcMi11yi.:ic n.11;1i,, • . s.11
Spui,,,,h [~'U)f.l~ i;i i:-l~klu l'(J.7111~1.-·1 nidm Ul
,\piu· j.u_ IOml_!t,«::1,1 md111 . . . . . .. ... :S4
W )'d&J"4~ lr:fhru\, 1 • • • • • • S
f'od,,,umrm -ujnc- :5
Ftotdzia~ 34. Ron.cterowunio 2D - po prostu o. JednQ literę• "D'"' mn ia,j ........................ 561
'!'
·Jny Om:clllr; \\ \,\· 1eil,1.1h:m ,~ 1 ..,l~ 1. ~- Ofl.rl) . . • . • . 6l
Kr .k I· CJd17.u j..:dm1 I ie.:-~ .,I)., , . . •• -6
, 'in1' - nbrn.l) 1 "~,y~t~1m . · · ··
\\'_\kOl"'l)':-.t}\•.mu: \HCf.11.; 1ol"·ó1.1o \\ 2r,
illard.M l1fO'!d *~ li~·'"I 2 r)
\')dJJnr,. ·
Moiłi'VI ok1 ~-. -~nr;cy S4ru 1 101:hniL:1 ; ·l) ·
pud '-WTI U\\ Il IC'
ł 16rł)ł)
.. .. '
I l .,. •
ftc!~ll1~a ~011 stu seffl) , .., , , , . ...... , . .. . ., , ...................... .., •'"1•• • , , , , .... •• • • • . .M)3
E• 1,.,t St'f!U ..... " . . . .. . . .. . .... . . . 40S 1 1•1 I I 1•1•1 I ł o o ·•• , . , , . , '9
'\'~ ·orr~ ~rw:m, r.f.:) "')'l;h ul01aw do mnd), fik..Jr;; I ł,,,oJorhv. ,. .......................... .. .607
Pram ilr. nic ubri.!fJ'u 7. , ykor1'yst1u11rcm j ~ rsp!o u
,v, . ~na ~
roo!-urnl11\\ JnL •
. . . .. ...... • ........ .
1•t I ••• f • • ••• ••• I ' " •t 611
616
611
Rozuiat 3 7. znae-zr;i · lepszy sposób· wykroś'l'ania tekstu .......................................... 619
P~w." 20
l111płi;11u:r1t~q:1 •• • .•. .•. . . . . •.. 6'21
PN.humo~ m,c . ... . . . . l•
Rozdział 3:S't Dokładne odmierznnije cz,:L:SU ••••••• , u l!!!l f'il I llli • • .- • • • • ■■ l l ■■ . . . . . . . ■■tt •• a,.1 ...... .. !' . . . . . . . . . . . . . . . . 63S
, s 0 1 ieJ rOJ'Lł:l'1~k7.~I 63S
C, s , • Sl.lt. •~J rn:lld11 ·k1~.$c• .. . . . 6Jb
Krl"-J og ln~r.:h , t " 11., h.·mal · mr c 1 ••• • • • • • • • • .. .. ń)
lmpl('m,:1un JJ. bJf)
IPLld"A.lnlow.:.11~ .• .... . .• fM 1
Zakończeni o •.•.•.• li■ ... 11 1• . . . . . . . . . . . . . . . . . . . . . llt . . . . . . . . . . . . . . . . . . , • • • • • I ! · • • • • • .., • • • I! -~· ........ Pi'I 11• ... ■te., •• 6 75
S-korowlclz_. ■ ... . . . . . . . .,. li■ ••••• ■" t. . . ... . . . . . . . . . . . . . . . ,. " · • • • • • , • t ............. !t.• . . . 1111 • • • • • , ~ ■Ii
.. a ••• I ••••• ■ 6 77
I
O Autorze
KeH)' Dempski od sicdmiiu bu p1owadzi badania w Accentnre Technology L8b. Jego
prace badawcze doły<:~ multimediów, wirtl}atne.ji rze,czyw~stośe i orai te1ewizjm inte-
rakty\, ncj z ukierunkowaniem na render~ng fotorea Li5;tycmy alr.rl technik• intera1kty'WIJ'le.
Jest amorem ki Hm publikacj ;, a jeden z jego projektów jest c:,..ęścią s.taleg.o :zJbioru pub~i~
kacji infomu11t)'cmyoh utrzymywanego przez instytm:ję Smiduorikm ]nstitutfon.
Od wydawcy serii
Pozv.'(1 lę sobie ro~cząi od sMw - kupcie tę ks iątl(~ ! Ksi~a DlraclX. Rendering
w c;rasitI rnrc:ywifl}'m jest po pros.tu oojbMdzkj ~ \ \ ~ ksl~" o DiIC<::IX na
cynkur Maieriału 1.łl'\-ita.rti:sge \\ ~j ks-j~e n[e mąjd!ziccir: w tadllej innej. Jestem pewicm,
1
u autoli', Kc-I rr ~mp.ski j est ·przybysz.em z im,cg,o :świata. p0nie'W'IZ jGSt nlemotlrwe,
aby a__łowiek mćgl tyle Wliedz.ieć na temat zaawilnSowanego progamowania. DinctX.
Wiem m; ponieważ. sam jestem z innej planety:), Ta ksi rzka opi,suje v.-seys1ko,, o czy,m
.zawsu sję. słyszy, ale nii1 ookładnie· nie wir:, jak m .zrobrć , prakfyce.
Os1a1nco Direct3D stal się bardzo rozoudmvany;m i posiadającym ogromne :mo1liwości
in1erfejsem AP], który , maksymalny sposób wykon.ystuje moHiwo~ci ~pa.ęw. Pro-
gmrniś.t i z mm. Microsoft mi.ktują swoje zadnnia po\va.tnie i teclmotogi21 D.i rttt30 jcsr
~ync:l'lronizowans ze sprzętem. ktćry ją obsJuguje. 07.mitza 10, 1'J! jet.cli jaik•ś sp~t
stwarza określone możJiwo:ści. to technolGgi~ Dir~i::O D te mo1..liN1tości wyko~rujc .
Dill'ed.JD posiada n \iłtel obsłwgę takrch operacji, które je-szr;zc nie istnieją. Zas1an11wiam
sit, czy Bill Gak ma \,'irch ikul CT,.il.S~. Jedyną 1,.irad cah:j tej technologii i wszystkich jej
,rno:tliwwm jC!il fakt. ,1: jej poUW1wamtc tnva wicie miesięcy. a naw-et Lat - to ni~ ji:st
tai1. Spróbujcie n m::zy,ć si~ Dircc:OD samoozielniel a jego pomanie zajmie Wmn odl
roku ,;ki, dwóch lat. KiOO:}'~ mo2n.a było samodzielnie pomawać tecnl'lologie. Teraz po,.
h"V!bujr:my mistna, llctó.lj' będzie nas uczył, a potem ~,10:iemy rozwinąć naszą medzę.
W ksi~ DfrectX Renderi;ig ~v c:asic.~ r:t...t,".:y HSf) m nie przyj !!to żadnych załottn co
do stanu ,; .i t~zy Ceytclnika. Pierwsza cz .ść książki opisuje zagadmcni12 malematycD1ć,
macitli'ZC i tym podobni:. Po 7apre1..el"lte)wiłlliu pod.\l1Pi 0pi!;ru;o ogólne założ::nia DiFecilDl
co f)Qi(l,vt!J11 ,.,~tki.-n Czyh:1nikom smrtowac z rówm.-go pozioml1, Samo opisanie Dil'ecGD
poYwoduje. te wa110 kupić książkę. Jednak po opis,a_n iu pod.staw Direct3 D Dlł5~lJUJC Opis
spt:tjalnych trektów program istyc:r.nyc-h i wykon;ysl;ani~m u1cl~1 r.!ammsowanych technik,
takich jak meehaniw,y ••i.icrt.ex stiul.de.T" oraz •.pixel s.hader·._ Ten materiał je.st na.prawd~
nie~\la'}'kły. Gdyby przyszJo n n, c:1..ytał publ ikacj~ Dir~ctX SOK, to po pmstu nie wis„
dzielibyśmy. od czego zacząć. KtHy li'flC, od czego zacz.ą<.\ 1n1 czym skończyć Loo powinnt'I
się 1.00Le.td, środku .
Nme c:hcfa~bym zbyt duro obiecyv ·ać. a le jeśU pl'2eCzytaeie 1~ książkę. to będzi cie \\ te-
dzieć, , jaki spooob wykonać tmde opel"a! Je jak za.;~wa~O\\~ne mie-szanie teksrur. o wie-
l~enie: odwmroWililie cieni, hunanic świad:3 {ang. refrat..--'li<ml, odbici • mgły orn2 mi.-
li ~ umych doskona~·~h efektów.jak np. cienitiWMi · ,,ł;,on,ik_5-0w~•. PodobR mi iię w tej
~•ll2te rówm1iet mu, te opisuje ona ,e zagadnfam1a, na które v.skazuje r,rul'. 1·fateriał je~t
n_1ezwy,k ~ ,zaawanso.wany, ale jednoc1'" śnie bardro zrommi111)'. .Orlęki ~ulornwi takie
zagadnienia jak talamanie świllła Stają s~ niezW)'kle proste. Bmni to mniej w~
..tutaj iloczyn skaratny. tutaj zmień kąt. tu indeks tekstury. wyprowadź to i zrobioaet•
Mot.emy tylko bzyknąć ,.Wspanjale! To działa'•. Problem polega na tym,~ tab Dgad:
nicniajak :załamanis czy odbicie wyda.ją się proste. ale kiedy spróbujemy je zasto~
nie wiem1 od cug,o zacząć. Dzięki ksiątce DirectX R~ndering w czasie neczyw1.s.,_
nauczymy się najlepsugo pOdej,cia do najbardziej skomplikowanych spośród znanych
~udzkośc i technik renderingu. a jednocześni~ ~cf7jemy mogli pominą,ć fazę nauki i elcs.
peryment6'v ~~ciwa_dr.a metody prób i błędów. ~~•o~ k:siąxe .znajdziemy intat.suj11-
« wsl--.v.ówk1 1 u,vag, dotyczące SZiez.tg6ł6w dzfalama DtiectX. a taktc: rady dotyczące
mego. dlacmgo okrdlone czynności nalefy robić (lub nrie nale2)' ich robić) w okre§tony
sposób. Możemy powiedzieć, te nie ma takiego 7J1gadnien~ które pozaDloby nicopi.une_
i\ndre La.Mothe
Wydawca serii.
Słowo wstępne
W ciągu ki~ku ostam~ch l!a~ na rąpjf g-wa~wny rozwój dz~e&iny graitiki practwarzanczj
,, czasie rzecz;yn1istym. Obtt>nte powszechnie do$tępnc są procesory przel.Vto'at"l.aDia gra-
fiki. które doró,\\·rnaj-1 :eybk~c ią ~ moż iwościami niljdro.tszym staej;orn graticmym spu.ed
z,aledwi r: kiUcu lat
Tc~hno]o-gics.
Tak wielkie możliwości uzyskano Jednak p,ewn>·m koszti.:rn. Jt:Jnym z dcm1:mów rego
kos tu jest zlotouośt. Ponieważ pro!.7llmiści ,,. swoich mmklm.:.ll t:ieniO\vania che·
u~,zgt~dniat: jak najwtęcej czynników. to w ja.kiś spo ·ób ll'.'1..eba przekazać parametry
opjsuj • re czyrmiki dcm funkc:j i ciCJ1 iowania. Początko\'\<'O b«;dą on · do tarczane popra:z
Eworo:,ne piLCZ ~"Jafilków Ddwzorn\!,·ania tekstur oraz. modelt": geometryczne. Z c1.a~em.
kiedy proce.SO'}' grafic:1.J1e tan,ą się w jeszcz_e mększym stopn iu prógratnO\\,alne. wiele
spośrli,d parametrów b~dzie ~ypełnianych w sposób procedura lny - poprzez pseudol-0-
sow~ genrY"owa.nie szum-ów {ang. 1Io•se ge11.eru1fr.m). Właści'II',,} wi:ór z.osLanL& utworzony
autęmatyc:m ie '"' czasit: rzeczywistym
20 DINCłX. h . . . . w CMlle ~
W j,aki sposób
nal, e ży korzystać z tej książki~
Ta ksiątka ma do pełnieni dwa cele:. Po pit:!"\ ~ chcialb> m, by czytelnicy przeczyta,;
j i zrozumidi \~Z.)itkie no, c \ takt"'DŚ(~ Q('~t~pnych ohc nic kart graticzrtych. Po
drugie, chciałbym, ib} W)rkorz. tywali ją jaku :źJódło mforma<:ji \\'ti.::dy, kiedy ucmą
\liykor.ey ;·w ć ce t~hniki n11 co dzieli, Dobr; m pt1mys.tem jest p~Z)'lanie tej · iążk1
,,od d~!i~j do deski.., pn~yn11jmnicj pc•nf rac11ic rozdziató, po 'to, ab~ dowicdiiet si"•
jall:ic ~ motl iw~ci, aslępnic.:, kiedy pojawią si okrt lone potr;;cby. można doklud,m::j
a DnctX. brlclMnC w czaele rncqwl9tym
Wiele z 1ecbnik opisanych w tej książoc' zaimplemt,ntowano, posługując się jednym lub
dwoma przykładami, które pomagają zrozumieć wybran~ tec-hnLkę. P,odczas Czytania
rych przykładów wa2ne jest. aby pn,emmJ izować kaZdą z t'-'Chnik i traktować Jak n~e,
które mowa za.stosować w innej sytwlcjj. a także w poląc2ieniu z iinnymi technikam~
w celu rozwiąz.ania konkretnego problemu. Dla. każduj z. technik omawiam Szet'SU mot.
Iiwo~ci, ale w wiefu przypadkach mo2na zna tetć zastosowania. które nie przyszły mi do
głowy. To najlepsza rzecz, jaka może się zdarzyć. Jeżeli dojdziemy do momentu kiedy
b1tdtiemy umicl i łatwo zastosow.i.ć wybraną technikę do ro,związa:nia szerszego zbioru
probfemó, • będzie to oznaczało, że świetnie zrozumieliśmy technologię.
Co zawiera ta książka?
~pisuję ~wansowane pojęci~ w raki sposób, t.c ą one jasne dla czytelników na \\'Szyst-
kich_poz,omach z:aa"Nansowama. T~kst.sam w sobie opisuje podstawowe techniki. a także
amal~z kodu ~!owego,,., postaci opasu krnk po kroku. Płyta CD dolączc0na do ksią1x,i
zawiera.\ ey-stkre kody źródłowe o~ pliki mu ltimedialne potrzebne do uruchon1 ienfa
p~~ dhówl: DodaUco,_·o ~łączono kilka narz~zi ułatwiających ro7.pocZft"Cie tworzenia
,, liłJSnyc p 1ków mu ltmmedrn.ln_ych.
Kim jestem?
Jestem ~racown~kie:m naukowym Accenturc Tcchnol r • • •
po!eg_a l'WI opo·wmdaniu ludziom o leclmolo ·. ogy Labs. Duia część mOJl:J pracy
dla biznesu oraz dla konsume.ntóv,• . _g,ac:h oI1tZ: o (Ym, co przyniesie przyszłość
łem ró'.norodne nagrody. a t t . mektóre z moich ostatnich projektón· otrzyma-
23:
nows.ze projekty dotyczyły ~n;,a . ~otch p:rac po~s•ało ~ż kilka publikacji. Moje naj-
torniasm wiefr: innych projektów d:;c:~;:ros~o\~CJ or1;2 "',nualnej rzeczywistoścj. na-
Jestem programistą gier ale większa •ęś on~o_l t do gier oraz realistycznej grafiki. Nie
wani_u rch ~mych technologii. Ma:_z ć ~O~CJ pracy po~cgą na rozumieniu i zastoso5
::~:mem, Jes~u.
. . ~lllawanm oraz opraco"'yw .
on~;~':\~::~ihp~c~
.umini staną sir.; z nowym ~rLęlem i oprngra-
. me ost pm:. MoJa prac polega na
W1elu,•nnrch autoiów ksiąuk dla~~~" fiO\lr)'c:h, Lnl~resującycb efememó~. fnaczei ni_!
ne-go ub infonn liHJsowanych me rtJ • :,
mcchn·•~ . • illYCZllleg-0. Jestem i1n.;uniil>il',o•m k . ~ wy mlc-en ia rnatcmatycz-
"" ~ rozw1~-nn.... • • -; ... ... , onccntru•ę s,ę \' · •
z jakiegoś ......) .... ~m~ prohkmów~ zamias, d \ .- -' męc na implementowaniu
powocfu ntl stę to nie udafo to fam r a varua te~rerycznych wykłac.M,v. Jeżeli
• \NO rno,żna mmc znaietć!
część 1
Podstawy
JcRłi jeslricir &ac)' jak Jl. Igi 11.e mo~ •iic Jut do(Ubć•. ■by pruj~ do kodowln~.. Spok.ojme1
w kilku ~lkawych ~ omówiłem poctnawo1,1-c poJ~i.. które ~ na~ p6tn1eJ pc,cr.;cbae.
b)i roim 2'e(hc: c:atlowi ie p0mi~ 't ~łt. ~~ Ja po1tt~ jc:j prrcj.
,lu.wusoW'lftl ciytelrlllC}'
rttt1iit. motb>' po eo. aby U~\lnił $1ę. te napmw~~ mam)' ~ttn••· P ~ J
~1ił 1c ~ ·- Róali ludbt w ~ tempit ~J~ ~ p<>j(Cia. V,
r powtnm
~
l)'Ch
IIWałJue
rozdziabch. " ' krlktim ~ •c poj Mtta stt duł.o maccmłu. kUh po p,erwuym pnce:zytnniu rw.dtiaha
nie w pełni uozumtem}' opimu~_ 11im "gadnir:ni,. nać:! p~cJ1111umY s.rc- ~y:m_z-byt11io. W dłl■zyda
n>Nliafxb optJo1DC li\exła:ueJ pc>J('Cj.J t,ędit wykoa)"SWWIVIC- 1 top11owo o'bJ~nWlc-. Z doś\\·,•zmia
~·cm. te 11ie' ~micm ~ dokbdn~. ~ · le~ nk- W) .koiio•~i:am. P-odabnyrn ~o mnie: n.d(ę
0
~=~t~
~- ·
. or.icnae wy rownywać prędl«1łci pl'QCC'SOta. w preypadku k:art geFan::r n a ~
~Y. ';"~~·4t je$t ro pierws.zy procesor grafiemy (GPVt ktćry wykonuje ope.
11ra.nii omz ,oSwil!llaafa, poprzednio wykon)'Wanic pnez F~ot główny.
W klllCie sieF,o wel wprowadzono dodatkO\VC' WlllŚC~lj ści omz: s::ey~ pamttć. ~mniaat
gc:fon:d z.ni,·tcnl ~cznjc bardziej ~wansow:m}' ~estaw nn~~J•• Op:r6cz zw1ębzcrlira
~ pn,cm~iil ukbdu, zria.cm~ zwjłk.szyha :s.i~ 11.'oić opemcJt wyk nywa_nycll w _jcd.
nym eyldu z.i:gu_r,1, Gr:Forcc3 był p1~rwsiym pKl(~SIQr-em tmficzny~i kt6ey obs!ttg1wa1
:sprZęrD\\'ll' mi=clwtizmy piY.rl shatlc r oraz verft::.'fl s'hatkr, Te: meclri~azm)' [PO$W(lhly pro-
~is,om na "'}'konY"łflie Q_pcracj,i ge~melJ'yeznych_~ opem_cJJ domye_zącycll pibeti
be;q,0 ttdnio przez ~~t Ef~kty spe-t:ialne tmdyc:yJm,: v.-yk~nY"~~ przez PfOCtsór
g-f6wny ~ remz ,vykonyw11.me pt2e.z wpnęt 30 . :1 -.,.·zro~ wydlłjD~CI pCt1:\ ałą na ene.
rowa□ic naj~ej ~ kompf ikowanych ef'c:kt6w w czasu: neczyw1 Cym, co m<ł'inn 1.\~•-
korl)r~ć w gra.ch1 mlie w iM)•ch mullimed'i tny,eb apJiiktleJach intr~{.akityl.'l'tlyołi. Me.
chńniZID}' 1Nit:kr stlrlo,, 14 podstawę wiciu ~czi;k i mcchrriik orm6rwion~h n~&li eych
rQzdz1ał.loh. , istod ~. jc.-dl'lym z oc:16' tej ii}ili jest rozpozmmic $pę5-0bUJ diZiii!ła.oia
median.izmów shader omz sposobów " korzynan.i tej m.<lwej toolmoJol,iii jBko nan~".dllia
o n~UW)rkłyeh mo:żliwoS(-iach.
Nie tyU~o niezwykle :lwiębzyhl się wyd'ajoosć pazętu~ ah~ mk:2'c akc,clr;ratocy J D mn.fitaluje
się nicmslze mi każd„1111 spll'7.ęcjc_ W r7JX,zyL,..-J toścj wszy.s1kie korn:immet;• P przezna.
C""zone FI rrync,k konstLmi:tltki dMW..n::;r.ane pr.zcz gló, .n~ h [Ploduc;:c:nlo\\f s.ą_ 'Wjrpo.saionie
w pe,vne~g o ~ j u ak« leracj; 3D. Posiild.ł!Jj,ąt,e olibrzymic mt>tl iw ości karty gcFott-t2
~ pl4«la1t\'i.Ule za mntt=J niż l OOS.. t1 "' wię,k~sei w akcc:kratory JD są wyposilion,e
,tabe '11ptopy oraz inni: ur,..ądzenfa prunośne. \Vifk 2:1 aęsć tej ksią).ki xostala napisam
ll1 IIIJ'coprc, tór1->-go w}'"{1ajnosć jesm wybza ni:1: wydajnosc mojej starej stncji ril)boc:2tj
Or z l 99'9 ~ku! ~~L ;,:3wier~jąeJ~ ~bani2rt1y ~ha:d~r ni~ j e t jcs-zeze pow57 ~ )·.
af '1' ńrcy gier J)O\Vlnm w1cdzLec o 1s1mcnm mych n.o,V)'Ch moxI twos.ei. twn1cwa.t Jicxba
~ typu ~rząrhen.z ~wnością_ gwa~o"info w:r.mfoi . Kumpute _ PC to riicpr2cwid)·•
w3fll~ ~attorma. · me.kc,ur.-.y- użytł:.o,viucy pos1sd:.1ją 11lajn0'\vocztsn icJszy spr✓ęt. podcza.s
acy uuu "~•koraysłt!Ją ' t11re kar1y 2Ll. a!e zignorowanie nowy h wfaś.ć iw os.ca ozn11cza
paros4awame \\<' tyle.
Niezależnie od tego. która konsola jcśt neczywiłcic leps.u.. a która ,·est ~........ •·
.a.. • ,._ • · tki ·1· _ .1._ .,•.J,- • .._.._ po n1eJ,
praw~ 1e~~ te 'IU~es•~ . mm•o•~•~ ~• :mają w swoic:h domach komputery graficzne
1
0 olbrzymich ~hwośc1ach. W naJbhtszeJ prz:yszl~i spodziewana S,,'7.edu konsol do
g ier ma byc wyżSza ni l . - ~ magnetowidów, Teraz. kiedy spr.ze<tat knn.so] :Stala się
wielkim bim~sem. ~wmn! n l_ąpił preyspies~tnic postępu technologii. Jedna 2 cic-
k3wyd1 wlaśc1wośc:1 konsol ł xoo~ potega na lym. U motoo Jla niej lhćzpośrecm,io z.asto-
SOWllC wide _spośiród t_
c:chni~.• /które po2na~y w rc:j książce. Jest to intett-snjitee od.ej. de
od ZAZWYClaJ .,.zamkmę-'tcBQ ,charakteru wu,~ dotyc~ecj progtamo\vafiriil konsol.
b)~f pi em1 ~zym filmem. gdzie 1..astoso"•ano VJ.' pełni cyfrowe rca1is.tycZ11e -posracie ora.2
efo filmu Fino/ Fan1u.-vy. t;dxte wszystko było wyge,n :TO'I.Yffl.lfi:' komputerowo. Wiele 1erlinik
opracowanych na potrzeby rych filmów zbyt mocno ob4:ią2ato pm c: nr, ab1,i· mogły być
wyl.1)f1.)'~ne w ,cza..-4,ie 17.ecz-yw-i5lyiITI. ale po81ęp meohnolng~i i sp~~•u pov.vala na :zasto-
sowanie coraz wirlluzej liczby tych technik \\' grd.Ch. Wicie mech::mizmóv.r shader '\\]'ko.
Q}'!ilywanych pr-ze.z wytwómie filmowe do t1;,vorze11;a realistycmego ołJmni kóry 1 wf*11
można teraz zaj mplementować na naj nowsz-ym 5,pr.1.:'ti;; ie. W czasie ~CCZ)'"\-\'msł)'m można
1111fd;e zastosow~ ,.,,·ieh: kchnd,:. gr.:omcnycznych. 1akich jak marfins: oraz skimung (nil•
Jdtid:mie skóry). \\' pieru'S2}'tn rn-mie Park .Jurajski z sto ·owano tr.:ks,ucy. któri,; nakła
dano 11a p<,ruszającc si'i szkielety dinozaurów. pros.zc?L>'fm forma ,eehnikJ skmni,ig jest
tern.z smnclardem \Y grach n. ,v trzcc~cj c:z4i:ści filmu Park Jr,roj b udoskonalono~
mcchnologi~ 1Wprnwad?-...1jąc wolumell)'C:zna skń~ oraz anim.i.ej~ lł::anki tłuszczowej, która
porusza się i pulsuje w czasie, khxły dinozaury się JX}ruszaj:i, tworząc bardziej fC8 I•stycrnć
eft:kty. 2ało;:t.ę s ię. że m1."długo 1akmc efekty zostaną zastosowane w ,gll_ich.
Krótka historia D1
1
i rectX
Aby w efekt)'wn sposób wykorzystać nuwy Sf.'U7.ęt. potrzebujr.::m~• wydlłjncgo jnterrejsu
AP[. Kiedyś iruc:.·rfojs API na platfonuie \ indows był 1JOd;r,;.;-hmy. W'1elu progrnmiscim·
wywodzących się ze świ.~ta stacji ro~z.ych 3D wżywało OpenCJL" natommast inn1 \,\'}'-
kony~·ali ZflS'Erz:etony inferfojs API JDFX G lide. Jeszcze ~nm tworzyli swoje wl~11e
JOZ\-vi:ą.ania programav e. Ni~7"'11e7.nce od tego, czy luhim)' firmę Mic-ro5oft. ci}' też n,e.
DirectX uczynU , ii:lc dobriego, ujedoolicaJąc pl~tfum1ę~ popracz dos,a-1C'1.~p1e producen-
tom s ~ wS?pólneso interkjsu API, :.,, następnie ,.,,.~aśc1wic wymu:$~j~ spt-eyfikacJę.
Te~ pogrnmiści dysponu.ją berdzir.:j slabHną platformą doct:lt.JWft i 1.amEasl pi,sania k.ilk~•
l'Óm)'Ch "'Crsj m r~nderer.i.. mogą poswi~--0it wi~◊ej czasu łllJ p,san1e lep, 1.~j gry.
Poanimo tych zalę;,t, pierws.ie wersje Di r~ tX b)·ł.1 1roohę nieudane oraz trudne do,wykL -
~ (ania. W ra;poreie autor-siwa Johna Ca1i1U1cka (program i,st)' s~lnika grafic-7.fl,cgo fi nn.
•d Solh are) opi5aflo \vsey~lkie błęd)' w~esn~h wersji Dim:130. \\riele 7 ty b ZillZllllÓW
• _..sl4,PudlllaWJ
7
było wtedy pr8\\'dziWC I do
zwolennikami DirectlD. -~
r .
~. fe począwszy od wersji 8.0. interfejs API
I' k przez ludzi nie
ten jesl wspommany
.BibJiot.ek D3DX jt! t ,\ "'ięks.z~J ~śti• wysoce zopmymt1l~zowanym. ~- 111i1: 1yll(~ .m-lQ-
d mtZO\~ a.nym triybc:m z opożnieniem. Za, icf1l luUra podzb1 orów funkcJ1 obsłu@•1Jąt~"Cb
podst~ wowc. :ile kom czne uda.ni11 ustawrania mCi! icrz~ ! \.\•ektor:., oraz. w.?'k.on)rwa.n~ I
działań mal('111 tyc:mych. Ki~k ~atw eh dt>, korzy~ffimfl funkcji wył-tonuje w z.;•stkie
J
D30 ws;z~zle hun, gdzi to ma sens, \\,f na.'it~pnych mzdzrala.ch przed tawię; kHka
pod awowyct, fnnkcJi narzędziowych bj bliowki D D •.
J ,V$p0mnia:łę,'ffl w 1.cśniej„ j1.-dnyrn 7 n U\\.'i ·ks..z:ych osta_gnięć ,,.. ru:,,, ·oJ u 1.are\\ no spfZ\11.l,
jak interfejsu APT Direc•X. jest roZ\1i·6j mechan11Jttów sh.iflcr. JntcrfCJ , API DX .O za.
wiera pe-mq obs·tus • mechamzmów hader dla s.prz ·tu, klliry k mi:cha11iznl) ubsługuJLt
DP11 pozo ·tale.go .spl"l 'łu 1 n1cobsługuJąCcgo rncc:hL nizmó,, ~hadc,r o rai.:o\\ano ~terowru-
·r, które bardzo wydaijme implementują mechani,m1y , ~ni;:\. shadcr p 1przc1 pu ·tow~
tmufocj't. \'litrkslosł lc,,-chnik orn ó" rony h ,, le ks1ą.zc1.: nac b), la dostępna we wczt:-
inrCJSZ}'ch wen;Jach Dm:ctX. Jnnc były dos.t~pn~. :1J..· znac7nic trudnicJ~.1.1..· do wydajn j
impl_emcnta j1. DJ doświadc.zon>ch programi tó,., D1rec1X .,;ilr..1.\ nm'i.ego imcrfi:i u API
J)O~nny b ć ~Z}'\vii~. Db lyi:h, dla tÓl)'Ch Dm~l'.lX J~).L p<)jc;c1em no"~ m. 11nwe fu nkcje
pnwmny pomó w ro1.poc1 :-cm prac.> .
Dobrą wN1donoością jest fakt, ie chociaż lrod :r.apre7.mlowany „ tej 1cs;ązce zoslal zapro-
jektowany dlf.l amtiki Di,~ctX onu. :t. w)'lwu.ys1an;em mteńejsu DirectX. więlcszość pojęć
dotyczy dowoln~o interfejsu 3 D API . Doświadczony program i~ta OpenGL z la.tv,.•ością
przeniesie kod do OpeuGL.
Rozdzi ał 2.
Powtórzenie
wiadomości o wektorach
zytclnicy. krórry mieli już do czynienia z ~ranką, na pewno \\)'konywali działania
z wekrorami. niCZ!lle'mic od •ego~ czy zda.wali sobie z lt..-go ·pra,vę~ czy też ni1:. Dla przy-
kładu w grze Tettis spadające .figury poru ~zają_ się zgodnie i wę'ktorem. ,v propmie
do rysowania każdy piks "'l n ..:-kranie j "SI poz.ycją, która. moxc być reprezentowana ·ako
,vd.1or. \, tym ro1.dJ1;ialc powiemy rzym są ,,.·t:ktory oraz w j ak i sposób motna wyko-
ń)'Wac z nimi <11.ialanin. Omów•my następujące zagadnienia:
♦ D ·firucja wektora,
♦ om,ali7.acja wektora.
• Arytmcryka wektorów.
Za\l\vaan.. ż.: wek1ory różnią się od skalarów. które są liczham~ rt!'p~1.:eomuj'4C)'mi pO-
je<f)'nc,-..ą warto ó lulb wielko~. a przykład ,60 km/h je!>1 wartóścią skalarną. podczas
gdy 60 km.lb \\ kierunku n północ można u1.1100 a w ~ktor. Liczba wymiarów~ wektorach
nie jest ograniczona do u-.i~-cb. irycy mówią o cmmpl"l,cstr.zcni. k16ta jest co ncijrnniej
cztcrowymiaro,1,•a. a. nicktóN a lgorytmy \\,YS-tukiwania opierają się na pr;;..: ·trzeninch
0 elkach \rymiarów. Tak czy inaczej, wektory wykorzy. tuj&: ite w celu opi ania. gdzie
..,.. . 2.1. W..1Dr2D
11'~1D1JD
Normalizacja wektorów 1
Na. wck1or 1,kh1da srę ZMÓWl'lo rozmiar (diugo~ł). jak i kiemnck. zasami jrzdnak v.-y-
gódm:jr;st oddzieJenje od si-e:bie tych '!i ielkcr.;c-i. Może nas imereso,łw'a.ć tylko dtugos.e [1ł)
l)•Di:c kic:TUndt, rozumiany jako mormt1lizo,,vany wektor jedno mkowy, czyli wektor o dh,
g:oki I słd~·.my w t samą su-on (zriuW32tl1y. ~ jest to co innego niz wektor i n ~ .
który omówimy w dal ~ej części). Aby uhhczyć dlugo~ć wektora, wystMt:Z-y zaslosov.'łf
1wjc-rdzente PmllAgarasa:
.Po wyliczeniu <Iłu o~i można .r.nalczć 2nurTI1aHzowru,y v,:ekto jednostkowy popr.z:ez
podzieJenme każdej w.spółrzędncj przeY. dtugość.
X y 7, ]
=- [ jvj•jv• VI
~a J)·sunku 2.2 pokazano przyikła-d ob]ic;zania (Jh1gośti wcl...tc,ru oraz u~kiwania wektora
Je-dnoslkowego w tym samy111 kierunku.
Rysunek 2 r2,
Oblfaf1nrt• ....
:znormaliww.~t!KQ
H't'A'/Qi'fl
jL"tdnt»tiOl.1\'KQ
Ili
\\"}'m'i arów dw6c:h wektcrów się zg.ad-~ ieh doda,; anie je-sf proste.
Zakladaj\C. ie liczba
Wysłafczy dodać do sjebre poszc.zesólne współrzędne obu wektorm~•:
1(X, .r. .z .)-,.. ,x~. Y~,Z?) ={X x?. f +f l , Zr + Z;)
M02na to łanvo zihJID:O, ć graflc2nit·. stosując n.-guł" .J)Ot'J.Jtłck z koncern" (aog. lread-
10--1a.il), llllk jak polra7..ano na rysunku 2.3.
\ m__noicniu ,:i.·ektorów oboWEąz\ll_!ą nit.:co mne zasady. ?l"Q$tc; mnoż~mr.: można wylrooa-ć
tylko pomiędzy wektorem a wieJ'.ko~ib\ :;ka]arną. y.r efekcie UZ) slrujt: ~ię; W)'dfuxenic lub
sbóeenie wekmora bi:z Zllltimy jegu kierunku. \V Laki m przypadkl.3 przez wielkość skaa
lruną mnoży się W-tffą, .ze ,,fspółrz'tdn:ych :
fłyigak 2.4~
3.ła!oK--"anle- Mnoaeri p i ~ 3 .0
(wielcośt ikalarn.ę ~
( ~~ ~ .,,,ei(lor{J•
V=3~
/N:ff. k'iełko,ić
!#t.1/m,ąą
Rysunek 2.s.
....
l>,,,u n Ol}' lJ
U.;,
n m-"_..ro h kfc:r11WĘ1i
nowyno$1 po(11lfdl.YU. V?
'-'r
+X
u IJ
IS>1nicj=t dw~ posob_ obliczania iloczynu skalarne •ó. Picri.1.· zy polega na ,w:.vkorzystan~
wij)6łrzędny,ch dwócl1 wektorów. Znając ,,spólf"l ·dne obu wcktoró , nalefy skot7.Ys1K
z nas,ępującego wzoru:
U • l'=(X, . .t;,,Zt • (X :r., Z,):::: xr) X1)+(Y, i; )T ze z.. )
Jezcl i znamy drugosć obu wektorów ornz kąt mi~-rlzy nimi, moż~1ny skorzystać z inneJ
ffll~tod}'~
A zatem ilocz;yfl skah1my Jest uk.-c 'lony popr..!C7. kąt. Im więkw:y kąt p,om i~dzy d\vom&
\a,,·clctommi. 1yrn nrn1cJsz. kosinu.i:; tego lkąta, •• tym 'Samym lak:;i ilo..,-zyn skalamy. W więk•
szoŚ(;i pnypadkó~ bilrdriej plZ}'dajć się pic LY v..'ZÓr. ponit:WŃ. z re 1 uly marny "-spół
~ c:ktorow. Oba v,'Z()f)' pl?.)·d ·ą i · do t>hłiczeni~ ~1b p1.m1i~tb;y dv.oma wdtwra:mi
PomW11ame dwóch powyi.•;~:yeh równań i prr.ckszULfcenic w celu ,....1-maezi;:nia kąta 8 daje
llmitępujący 'lw2lÓr:
Z ~ nnku 2.6 wynika. Ze ; toczyn kalamy dwóch 'I. ek,orow tworr.ąeych kąt prosty wy-
fl0$1 O.O. Mofna to , Wł z:.. pomoc~ nas~pujących róWTiiW;
81
Ryaunek 2.6.
M:m temh,naqe
~~il'Ó»~ł ,dt
t{~-mh.• SkmaffiJ'dl
~.......,,~!MWallli
UI V~lllll:l•••~Y'III~
~D
1,1
li
Ut V1111 ~ M l * lll~t
w jll'Z,Ml'w'r'l'f'(:fl
~ILllll!mai'll!l 0
u
"
U - (1.0)
y : (O.O
U • V - 4_l • O) (O ,., 1) =O
Iloczyn ska.ram j t:st J cdną z najbard2it!j przydatnych oraz J>O'' szcchnycb operacji m1
'1,vek orach. :Jc1órc ,..,,ykorz_ s1alem w 1cj książce:. Odn.nh;z.i1mic kąta pomiędzy dwoma
wektor.J.mi polWala określ Lć OS,Wierlenit:. oric:ntacj.; orez wjclc innych tzybutów JD.
'V!' inn)·ch oblic-zcmach kąt nie jl-st tak ważny , $8.mll ,,:a_nośc Iloczynu slmlarnego \,'\:"' •
s.t'.l.rcq ,to .1:::111mplt!mcntowania. w,>nbr$11cj h."t'hniki. JlocZ}'D kal:.1my został v..iykorzysttn}'
iltiemall w każdej technetc ,..apr~Z(..'fllow,1mej ,.,. tej książce. Jein LO nteoocr'lione naR>1rdziic.
A.fe ie:, jcszi...--ze lll!.! w.szysrko. ISitmcjc jeszcze jedno bardzo przydatne docialanie na \VCktoracb,
Rysunek 2.8.
:wtc;;!IU.f [MOJ.ł ·.~ ,, • U ~·- 40., 1. (J~,. ... o. 01
ilt:x:z> lf.ll
lt\ • (J "" ()'I -~() "' 01 - Jl
" oro l,1- •11
u :r11 .. (Cl • ·) - rn • 01 „ (I
7.\ •(O • 01-lJ • .lJ 1i
,'\ •~O. O. I~~
V
.,,.
'ar10 zauw~)i. t i,vc t N j~L pm topad)y do obu wcktorow, lt- n11:J.;_orue m ic- je:st "'
w o,r j~dnQs-tke>,,.. •• A by uzyska.; Yit: oor Jcdnost.ko,.. • n [eź), 7l\Omlllhzow ać 'lt1i eklor
Obi 1czc11;c iloczynu ,v..:KLoro\l((! o Jt--SL nilj pro a.,.,_zym p,osotk.:m IJZ'jskanu, tora.. kt&y
J pros: op:łdl_ do po'l.vic·rzchm. co JC t nie;n _ykłi: " ' ~ w obliczenia.eh związ.:myc_h
o. "'-'i1.1.lcnic:m emu. cicn iowa~iem, J Je2j· Lakżc: z uwa_ży • ie iloczyn i..t,' I!' -torowy Pit
Ji=!ll d'Jirunnkm przemiennym. Zm1at1.a alej no ~ 1 openmdó\i.' .zrmcoi znak Hoczyo11
\\ e torowego:
DruM, rnecod można ~OSO\Ji ad. jt!'_~łi ;rnnmy ką1 pomiędzy dt.1toma " c0r11mi. Dosipt)'
\1,,2ór można Ulk1.e pl"'lt! ztałci • aby zna; c ifoczyn wektorowy. obhcit ką• pomi~dzY
wi=ktommi: ·
Pa.mi~ uny. :re \l,t.'l{tor;• moma mnoi;yć jedynie pr.q:-t; vi elko~ i kalame. W poprudnim
i.~orz,ę w~ or ~3lny : ji:-sl pomaot-0ny ;tr!i dlugo~ci dw eh w~łmnó"i om sinus
\ką pomifrdry 1t1rm. leżt:h ,ołtceymy nb:i. wznry, mottmy wyprowadzić ~ór na ~
Razddal 2. • PowtdtNnłe wladcNnoNI a ~ a,
pom~ we~i. Oznacza t~. że jet.di mam~ dy.·a wektory i chcemy dowJ,cw~ sit~
jak przeJŚĆ ,od_J~cso. do. rdrug•~go. co ~otemy W)'kor:eySłać il~n wektorowy. aby
ziialeźć kąl. ,o Jaki ~••nmśm~• ·Lę 0~1ć_ oraz o • wokół kt6ttj nalcźy dokonać obrotu.
Tenz. mó~ł\<: o kąlllc~, ~ ra:c:1.~r1~1o_śc, m~m na m::i,1s.h ołm,•y Wi=ktory, kt6rt oma-
wia.lismy do U~J polj'. op1i11Ją poeycJe L k1erunk1 w pl!'Ujtf'2':oi, le do opiS}'\\•ani.a obrotów
można " ':)tkorzysta~ mny mdz:jjj ,,rektoa;, ,
Kwatemiony
Teoria matcmml)'C1'..r'l;1 dotytir.ąco hL·memi,:,moh· je t d@Si}'Ć skomplikou.·an.a. Doslo\\'ftLe1
- 'K\,'ilłemioP. nproco~ aino do cłl7.itdań na licZJbach zespolonych! v.r dokumentacji
Din.-cL"'< opi53no kwaremi\'ln. jako, ekttuy cztcr<J\Ji,'Yffltarowe opisujące oś obrotu oraz
~q~ wdkół oot
Cfioci'lll w ·;:nsic rnii1ih."m11tyc;r n)rni jc:~r 10 pc.."''"'"C uproszczenie . Eo jednak d!a na,s1.YCh
c~lów j ·t 10 dobra dcłinicj1.1 fimkcjom!iln , 2 pc.m1<:M:ą kw3tm1ior1ów moż~rny opi~ os ·
ob10tt1 ora1,; k;:it tak jak to pokazano na rysunku l .9.
R)HFlłk 2.9.
l"'l\i:lf~,Pf,lro#J)'
u Młł'ml:.i •JD
Do tej pary om win11~ wc1ktory w sems;c C%' ~. m1uen1.i:1tyeznym. hocniż warto "''1e-
~iei w jaki ~ :b wykonywać obiic:~nia r,ęcmi~, to jcdn ~ nic roo I ki i;j onieemoici.
BibJiot~'ka D30X ~wiera wrelL! funk Ji udostępni0j ych dzL-a.lania ,in , ·ekforach. ~ ielu
~ -
I - - - - - - - - -- - - - - - - - --
18 ~I• ~
W tym mz&r:alc oie 'W}'Dlien1tem w5.eynkich limkcji bibliotdd D3DX ale w tA'beli 2 1
1
Natwa1funJccji Komentarz
OOID. ecJl.a'ij D30~ ECTORJ:• ' m k. DJo1 1 ECTORl
i '11'/ekw- 1. D30X iCTO:O ,, '- o 2>
ll30X ecJSub ra. ([lJ(IX\'ECTORJ,I!' ·11ioi)Tl
03&'.(\l[CTCIA3"' torl, 030~ ĘCJ J~; ko 2)
DJO~ «-JCross (030):'ltCrort.r' ,,! 111 k., [ljJl'U:CT003
.tor . D.11).(lłfCTOP. w. oriJ
' :WecJOot C03DX'•'ECTORJ Wym l. DJD:Ll/fCT'Cf.3_,
torl . DJOXYECTORJ ~ ., or2} Obtic7,.a iloc7,fh sb h1.r ny dwóch wel:.;1orów.
ll30~'1ec3le-ngthml0x 'ECTOR;ft i , . ~ )
Obł~_ dfu~~ ,vcf<4orn j Z\\'JUCll \\')'lll typu nMT
OOO:t\'ec 1, Z@( 03:J:t EC ~3... ,. yni k
00D~YECTl:f?3i!! ~ tor) · Oblfo?,{I wektor znnl'fnah1.awooy.
ooo OJ n n1orul'il a , ~ H ( OJO~OU.ti.JEAN [00...
111,1111 • OJID.VECTQR3it ~ . Ftlli1iT... iltObrm: ) Tworzy k, iermcm na (Xtdstn\ ie podill'lej osi i k.fa
~' nidi.flnfl<:11}.
Ogótnic: J)JlfanJetirnm 1, &!1 - ,, . • D30
l.1 ...,,,,._ ........l .
"-'"ł:IU ~.ących vgu mt"nlt3: •
• lliilll,CJ ~
•X. •~. : ,,.,, ··Wnik
.
:.tWiaeają w[)rtoki ,- posta:' W'JJ:IO\\lym ~- Oprócz par.amelró\'\· wyjśdowych, .fiinktJC
... -u .
. tło '"'an.oś cm· wyr1J·11,~-.0weJ· oraz \\,·s,•·",.:,..~
nyeh liulJkcj ~- W d:11~. C"'"',.c ~Ył1: .u,, a zatem funkcje mogą służyć j nko parametr)' in-
u-
-11"'-Wn1Jrnv '. 'SI"' u,•1·-r,łCI
• ,te Qfflńn . nncób .-~t--·nw-
' ~'t .Y"""
Opl ' .J
. _ '1.1\ilV anm W t e u ~ro
• • I men.
. l;. Na ... ,,_flll'
...
- · ',I. -.: , ...... , istny Wtększość 1n..1.. . . • . . .
ltlentować wlastJ j biblioldti ffl""l'.•m . • , ~ .r.vflych ZB.g; ® Jen I e me IDU.Slffl)," 1n1pk--
- ....... 11 Yt:ffleJ.
Rozdział 2. • Powt6rmnle wladamołcl o NktoNdl 39
Pod8111110Wanie
\ ~k,ory s.trnlowi p,odsmwę mi:llllll . ,. ,,sz,, t:kiego. czym b\~cmy l mj niowilli w o-
leJn) h roYW".1:d h Poch"t'IW!I wi lu 2t1awansm yth h."C;hnik 1c:st airy1me1)-kr.l , dctor
oraz no.zwu n1 te~ • w 1ilk1 sposób,, mry n:pmi ntUJą prom1emc ~w1cth,e. 1cf"Une
k.ru""llel')' rnz w polr-7.;d11"' pclW1Cm:hm oddli ływująre n~ ie'bn~. \\. d l~ h roł'..dż1&b,ch
n. '1 zymy 'ię' \\ LQ'CC'J n11 lc'TI131 Wi:?ktoro,, . le poniżs1-e punkty będą dl11 n ::is stancw. j,ć punkl
wyJ ~ J do tego. e m ~cb:1emy 1i.: iajmowa :
• Wi:kl ry repn::~ntuJ, J i')'C-J"', ~nlll :JC i k.ien.uaki "1clo·wymi.a.roY.cJ pro.,--c;,tu.A!:!11
ł oaugooć ~ ~ktoi""d m orna obi 1c;eyć 7. \'l,l,'lt!rd21i!nl~ p im!!!,Ofa}kl,
• \\ c ·tory motlfL flOrtniJhZówac d posl ci ,, ~ktorów Jedno tkow_:eh,
op1~u1 C) h kJ runek.
• \Vc ·tory można ,Jod \\ OC tfo inn)·ch '-""i;: ·turów lub adi;Jmow od Lfin1 ch
w · ·toró" ~ ~uo uj4e cb:1~1.m; oddz1elnit: dla po~;.i;,c:r.i.:gólnycl, w pól~ych.
• \\' c ·101: nwzn mnu1yc tył a pnez v. it: Ikose, !> I me.
• Jloc:ey n kalamr \i,·ckror; •J-.::-. wnn.w.i:, opi~UJI\Cą, Jak b:mb:o 2:bl11onl!' ~
kii:runki dw.· eh we tnró" .
• ]loc:ryn \,,.'r,; ·roro". wcktornw JL"'i4 \ \ C ·ton.:m normuln. m pro:-.topad~m d,ntm
"r,; lur,>w ~kł.adm\ ~ d1
• Z ile L} nu ,,•.;-1,;torm i:~u ~..-d.l~m'iw moł'cm_ sl.;:o L.. !itui:: w -.:cłu .mal 111,;nm · ta
"hrotu pom11ii:dzy dw( ,mi1 ,, 1,; ·cc,rami.
• Kwa1tmmny mom.1"' k,,r.r.y-.f,łL do r: ·pn:zr,:mow~mm l1hm"1" w przt.·· Lncm 3D
• 81bhol ·k~ D3DX Y.n,·1crn Ju11k Jr.: m llL!mat~ zni.: fl('llr,t:bn"- >") konp,ana:.1
"1,i;k ZL~ser 1.lzm_ł• il 11.a \\.'cktorn h
QifN I • ..I '8łaitf
Rozdział 3.
Powtórzenie wiadomości
o macierzaclh
te osiąg,nicm. zbyt ,,,riel~ w grnficc: 30. jeżeli ni.: skoreyMrut'ly ~ rn:ncu::rzy. W r:zcćzy
wjstosci wi • ·= §ł intertejs6w API do 1:WOl'"h:ma grafiki J) Zffll.lS7.B na5 do wyk-Qll'Z}i cywa-
nia m1tCicrey. Jezt:li chcem uzyska· na ek.rd.ni-c jakiekolwrek ·wyniki. mu im•. \korzy~Lać
z maci11.~·. R.ozrl7.i, a l)OŚY,'it;eon llUlcienom op1 uje je w prostyt:h :k~"" h. Omówimy te
"'iaicl1i.vości macki:zy, kmór~ c~ niai , :nich idl! Jn1.: Mr:7.ędzii: do ,...'Ykorzy!itani. w l'; ·o-
t7-.CDIU gJafiki Il o .u wyjaśnimy.,,.. jaki ·po ób neki)• korLy!:itaĆ z tych wlaki1i1.·ości,
by , ~,wac na okn:.'-.ślon pJr.unc~I)' JO. K1i;dy JLl.ż omówim)• wszy tki~ Le- .1~gadnienia,
p,owjt!-my. w jilkirn !itopuiu biblioteka D DX pomoże ochmmć nas pn~d 1,3wił~ci11m1
dz.iahń 111 mat:ien:r.1ch. Chociaż ten m7dział dost.'łrcz L"\\ ii;z.łcgo stre:..zcze.nia "11:di;·
u ma scrzach. moż~m4 mieć trudno. Cl z pr.1:yswoJCDlt!m tcJ wiw.y, d - póki riic 7.A.CilO u-
j emy jej w prakł}'cc-. ow,cjus.xc. ~1órzy me zoi.ljąrpojt; ·ia rnacicny. powinni pr7.eczytar
t4:łl ro;y..dz1al. zapamn;tac tyle, il ~ Co mozhwc na"'it~pm pnqsć do d Js.zych roz<l;ja)ów.
Wrdc poj ~ sLanri; s1~ bardz1 ·j zr :wm.mlych, kiedy z.at:1nien1y stosowac Jr: w kodi!u;.
w dt1 I zych m7dZt fach .
Co to jest macierz?
1
4 6
[x· f'
Z']=(: ij
16
12
i]
_.,.Podle..,
Macierz skalowania
L .
,lf«im kalt>1''t11łK, 511o1Ż}'
d sk"'low1tnia da.n„ h popr7.C2 pomnoknie ich przez
1A
l'OD)' ws~czynnik:
x· . r •a
o o o X
a
o b o o r
{x· f' 2']= o o C. o z
o o o
C'hoo,1L1Z w opcncJE skllowani11 "')'korzy Ct1jcm. ~- !ko mnoil!nie. EO jednak pomslawimy
dodatkowy. cxwa.rt)' wi,;r57. dt.a u"l.tho~,.,.<{lma zgod11o·c:1 z m11ercr4 przesuni~i ~ f l)1.ari)
sobie na. •o J)OZ\volić dzi~kii wSJ)ÓJni,:dcfl~m jf•dnorodn}m. pósób wy Oftf\Vania dzi~an
z mncierzami omówi't: pt.Y.lniej1 po Qp1saniu ~131niej z macierzy tran~ ormacji.
Os1t1Lmm 11"®7~Jcm m.aiciel'Z}r • nsformacji j C"st ma-t•fr_•,-:. ,nbrru11, Pcln~ m c1erz obrot\l
zaM'i~ra opi.s obrocu ~okót w zy tki '"h trzt."Ch os.1. 1ednak dl u pro - .t:(·Zl'11ia opisu p~td-
~ '~!en, osobne macic~ obloru wokół w.dej 7 os1 w·
ml r •pnym podm7dzi k "'1-la~
ruę.Jak motl'l pol'qczyć ti= 1ny maeier..re. Tr.cy n11Jci ze obrotu Jffl ·a:z.mo poniżej~
y
o o o
Obr~ o k , r9 wo ół
o co(} - s,nO o
R=
o :?-UlO eosO o
o o o
coso o ...,inB o
ObtQI o kąm & wokół osi y • R _ o 1 Cl o
- ino o cos.O V
o o o
co o -:smfł o o
Obrói o kq_m8 Wokół osi Z: R sino cósO o o
o o o
o o o
Dla zademonstrowania wykmzys1ani111 mac:iel'Z)' o'bro1u obróciłem wektor kół • z..
lak jak ~~no Io na ~ unku . I•. a rysunku obtóc:ono wc.-k1or O90 sto;': wokó"';osi
z. Jak w1dzim)·. operotJ ll • l'@~'C)CfoJc- p~ksmłccnic wĆ''klora ~wrócon~so w k" nku
osi X na "' elcto.- zwrÓ<:ony w kierunku osi y . •cru
RpUIIM3.1- ,o· r.
- r fX{ja,p•
()brrxamt' K't'.ltoru •V 2
:.1 ~ m~Jcr.n.·
~ Io-
o O ■lllCJftl eos~) sio(!.) o o
2 2
[..r r"' z~ 1] o o l - smr-.IT)
• CO&~) o o
ZWllda poaąao.,.y • lll z z
o o l o
...,
D o o ]
ff 8
'IIJltkl.Or Po X'• (l 1' rć~(-) tO • - sin( ))+(0 O) (PQ) o
li
2 l
n +(O " (;0!1
Y'= (I '" sin(-)) f. )) +(O · o)+ (l "'O) l
z 2 2
•Jt. ....,
~ Cl O}+ (O O)+ (0-.1) (1 O) • O
Połącieruc tr7c..-ch macLerz.y obroru w Jedną datob~· ,, ""-ymk.u Jt:dną dui..:t i komplikowaną
ma, i rz obrotu. Ab to zrohjć, mus.im IJ~ilc zrtsad}r I cze:ma mr.1c1trzy.
łączenie macierzy
by uzyskać pol~c:1'-ony efC!'kC działam ,, idu mac:Li.:rzy nili fy JC pol4cz:yć. Jest to do-
datk.O"'-'Y po...,.ód. dla którcgci wykun ujcm, d:,rnhmta nc1. m:icIcrza h, Kiedy wszy tkie
równllniił mają posta. mac1t-r1y, macLi=rt: ,est po pro ·1u ih10n:m hczb, na który· .h moma
wykonyw dzttibmia :r11 :pomocą arytmet) rt• macn~IZY- \ · tym pl7)ip3dk'U macicf7..: I czymy
poprzez ich pomnożenie, Uoc,yn dwckh lub wL,;ccJ mu.t::ier'l.:' zaw, rs wsz_ ·Ode pott:1A.:bn-e
dane do .7.a~tosowanm W:1-iZ)'i.tkieh pr7cl,,,, 7.,t1kL"ri. Należy 7\.i.Tocić IJ\\ agę na fakt, że ko-
lejno~, , jakiej m:Jc1cnc : ,_ pr.,~.1 s1ebh.: nmo1om: m.i kluczow~ -;tmtći.enic: . pr2,l kład
wy oname kalowania. a poh„'ll'I prze-suni •cif.I ról.tu Sl-«; od w. -k nania prresuni~ i potem
'ikalow nia. pii;rw~cJ z 1.rch u~racJI wsp6-łczy-nnik skalow;mi me ~dz•~ 2..,s,tos.o-
wru"ly do Jl)fZi.:suni~ilJ w drugicJ odlc:ga,,s.ć pncsum.,:c:fa1rownict 1osmnie poddana śkilło
\1,'aniu. \\r l.'02.dzi lt! 9. 1:.apn."Zt-:IUO\l'aJJO pł7.)'kfado\\j' program, który d ·monstruje. w ja'k1
spas.ób nafezy Zll.~C()Sow~ć prz!.!ks7tak--.e1tia, aby prlt.~UWllć obi ·hy " pnestr"t\.-ni. \\r przy-
padku mnoż :nia IDaCl rzy druga m ci.:rr. Jt:!iL pic:C'\,,. z.ym opm1nd m. Ji;idi tern chct::my
"'Ykon.ać pn: uniifr:t."il! za. pomoc-ą mi.lei erzy • a na.se pme skalnw rd~ za l!><lff1n.,cą m tic-
rzy , powin n; my z.as.to ow ć n :stt;_pują e JÓ'l\ 'namc:
M=S•T
~m•~Jmy: je1.e1i pr.t:ek ;,.taJc~;• obiekty D , zac:ho,, ują i oor: ~r41C1:ej. nit by my
51t •~o spio<kiew~1i, jest bardzo dmk prawtlopodobi rutwo, t ..: po~~niliśm błąd w k lej-
ności mno:żc: 111,a m3cierzy.
Macierze a biblioteka D3DX
Do tej pory zapc-wnc zoricnlo\\•aJ i ie sję. że ńic .za 1,:bi~łem si_t w szczegóły
tycmych metod " kon)'wanfa ~ialllń oB m~cicl'z:lch 1e nobdcm tego~ ~niewaa,
wifkł:z:ości. jdli nie dł \\. ciy~tkich. o~ra.cJ ~ ~,n,ebnych do W}lkonywam_~ QZJIIHM
mKierzach i tnic:j4. odpaw1cdmc funk~Je w b1bhote e D3DX. Oprócz funkcJ1 ,ANa-....
wekiorow. bib1io1d:a D OX zowie u funk~je lu~« do ~koft:f\\,'llnia podsia
dziiałań 3J)1mt:tycmych m1 ma,;;:ie~ch. n ~ k1~ funkc11_ ~zcgo ~ziomu.
um&żJiw•.tją r\\'Or.!cn1c n "a.ryc,h milc1cr.zy :n podstaw1e wdctorow 1 l.;watemtonów.
nie jak w przyp:idlru wek1orÓ"'• pllmit,.'iłaJID>'• żt funkcje brblio1e'ki D30X s.ą w d
~pniu Zopl)'mAlizow ei nic ma po,wodu, ~by iMplcmentO\v:1ć t funkcji: 'SafflOdti •
Bibl i te.ka O DX zawit.-m u•1t1c funkcJI slu.1.ących flo \\ •konywama działa_n na ~tel'l.ll.t
'"1' ~stkic n~~- fim_kcJ_1 rozp,u,c;,yna~-~SI\ nd -~3 . r-- •. 1 ob ruguje si~ Je w PadoblJ
sposob. 2anu:'.1$t \'li mnernanm wszy_ tk ich fu nkcJ, mac1c:rzowych, w tabeh 3.2 zestawiam
tepre?..entat}.,.i,•ny przykład funkt:ji nnJbardzjej Ul)1ccznych oraz fuokcj r. które impłt
mentują d.6:tfanjai opi ·ane wc-ze~ni~j. t~~cJ funkcji wraz :r. ich 1. tosc,wrui icm zostarir
:mprezenfo"'ru1c- '" kolejnych mzdz1alach ,
Funkcja Komentarz
podsumowanie
w l}'D'J rozdziale po mz pie~ zdbi~liśmy się z maciGrzami. Podejrzewam. ie sposób
ich wyko{eySta.n i~ mote jeu,cie n is by~ do kottca j~n)•. Poezą,wszy od c~ś~~ 3,. we
~ e h c~oi.cfaeh. jakie: będziemy v.~onyweli, w pewnym stopniu ~ a n i y wy-
kotZySlyWaĆ rna.eii:rzć. Kiedy dojdziemy do momCPtl:ł;, gdy m:w.it:n,c staną się 1t2ccz:ywiście
polrJJCbme, , ~ spędzimy więcej cms-u 011 omówienie Sposobu ich 7..astosowania
oraz ,:wiąz.an:rcb z l)'m .~pułapek"'. Gd)• :ir.aczniemy wykurzy.styv.·ać mllcie:ra w praktyce,
wseys~o f tanie się ,o w iele bard~ii:j zrozumillłe. \\1 międzyczasie p~zytajmy krlka.
punktów, k1óre powinniśmy zapamiętac :
t MacLene są wydajnyn111 sposobem ~towan:[a równań, L.1óre opisują sposób
wymnywania d1.;ialań oa obie~1ach 3D.
• \Vs~dnc j~-dnorodne po•v.valają na łączenie operacji mnożenia i doda,; ania
w 1tej samej macierzy.. ~mi35t nradzielania tych dZcialmi rut dwie rnacierL~.
♦ Mac:jerz tot.samości jest idealnym punkiem wyjścia cło twórZCrua nO\\'}l'ch
·r,N1 ierzy iub .)'.CroWlłirna•• starych. Czasami brak efektu jest dobrym eftktem.
• Macierze przesunięcia, sk !owal!lia i oororu .stanowią podstawę pneks~talceń
pr.-Lt ·tr~nn~h.
ł Efek1y &:~lania kilku macier2)' moimi uzyskać dzięki ml'L('f;:cnau pOszczcgólnych
macierzy pite ~ichir:.. co oznacza. ich p0łączc.nic.
♦ lV mnołeniu macier.t.:y kolejnoś.ć czynr11ikóv.r ma znacze11ie!
♦ Biblioteka D3DX ~l.vicra w1~kszooc: pr....y~tn}•ch funkq1 potrzebnych dn twor.o:nia.
Mu:Ci,:rzy oraz V.'}1konyw8ni:a działań na macicr/.,;_łch .
Ro,zdział 4.
Kilka słów
o kolorach i oświetle■iu
Wektory i m i<-"TZe okrcifają ogóJnq_ pQ.ey.Cjc; 1 ~młt obie 31D. &le !~b. m6"1ić o praw-
dziwej grn:licc. tneba powiedziet lci Ika łó\\-' o koloraeh. Je1elm nars2 . Wł 1 30 rml być
intcn:suj cy i reala t)'cmy, po inruśmy z.ru.nmcresować sit kołor-.uni . Powiem;- k.ilka sł~·
m1 tCITI:Jł o.świellen11() i cieniowanie. Podobnie jlłk poprb!dnie ro-l.dzi&ty. nimcjsz:y rozdxi.ał
zawic:m zwi zły opis poji;c zwjąunych z kolo~mm i cicnio\ a.niem. e zagodni~ni:i będą
omawiane eonu. dokfactn;ej w ·olejnych ro1.dział~ch. kii?O}' ro,zpoeiimeory kooO\'Ytlnie.
fożdr nic w pełni :zrozumiem me tón: pojęcia prn:d.:;1Bwiont= w tym mTdziale. nic J}Tlej-
mujm)' się. Kcr;dy zakQnczymy lektun; •ej ks1ą i. pmuższc ragadnicn1a błil:t..icmy ro-
zumieć Zllilć;lrtk fepiej, niż tego oczc:kl\\aliśm}'·
♦ Kolor.
ł o ·wic:tlcnie o'lil 7.aJąct: i cm,syJnc.
• O ·wictknie rozprnszaj ce.
♦ O · wicmlenic: nvii.:r~mdlam:.
• Tł urmenn: św1:it.ła.
Jednym z p1crw:,.zych pokć~ jaku: nłlpotka.my. mówiąc o kolorach Jt.:~l pr:::t~Jtr.!ttrj lwnv
Wiele rómy h prli,.'StrL~n• Dan\, zah:ży od mL:dium ""'yni ov.·~go. Prz_ kbdowo . .\.·i ·h;
pruce:.;óy.• drukowonia wykorzystuje prz lrlCii ~u;v CJ\tYK (c_'r'wr - mebic kOLi~lon).
magema pu.rpuum , ~~ /low - żółty or.iz hl rk - czam. ). poni!.!Wł~7. ,, bkti „posółi
ID ~••.._....,
i,,c, " ntyzacra kóloró<IJ oznaci śc1eś.nie la M('k&lego z kres • ko.Jorów efo .Ul esu
mmef:Sl(:(o. 'llh· czaj opie, agę t\! ~c uJe s.tę popr7P.'Z u , ~ a pal kc rtM,
kUlira neJI 1pf?Ybt ta k.OIOfy r7e,cz- • • 1śc1e LllYfl:etne na 8-,bi ow,'f'I Kran • w m ~se~
pal 'Y 32-bilerweJ. ~ toy 32-bttaw'j ko:or SI na_.t4,; p.'lle Odwlorcrnywany na n ~tt.ar-
daeJ itihzooy k.ólor & DW,'. Prze1 \I aele lat b· a to dos)'l k~opo rwa opera<:ja, ałe
Obec:nle i-, i; ks10śt nm kart g r ~ h oosk ale ra<h1 soo1(t z ·&Nfetl 1111 m
obrazu 'tH pe 32·bł~ eR,o.
\\' llpn>s.łt'Z4..'111u kol Ol)' s • adaJ, :,rę 1. rÓln) Ch ifo:~-i t .tJ ")\\ 'cli ..:b;f"lo\'On•-J► ZL Oll'C· i nar--
1
bit.ski ~- f5tlti'"jc , ~ jt1di:n ł:ilnał dodatkowy. ·L6ry .rajmujc- -~ tmr= it(m w 32--bi•o\\ ·
inform.ilcjm o kolor,oi: - jtsl nim ·a,u1.ł alfo Kanał ..11 11 nir: J ~t r.1.~--cz. ''Vr·u;tym kol~
J l Io mi.am prac ocry-.m>:~ci kor ~ v. płyv, iljąc,1 na S(l(bÓb m1Ł'STID1i:1 si koloT\11 z i□nynu
L
Olot"J.rm, tóre JU'- .t. ~mu.Ją okn.~!1.my _pj~I. Dl.J o.c;t:u~czn go wyniku ueys ·wru1egc
na .ntoni•OJ7.e pr7.efroczystok wf 1wjc ,,ie ma. ;rn.iczcni.a, cłł01L~C!O :L. n:guły ut)'\\'ll ·
t nnillu RODĄ dla fozy pr,,ctJi, .il.f7',J]11:t koro u oraz N •B dta 1a.ry o.sliJtC!t"7.ntgC> 1i • wk-
rr.ani na C: • mnie'
Dh, ~- z-yst icli ~l1~1'l.-ch kan łów 32-bitow gl"bia koli:HU 071li! 7.3. Z!! k32d'y j L "'or~
reprc-zento"'łany pl"h:x jooen bajt o wanOŚl,.,j od O do .:!5 . J.~nak w p .cy-padku obliczania
OŚ't-\ icllenia, z m:ilc:1fl:ityCZ11 go pun 1u "1dzi:ni;;1 t.JSl1rni lepiej ·w,rmb tł? lir,;zh),• jako
~~i m ieunopr~ i n ow " z irakr u od O.O do I ,n akie ,, .airto. ei po ~ają ólS
\\.•u;ks-z do t.adr,o. ć n i t baj,y. il zt1h:m st lep ze do nbht'.'1en . Po w konMiu obli zeli.
Cl.BSie rendcro\l. .ani gra.fiki M ckmnil!', w.1rtu,;:d zmicnn prLc-ein ·owe z po\vrntcm
od~ro~ ~ oo i,,al'\ó. er bnjaow~ (p1'7y • dowo 01 rl'"Z)j inuje wllrto ·ć t ::!' ), Vl,'tłe •
:ttok1 ~fttZl!h koJor6' \l kom1rtych w t~j k iąz<: prz-)ję;lo, a: \\')1'K017)' tuj my ti zby
"f
~ pl7A.-dl1aru od O.O(lo 1,0, i,;byb· '-ę wczi:-.11icJ 73Stt7~km) i JL-S( inac.tej.
I
ROddlł 4, • KIiu 116w o 1cOlorRh l ~ Il
OłuSo mólfl>rm.opow111dać Q t.(Ol'ij kolorów. .ale pr.eyj~jmy się. jak si,: je v.')łmreystujl!.
W zy tkie w1dzuiJ Ile" kolory są obdlarie nie t)illm pr.az kolor obtclc!t.u, .11~ ~ ~ z
o wjctkrue_, ·11 .Pl'Z)'kfad w doskonak tiem~rn pok,oju w Z)'!l!kic obidcty \\!)'ltaj11. się
('Wilt. ni~_ i:tni,o od ~eh ~istego lmJo~, W ~asl~pnych podrotdżiarach omówię
sp05ób ośwtetłanm . ob1d::tów or3Z \\, pływ MWllCIJ1tni1a .nt1 eftkt. jni1 idzi OM-1:rwialm.
W pok nych da3rJ prqkbdaeh qiłj rotwtdaó obMa)· jako ~iór powic:f2'.clu1i. ·lat.da
powit,~chJl ia i:ibill"nkLerymje si~ wcktoNro OMtnalnym, który zgodnie 1/ym, co opi:$.lłllo
'I,\, rozdzi~ le: L. j1:St p_ros~e>p;mly do pD\ i4:l"ldłni. I<.icćly będę: ornnwiaJ ~ ob wie\lru1la
OG1C~ó-.: • [PO'wi~rn o ~~ ,,. ~ spóśÓ~ j~ ~'.Il ieli'hmu. W& ,poWgen,cbnia ob~- 'Kil?dy
~ 1~111 mówi o ob:11cze:11ii'.1eh ośwmdkma., os-t.1.tcc;my, 'li nilrnwy kolor po-wie--l'Zfflni
bcc:--d.tie -0ma ~W>" juko cf.
(31lg. ambienr l~ghf;11g). Składowa koloru dla rm Lcilcma 0111c:JG1jąeego j~L iloezyo,em
koforu 01ac.lającego sv.·ia.tta ornz lrnloru ota~jącc:go abk:ktu:
C, =CłCi
Po't\•yżsiłc: r6wnilnie pokazuje. 2e Ji:~li ustil"' im)' ·\, 1 atłc oł21cu1jącc: a kolor bi, ty, 10
□as.z ob1c-kt ™t-d7.tc: m111.t pcłnr kolor. Mozit: ,o ~,...IQdowac cfi ·kt}· nu.m>·c1a orai: n1ero;-
~iwi~~go 1,,1, j•glądu . Za2."'-'Y~Z..tj ~~11~ ~ D ma;ą niewic1l~ s kbcl1~ik o10C7;4,.vn~a i dla do-
da.nil gtębi l.lra.7..,; ixueJn~j arr:akcyj nok i S ~□Y V."y om aJIJ:\ mnc- obhc:u:ru3 OŚ"' i1:11cl'li:l
WYfiik jic • lilk i :s,H.m. Jakby. m~ mcfin;m.\ al L p,;:Wn ilołć ')"Swic-tfl!'m 3 otacz.ająrego dl11
~go jednego o'b1elcru. Obił:kt pł.'l~n,• rw lj'.sunku -4.1 rnote b, ć sferą , pełnym o,w~
Ut"niu Ola 7:ającyim ·C<."11y lub sJcrą_ emi1uj~ bi .k S\,ri~•ło bez ośw ie, lenia 5;4Xllf.
1~ 4 . . t .
Sftm 111 ·it'J ·r!l!nr'U
~
OSwietlenie rozpraszające
(]Jwieilt!nic ,qrprw:ającc MO?t:łnje 00, oś,1'fi~k11i~~ ~~&:e ma ~itjsee w1ed}',. gdy l"-
mi~111e ·~i tfb docic~ do ob,dcru. a OOStępnu:: odbjJa,tą 1,,1ę w wielu rómych kll:l'Wlbcls
(p1rtez cę biDTI ud'.7!ii~· w OŚWt•iemleniu o~ac:zającym . Jest om) idealne _dl11 mtOCnł)Q.
m_ąto,ry(h powierzchni, ~edy powi!rzdlni fil_ wid~ ~chyJeń :~ w~uj ;eyeb ~
za.nic- wiatła. które doo1cra do obiektu. Pomew~ sw1atlo ,odbij •~ we w ~
kieiUDke.cn. ,.,, ~ oM.er.,-iarorzy nw.ją , ~ . żiG- . :i.w21da jest l)'ł~ samo, a iareusy,,,.
oo,ś,ć Ś\l. i Ila jd.t funkcją kąru. poro1{-dzy w~kwrem :świilt.l , L) o~ wektora normalix,.
damcJ pOwiemhm ,:
C, - C"C0 cos.8
W wfe1u pnypsdkncb fat11 jej , f),'ko~stać i loczyr1 kal &Jmy, nlz ab~ic:za ko inll&. u
\'YZ-gł~u sposób 'li ')'K-017;),~tanie ilOcl.)'iUł kalam1:go. w i:ktorr świa.tra w tym P•-6.l'P!Ntn:
jest 1riier-(11"1any od powcerLchlli w Siron, SWt'łlitla. Po Z11onnfdi:zov.•aniu w1.:ktan n
ru;go powie-~~~i oraz .ektor~ ś,viad11 odpcwiednik w2-o ru \i;ykon}•srują_c)r ilOCZ)-u
Jwny prayJmtc ne.st,:puJąc.ą_ pcs«tć:
C,.,-CfCDb • L .
lb'l•••k4.3.
Sfor"_(poirA~
11,lło Io\ r;Hłłff.tl~m·11
~,,.
fpo prd"ć/J w aivi-·1~1/~nru
~j(IC)'flł
, ouJ1::a}J1.('Jnt
Oświet l,enie
1
zwierciadlane
{h\,vit,11lem :,,.,iel'C'f'1df(lne ~"ia, z~ ~"•iellanl!' l)O\\'L rz.chnrc odbijają śvriatło "' określo
n)dJ kierunkach a nii: w~ w•:,1.y tik ich kh:nmk.ach) Jn:.1i.;.1.eJ n;.i' w przyp:.idku oświetlcm11
rozpraszają.ee o. c¼wieUenie zwi~rciadlane Lał1;;;ż, 4Jd ku,;runku wl!lmur-d obsc-rv,mtora ("V •
iatło zwierciadlane poJa\\<'ia się na łych p,o,,·icuchm:i..:h~ gclzil! wd::1or ~w ialła dbil.:-
go (R)j~ sk~~rowany w stron~ ooscl"\1.'atora Dll.ł rói"np .:h ubs~tv.:.d.016w zbiór oswit.· do-
n,ych powit:irmhni mote być r6'żny. zat~m świ11th:i :rwi::rcmdbm: poJawiaJą si "Jt różnych
miejscach dla rM:łiyt:h obscnv:.noró'IA,, Rówoic:ź poi :-..k vbLek1u \\ 11ły,, a na moc ~wii:r-
ci.adła (P). lbrdt~j bl~:r.c;,..ą~ ohii.:kl)• m ~ ~ wir_:k!v~ mrn: .r.\\' ierc-iadliJ. Róv.'Ilarric S\\·iatla.
zwierciadlanego prJ:yj mujt,: 11a.~t1i:']Jującą po~tać:
C CC
l 1 R ,• JI)"
R =2.r'\f( ' • l)-1~
'Ylyznri 1.i.;:oie cktom odkucia, maga du1.t:j i lości oMiL"l.cń \Vcldor I.en m,usi być wy•
ma :wny dla każckj po•1,vjer7.dmi st:c;ny. OkłLT.1.~C 11~. 'i:-.; ~Pf"ksymacj11 z "')rkor~)'St.i.miC<rn
w-e~tara pułdwko"·l!go Cang. hulfn„ay "W;"Cto,) di:tjc dubn; wyni k.1 \\' postaci wymagającej
mincj~j _HMC:i obl iczc:ń. . ~ktor poJJ6\vkuwy je!>1 wckt,m;m • nfljdującym ~ę "' p0t wL"
od_leg~.1l[)Gmi1;dzy wek•orc:m wiatł11 a wd:.mon.:m obscI,,.. •om:
Ił -(L V ,11 l VI
rzystać w c~lu aprnkłymaej i odbi~ia lustr'l.anciD
w~kior połówkowy motna ~to skll'Ci sceny z.a p001ocą p0niźszcgo. p m : : ~
k:udcj pow1cm:bn1 wchodzl\CeJ w
wzoru;
H
łłpunek4.4..
Oń,ttifbf(ł
~~rł
(po łtwa)J do.~m/ilćl
~ (/J'} pra;,~~j)
.~
~ ~ 'l'ł,,iJ.tWQ.
p,olli'dtJM'ą.tJ
N-Il ry unku 4. -. pokazano. \-Y jaki sposób oswietfeni~ zw i~n.: iadlanc ośw i~te scen~. i ·1
r;.sunku 4. - poka.zano sf~ oswit.-t loną ś.wiatfem rozpros1.<mym. 7.Dan n~ z rJ;
4,3b. R,'SJJnek 4.Sb p17- dsta\lt i.ai 1.ę :s.a.m sfi r~ 1, d~nym oświetl c1111!m rw1cn:1:adlaJL)
11 n111 l)'Sltnku 4.5c pawano sam komponent ,;wtcocu1dlan)'-
Ry!.łl11ek 4.5 .
Ofwimaue z:v.14-"Tciadlw: :
(po lł!'łn'iJ hra. (łl. •roJh,}
lhdall)' lwm/)(}iM71l
_wi~l,Dt/Ja.n ',
(po pł'tm w'J,'IJ.-0
Mm['Ofk.."'ffl :M-łt'TÓaJłtDJJ
Podobni~ 111k w iunyc-11 modelach Mwielk-nfo \fy.ni oblic1cń u:rn it:1 lcn1a zwjerc· d •
n -go xależy od koloru odbitra. obici ru. DJ:.1 "''•~ ·s7oi..:i ub1ckców Jcs• h.'1 lco!,,r białv.
omac:ZB~ l powier/c-hn ia. odbija taki kolor św i.iitfa. Jak• odbijt!ł.1hy powie17cht11a bł)'S2•
rząc:i. O.I w11;kszośc1 obidi1ów daj · to dobrlt' efekty. c hocja.ż 11icktór~ matcnafy
gencrować odbicm zwiierci,1efl nt w iru1) m kolDT7. m~ hrnl).
P'rl)·klado~·~ 'wi_amlo slon_reznc ~l,:gi oslabie~n.1 , ale dla wic:kswśti obn::kc~· ""'""Z&lęd-
11 odkitosc ~m•~Y'. abid;:uum_w po-1\\\\'naniu z odkgloi(:ią od ł ri~ ;~1 tb)'i mata.
aby u,~ ~l(dnJ~ c_zynn~k oslab1mi..:L W ~rpad~ św•atJa łatadti lub paehodni ,; cicmncJ
· 1 nie ~ u nkŚrny • 'M czynni osfa1:ncn,11. Rozwnm)' ławkę oraz pochodni
j a dw.a. no-...c tochaJe , 1 da_ P~hóthtiC! mobl11 umoddowai: je.k,o wLatło puakto-Y,•e.
1
Rysunek 4.6.
.ffi,Wl'Jt.JTAI' .fuTtltla
rzy rypy u iatc-ł, kMrc- omóv.Ulsmy do rej pory w bibliocl:Ce Unt.-:(:130. są rcpr~z~nlo,.
\\Sire priv typ tforl}'Ch CJL. . : Głłi "PE. K.fod. dccyduJ~Rl) s,~ n 7,a_<;(~owa□ic- rfcilo-
nego typu. pnwmmim) pn:L"-W:'I. H:zo-.,,.a. • poiJłdan} •(c ·t. poi~d[Ulą jt1ko ~ o 'a7. •..ko zf'
oblicz 11 im.,1'. Sw,alla kn:run~owc:: ~ naJ łutv. icj 57.t= do oblicze,\. ale brak-uji.= im s11bmd•
noś.ci sł..1bnu;c~:i s.wi..t.tł.i. S,, i aCłiJ pun~lo~ 1;; '''}'gl-l.(1, !J:\ niL"'CO kpu~j. ak zwii.\l n~· , nimi
ko-1,·C" obhczc.:ni0\.1.') ·c5t nieco wi~k~ey być mm~e nic daj4 Ct:1 p.t,;i:.1_d:mc:gu efektu),
Oś'\\ if'tlt□ i • r flr;kLorow(: _1.:,s1 mJjb rd7iej r1;;3hsty ~ZI1 ·m os1i.~·1e1le niem ku:n.mkow~ ,
le ;,:;w~ąz.iłny z mm .J,:o~n·· obł k cniO\\ )' · l!'Sl ..-. ii;k 7.)' . T rud.J....ijic o;.v. ii:t.k·ni zo. UDą
Szczt.~ól'o-.i, o opi am.; w Jabzych ru:aizt:iłaeh. k1cd bę 7.lićm,Y 1.-a_,mo\\ ;ać ~i~ S-'.cn:gc'>l m,
1rnplemcntacj i.
Uwzgtędnian1ie wszystkich
rodzajów oświ1e,tlenia w Direct3D
Cho,;:i~ opi lćm tatdy z kcmpon n10" osw1c1lcnia oddzi1; Ln; • to j dll zazwycz ~
rz-)'519 si~ Ji;dnooc. nie ze= w zy:,.t i b kompunentii, po I . 111hy UZ)':-i. a tcimplttn)
. giąd obit:k1u. l3k j to pokllLlnO oa rysunku -4.Sb. p,,:i Clfflł)' " rn1 działan;a w •s.t-
kich 'J"'IA..'ćh rnodcH oś.,,1 1c41cni mot.na opi ac nes.l\cpuj ym równamem.
Bernem TYO danych Opiis
03.:..rQł i:-
j '
~ ~ o ~ i : o $·iecle:ni's (~it.-ru:,,~,gwc, pul"llm;;iv.rc. telkla~
Otffu:se 030C8..St# KoJor slkhtd wr:j rolJl~nii1 cmttovi'.311~' pr.&l:ż świBłlO do wyk"~
W obł~~" orn1ii:1t:c11in.
S,ec11tia o (Jł'ł l(
Kolor J11dowrj ZW'1:f(iadln.nej l?lrl~fr,;iwwiy ~ Y . Ś\1,d.lcl'o do '\\ry1łrol~tai
w ob]" l'C!Jlia.ch ~\i.1i~h:nin.
00~ i:r.»:11. -~ Kolor łi!dowej 4.ill.:. E.. ljąe(:j i:mi~owan_}• praz ~" i, tfo, do ""PO~
w ot.licu.ni h ~\vicil!tli
l'os1 Dń DJlJ'łEC
Fo;q•tjo źródła '.wfaitfa w pr,csU?,eaa, Tćn r:IA:me-m Jt:SI ignr;:,row.aoy
if'n)'J'l3dk.u oświelf1:ma l.: ienml,;~!IO
lhtect.1 0Jo ECT(lfł
KiLófimc ~ lJ Tt.'11l c:"L~mę111 nic ~r \vykorzyst:any w pr'l)'Jhldhi ohi.iimc.,
fM,.tn11ov.'t;go. a dlil OSl\ ii~tcl'J1 reU-ef...c4:rmw-ego0 nrv. °'wretrt:n kicru qł
powjliltł:□ mrę · wrlJf~ n•L·z.cn1,,A.·t1;-,
W bjblio1«i.: Oiri=ct3 D is~ri icj dw3 uyby ~ic:ni.owan ia, li:tóre 1d daj się rm typ ~~i„
c-~DiQ"''Y □3DSHADf 'OOL e 1ryb>· tQ 03DSHAOE_FLAT oraz 03DS»H E_GOOAAJJD.
·re-niow:llltl!' płaskie,
k1óre zapr~1.en,ow1u10 na rys 111'lku 4.7, jtst n ~pruSl_szyrn rodzi:J.j1:"m
cjc-mowarua. Kil2da po"-·ie :lClrnill jt-st os.wiecto11i0. nddxidnk. z wylrorz, tanLem ktora
oownalne,go pow1i;r2chni Taki„ po_ub ·ii:;niowani.1 mwm-.cy mierównomiemy obraz Qbk\:1u
'"'1-idocmym• fr•ankami. klłiry choć n,01. · hyc UL)flc.:c,ny do wbr-,w1..;0,, ani.u. dyslore'kowej
l.,di. dla i rmych ("lhiek16w daj,c, mt:rcall sl}'C7.ni:; wym .t
fbt,Jnek 4 7.
5),tt.d ~ pnJ,pm/h~
„as'l'~.,;WT"i.a
CJ l'I'.lO'tł'anJU
W · tej' mclodTIC icnjo"' illl~il nit! bit:~ SL'i pod u,,. g". 1.c poszczc •o!nc pcw11:r.zchnie
• za&i.d:{ic c-,, ~etami "'•"~.z:i;g,.. objC"l ru. W gt;idl,.;1ch nid~J.ach c1cmow11nja tnp. c.ie-
\li
mowanie ,oornud:U bie1"Z(: si • pod u.i.1, ag ciąglo~,.; p,owJcnchn,.
•
PodS11mowan1e
w rym. Wl.4Zlalc ~ izow, Uśmy ~ ,.n ,we poj ·e~a na _temat kot1Qł\'Ów
oraz omówm y -spos.ób ich SCOSO'ł'l81't ~ twoi-zen ,a obiektów 30 . t tylko llj.
i•~
b;mtzi<"J pod."mwowc: poj~ i , kb z.:bl_OSO"l. .:.lllJc w ~od~~ oraz ~~ 1111p!ffllłn~
omó~vi1t w dafgydl rouł:(ałt:1ch. Op ~~ę lak:ie wacie m_oy, b rMżaJÓw 'lt:itlćnia i C'i6,
nro1.\•ruiioi. ~ wszy od re is:tyczn, h obrnzów n . 11r. i cf:i obiefrtó„1,,·,_ s ~ lly
na 11·e(IC;lri$1}'eZń h obje.Jttneh ryswtkO\\'} fl. Podobnu: przypadku mn:ych ~
ió\Jt "' 1eJ o j_ poj~io tu opj c bęcf stopnjowo toZVr'ijiU IC' i uści lmn " lroleju~
ro ~ ,(I rnzie zap3.1D· 1ajmy nil!it~puj c ~ i nm:
♦ We \J,.'(;h.młfich ~;iłaclt posJuguj(!"my sję kolorami 12-bila'"-'YITli~d1oci:if
O<tt~H jcs1 to kortiet:m urz d.tem mog '-'i'~ i~l'.ać kolory dla mnieJszej
H lO}' bi,ów Pębi kolorów.
• W obliacsfuch \\ s.._ tki~ k<,Jo!)' · 7JI rmalizm e ,du w o~ j 7 Z3 :re~
od O.Odo i .O. chyb.a re 7.astrzeżono in.Je ej.
♦ o_ra _11 ~ilnffl. efektu cii:mor.\ ni~ 'V,'i~ k. . o. Cł ohit:k t(~lr\ mo.kremy za.c;u,:m v,.-ać
•
w i:i1I me- rozp as7.'ljąet:.
+ Ob cibic-k.tó w bł; ' zer~ · h m o7Jlal z sln:,,. ;ma , S-wittl •rtjc .tWI rdrull. ll'C.
7.t:
K OS.id ohr1czen1m\ • 1y . I , I ~
V..' l:l,"T , · I t"'"' •
~ c o , pu o. w I t enacm J!.'sł 1J1i , oki.
"I'"
W tej k.~;. ~ W po:..zti"~,f'Óln t:h ro,..dLj:J:.i..:h poło.łono n:lc1sk na minorudnc problem '
W)da.jnos IQ\i.'C' om_z zagadni..:ni.i zwi 7'.ltl ze: Ws.7)'Stkimi r,,:t.'\parni [WOl7 1ia grafi tl, by
r
'i\ pełni 7l"Dl.Urnic Diljlc:ps7.) posob \\'}' or.cystar11 ·prz~u. tllile.t:y :rrommi1..'IĆ d~i I nfa
, ~ nywane przr.:7. sp Ą'I . \V tym ro1d.zin.l"1:" pr,.'LP(i t \\ imy n sr • puJącc pojęcia:
♦ Pat rendi;rowani. Di~-cl D.
• Wier.ocbo3k1 oraz pcm ieruhn ii; "_ .Ł-..zego ,Ju
·t Stałe funkej1.: pr7.Ckszta t« fi 1 \\.'l~lkme.
• M«he.nizmy vcTtcx h di:r
♦ :t2..1 obcinania,
ł Mult1rtc Słum~,ianie o.mz me,ch~mzm p1xcl . h d~r,
do mies1.ani~ t~brm.
RytUMkS..I..
Pflltłłfffffkn~"JJ
„ Drr«JJV
w kohcu rn ne są gotowe do Wf$" i1:tr cnj• n.:i ekr.:mLi:. \ 11l 11,;j fa.1.i . k.udy ~ gm :t lJ-
zwycz:g piksd) jt"St t..:sto\\ aJJ)" \\ du :r,prawtl.1-c=n1 , oi· nowi; dane m ją b) ". ·toot
" rnie:J "~ S1ruych, wymieSJ" ne 7C ~Lal) rn i dtm}'ffli. C7.)' l1!'1" ,,~norow~ i:. Po pod"-
takLeJ dec~ ji d n-c. 1 ją~,, cil'-4ę"'Ści· QLlfol'ł! ramki. która o~t teczni u-.ifi3 n e
B)'I I ś ·rocony opi m han i.ant.I\',, potoku, h:r..L7 sztlcgołt1WtJ Opl ~ lud~ z
Wi,e rzcllolki
oraz powierzchnie wyższego rzęd',u
~ ii:ra hołck ]4.:" I podsr.a,.,,.awą JOOIWs• mt.:lrycut.t.. o ,ym szc~góło-wo i ,, _
J to Opo\\ 1cm w d fazych roxdziJ 1. ·b. K.ażQ ob1el--t D s ~ o:d sję z g lub w1ęl:SZCJ
Amddal &. • Klllia eł6w o po1a1cu.....,. U
-
Hczby wi:rzcholkow. ias.ami te wierzchołki są_ la~wane z plików (np. w rnodctu zna-
kowym}. !MFfl razem gene~anc mawm1.tyom1r: (np. :sfC1'11), Tak Cl:'/ inact.cj są oqe
~l-'.IJ g,enerowane ~ pcwu::n pmces pmcesi;;,ra, gbhvm:go i J J m ~ w pam~i
k4l(I są lat'\1VQ' do.!!l~pnc: d1a kany graficznej. .'
Vtyjątk1t'JJl1 M lej reg1Jfy jeSt z:a.scosowaoic .l!'Mnych fonn powicm;:hni wyt.szc:go r:zędu,
jak np. -paiclt 11 D.irootX 8.0 lub !.iatki TRUFORM w pnypadku spl"&ętu ATl. Tc pc;,-
wiazchnić driabj il\ł1C7zj w 'tym ~nsic. ie SJ'.117.ęł wykorzystuje 'łl'tdc,iwosci niedokładnej
s~Oti w ~lu utv.ttrLenia siatki dokJadniejszej pop~ sp~towe tw'o!iZCn;~ oowyth wier'b-
dtt,łkó\11,1'. Ti? dodrrnkowe wi~r.«;,bołki nie ffl"8:lą by,Ć pn:~syłMc pi:zez SZ)Tlę, co umot·liwia
programistom "}'kOl;Z)'SWUe dokladll!iejszyt."11 s.iatd bez koniecDIIOŚci inmitjszania wy-
dajmr,sci. Siatki wyższego rz . du om6\vi; w dal&zyd1 ro~dziaJ eh, kiedy będ1t dokładni~
opisy,;. 0:J spoSób ich 1wor.t:~J!Lia Wainc, aby zapmnj~ że powit'nlchnir: ~ g o rzędu
~jedynym m~-cha..nizmcm sprz't•owcgo tworzeni ks1l.ah6w g,C(lmr:1ryczri)'Ch.
dejśc iem ery spraęmwcgo wyk onywama transformacJI i oswLL!lh.m im (T L' wszystkie
oblie2em.ifl b. h)• wykonyv.·ilfle przez pro«s.or głó,"·ny. Cb:m1czało to, że zadaniem proc-ie-
sora byto ~ykony"ranic zadań związanych ze 51.111c:r.ną. irucl igcncją, logaką gry~ ·w ięł:.-
81Ą część za.sadnic!r.),teh cl:r.iida,, 7,\'l.i~.anyth i rendt:towamem gm.liki. T&L \.\.')KQnyY-'llDI.':
SPJ2t lnwo po~,..·omo m1 prl enie~m:n it.: ~acfań oblk2emo'W'}"c-h do arty g raficz.ne-j . Z\\'a,-
niajj\'C p-«csor. etem f.l2)' T&L j es.1 ~osm anie w zyslkich op,cracj i macier2owych do
kahkgo Wll"fŻChwka. Po przekmalcemu wierzchołka karta obii cza o wil': tl nie. wykorzy-
~IUją'C '"rszyst'kie sprt~•owo dost1rpnc rodz..ajc o wietlerna z.dcfinir,w-1ne: Jako \\'Y',\'Ohm ill
funkcji 1ntctfejsu APL k l l{] jedtn z powocl w og-lłl-T11.;~n,,:j liczby ośv.·it:lleft sprzęttw,ych.
W ti:j fazie pc>aoku, v. SZ)'Slł:.rt.: m;r.: mus.i-.ą być PQPrawnic ®sru:.-,,11.C'. Altm1a ; ~ dln potoku
o_~ta~ fun'kcj eh. krom pojinvila się o ta4ni o. j e-s.t w pornaguny pnez spr:zęL mi.; ha-
m.zm v~r1trc:\ shade:r.
Mechanizmy vertex sltader
Choci.at. nic bę(k om11w_iał S7-C7.ćgółowo mechanizmów verte": ha~er j~~ pr.t:e~ kila
rozdzillfów, 10 j ednak me mo~ę omawia~ ~ toku be-z wspom~~ma_o teJ mnn~ac~i M~
chanizmy i,·cl!'t.e shadcr dodaJą patokow1 n~i;:zw:yklych ~o~ll\'- ości. ,Pl"'led 1)0Jaw1łflitai
.się meclwtlzm.ów vene_x h.tdcr w sprzę• o~J fiooc: T&L 1stmał~ ~oth1w·ośc "~Jconyw._.
standardowych ffllDSf'ormacja d:mycb. sfo me moma ~)·Io obśłu_zy~ przętowo dliwofllie
zmimi_ajit.cyc:b s}ę wie:L~h~tków. Z tego Po''"'·~ U ~~ anamacJ,e J~ np. ~ruszanie Sit
pos1oea z. drganiem ffll ·:m W)'lllBgIIIY pr_zet\\iarzan1a gt."O~cLtyC7.n) cb k~ów Jll'ztz
procesor. a 11ust~pnie przr:słan ia. d11.n~h do kart}' grłlficzneJ. ~yk~Iilywan11: takfoh opt.
ra ~ i dfa katdej ramki sry w iązało saę· z dufym ko!;ncm Qbhczemowym. echari~
"'-crte!\; h:idcr umozfrwtly programistom pisanie kroił.ich pmgr.m'IÓli ·• które ,,)'konY\Valle
są pa.ei; p.roecso.r karty g,afteznej i słuiJ\ tmn fom, cji d nych graficznych,
azwa •..shad r"1 (mechaniz.n1 de.n1uj~)') może być n.i co mylącłłl. Mecłlanizm}' ~
s.fl der mogq_ siu.żyć do cieniowania. ksztl:'lłtów geumetryćZll)'Ch w sen ie oświedenfa p:.,
pm.,-z wytrc-mn~ r.ówmui oświetlen1:1 dla wier;;chołków, ale mogą lak~ słuZyć do Pfu.
m:arzani wszystkich danych dotyczących wicrzchołkó\v. Działania wykon)'\, ane prlQ
m«lmru.zm~ \'ertex_sfui.d..:-r mogą obe~ m~wać zadania pucząwszy od gc.'Ollletrya.D}
pro.~oen. a oac•,;ywszy !'la ustaWill.'fitY no~rych ..,.. ~ y c h tl!kstury. Mofli\,
me~_hanlLfnów sh der wychodzą 11.nacmi...: po~ definicję cieniowama \\' sensie OŚ\\,e
Uem11. a l)'SUnku 5.2 pokaz3no :ihadcr. 1-aóry pr1.cksz1aka gcomctrit ubicktu.
1fty-sunek 5.2.
P~·kltlil.owy efcl,
~JwnizmrJ ~ Tlfil
~hadt!r
Mecllanizm obcinający
Po _przck;Ształceniu w,ierzcnolka p~z poló'k o staŁyin zeswwic fiuuk~j l. czy teł przez
v,;ne: shaiier. dane są pnesylru:1.e do mechanizmu obcinające o. \V tym mccb&nizrnie
podejllOO'V!.lna jesl decyzja o rym. k[órc ks1.tahy geom~-:2ne będ1t pn__;: ~11nc do pric--
twarzaniia w dslszyc:h far.ilćh. · a pnykJad, jeieH po pr.zekszmłcen~11ch fragment figury
znajdati~ się poza widokiem kamery. ilo nie m:i po,.i.·odu. ab kontynuo,,, ać pn'._dwar1.anie.
Moiemy odrzucić \VSzyslko 10, c2e.go nie wbdzi obse:t"W"ator . .lccJit ru jtden ::re sposobów
n~ m. ab. mc'iC.:hai-ii zm shader us.uwał wie~cholki. WicnchQH::~ można prz.eks2laka.t
w maki sposób. a.by znajtLtowal się po1.a widokiem kamery. 'fa fa7.a umożli, m:i sp.rzętov.•i
pozbycie się nicpolrzi;hny(:h ksz•a~•ó,:i.· przed przyslą;picnicm do wy'kon)'wan ta dość.
kosztownej obliczeniowo fazy 1eksrurowania.
MuRitekstarowanie
Faza 1.ek 1urowa.nia J~~t tą; która pozw la n11 pokl)·~ic cfokto\1;:nyrm tek~urJ.nti :kształtu
gcomctrycznr.=go W).-Slępujątcgo w fom1ie prostych i nieciekawie osw1ctlon}'c'h plasz-
czy211 o ile ocz;" i~ac program1s1a sóhic rcgo życzy. \\' mi:;j fa:,jc ,ie-zoo teks.tur, j~kie
mM,11u nałożyć "'N p(}jeclym:1.yr11 przebiegu, jc5t fon ~cją liczby polok6w r~ks.Lur obsługi
wanych przez s:p~m . Przykładowo dla kart klasy fu; ·on:e w fazie 1eks1umw~fa bryły
progra:mi'l>ta m{tie zcldi.niow.ać do czti.:rt.'<:'h n\:1nych tekstur. Liczba 1.:1. będzie sic; zwiek•
szat no: z pojawi;:miem si't ..:ona. nuwsz.e.go spl'Zfilu.
obra7,.ó w.
Bufor ramek
KaMy p1k~e1 ora2 k ,żdy wicrlchołck trafia\\' kruku oo bufom t""d.f'll t. ZaziJ.;_ c-z ~ jest 10
bu or ""''YP4---łnian. w de.: i oc~ekujący w pamięd obrazu na wyś ·kllt:nae na ekran.u:. Po
,, konanr11 R--n.d rowania "~ l. tkich obick•ów sceny. prlCtwo~niu :fsz-ystkich pi~eli
o~z \\ )'k011aniu " 7yslkich 1.1:stów. w kod~e nas,\"puje wywo! n,e funk.ej i, 'która powo-
1
duje wy~'-' tl.ich:t'I re za" arto!ki bufora na ckr.m;c- ( w w i'ikszości pn:.)' pad 6w).
Czasami bufor ramek wr.:alc nit! zos,ajc- pr✓.esfa11y hc:,posn_~n10 na monimor. inna gwa-
mnt\Jj du,t: możli,., ości tech□ ika pole~a ml ,, , gt:n~row:miu \\. s.;c •stkiego do postaci.
t,e'kstury~ ~tórą następnie mo}na v,:ykor.1-y ~t.1ć dla okn.·s]oni=j figury gr.:omeuycmej. Pro•
s.tym pr.zy'kł.adem 1:i.k1 ~ 1.i.:~hmki jcsl łustro Prr..,gram 11'10:►.c remkrow obraz •u traany
ge□ ruj c go do ~rac, 1ck!UUI). a me Jo bufora ram ·k. ~~~tępnk. bt:z wy~wict1anm le o
obraocu n c rank. program możt: :t.:tpr;.t: lać ri:11dcrm,ania do pll!-,lac1 t'L'"kstury I v. • e•
nerowut sc~m; z punktu \\ id1. ni21 obsL"rna.tora, g~m:ru_)~c obra7. •us.tf7.auy za pomocą
popnednio utworzonl!j hi'kstury \V ten ~po-sób możn tv. ur,0 l: ,, u:lt: cfckró~.
$)'~ow je L zna mie wol nii:j za od kA nałów dcm h we,, nąlrz. ~r.:j ka.rty
..
Podsu mowanie
1
foool:mi~ j i ro; dzill)y cej ~ i j~ '1 iniejszy rozdzii. _i m iat za 7.3. _ ie.
czc1Jie ~11w pozwataj, ycfl na 1-ro~wknie kolejnych ~ozdz1ru6v.i. Zrmwm-en~ ~
t nia paloku poz,. oli □ rozwiązyw:1n ic probkmów 7.\'to'l z.an„ eh l ''')'dBIJnośc:at\
efeklywnokj „ któ11t mogą poj wie ii; , prL)'?ldk:u bard11cj -~ "anso, .a.nych E.L'l'.:
\\fif'le z po# \ tym ~oz.dziale p~~ta\ iot10 ~ posób h~mr,;nl.3.r}· .r.ny (baJ'dli!:]
gółov. omó',l, ic:nie z.a,,rto v. dal-;zych rozdziooli:hJ. t'\ ri; ZJOZlHllierny w pełni dzi
po1oku. dapóki nie rozpocmiem~ pisA1nfa ~gt'illTlflW. które z nLt!'l!O korzy taj ! Kłtl'
jcdn już ~ ;uiicm) kodował~ C'lęSto będzi1:my pm,vrac „ <lu w idu. 7 gadnit:n ·
n,cb w •m•ror.~alr..-. \ ł i"1 ie- odo-wllfl 1(' rozpuczyn:, stę " ' na t pnym rozdzillc,
na ,Płt:l'W J'lrl}pornnijmy 7Jłg:tdni,c,rum, ·tóre n ]efy i;apąmi lil~ :
♦ ~.aaw do cyc~ b ł g<.-ometrycxnych mog być gen •row11n i.: pn ·z procesor
P-r.«.'S,'lilnc do km, ]ub mogą być ,,.i,·017.ont nu kar i~~ z v. korz.y:itanicm
PPWii:rzcbm "1'.tsĘgo .-~du.
• pr.q;łO\ m(.;C'han1:1.m pnc~łccń i o.'wietll!n1a o ::.tatym .1:e.c;t wiE: funkcji
(T&LJ um~'lh\:i wykon1 wanj~ wszy~ ich pod tił"'O\li._'c:h pr7c-ksztaleefl
omz cli1al11in Z\ ląlanych Z Mwi~1knc~rn,
ł Mech niJ.my vt:Jte_i shącfer <łostarczoj~ v.rię "S-1:}' ·h rnoi.li..,i.,•ości mod;fika ~i cbn)
~fD~h)'cznych rui potok o talym le tawic funkcji. Ki d , ·cdnak zdecydujemy
si,: na ~orzysrruuc z mechani2mu sh3der, musimy z.aimpkm nlowa. w nim
w 7.Y Lkirz PMr21!'bm.· funkcje.
17
hoci6i ' \ Z11Sadzie nie op1 uj • dokładnie p • ·kład-1..1, lub szkrdcru • DK. to edDllk
poswięerć ~1· n_a zapo~ani · i.; z OK. b dowit.~zu.-ł 1\ię. ·ak.Ji,: zn 1b ą dostęJB
w-
C"z.~o ktos zadaJ.: P}'13Iln:. n któn: odjl(:)wiedz zr1aJdujc •~ w 'DK J L to jedno 1
iep$zyCah dostępnych iród,.d jn 1ormacji. zap1r12"J1rmie si • z nimJe~t. wiii~ bardzo ,,acme.
Konfiguracja środowiska
1
....-!
)
RoztzW 8. • Konfteia,-,. ....,,...._
................. 78
inne środowi.s_ko IDE. powinni sk«zystać z instruk ..
dostępu do phków na lówlćowych oraz phkó b btJ• dołyc~ych modyfikacji tciciek
który należy ustawić, ą cictki, 8<.iz:ie rodow~1 k 1 10•c:k, aJwatnicjszym parametrem.
0 1O pc>szukuJe płików.
Uruchamiamy VC' • wybieramy Toah • 0p11........
,.,,.~ •
, 1. a nast911rue klil.-.. nu, ,..1,a.u1t.- n..; __ _
Można lu ustnw1r.: 'Ił korz, stywant katalo~i N . . ........, --......., urn.Ttol'l('.s.
nagłówkowy h (ang. m ludi Jil, • Okno di~lo UJpi~~I usu wiamy ka~~i d1a p,ik6w
prików nągłówko\\ ~ t h pn kazano 011 unku ó. I ~O\'iic ~ ni ~ dlo U.St.a\\ 1en1a śc1et.ek do
ltylUMk 6.1.
,}b,o dralcJg<Jttc!
Opf1olfJ lu.'ąct'
Jo uSt4U ·ema
kurologu plików
1111głól4 OK'l h
Plik W-yiko-,wal,-y lh
'1':ktm 1u'(lb~11• I, Jest phliem n . !ów o" Jm iaw1r.:rnjącym p,ototypy funkej ~ wyk~
wan~, p~ez ~ tern o~~C}'Jn ~ . komumkuw~nia s11; 1. ap~ikacją. Spróbujmy prze.
an hzow c Je o naJ"-'ldnl..CJs.Zc.:. c1ęsc1.
Ponit_c;z. ~Hk ~lówko\\ ~' :,;.awkrn detimcJe WS7)'!1-1kic h podstawm, ycb l)tpów okiet1
~ącza się go mem I 1n,e \'-',;.,:y~tk1ch aphkacjac-h \Vindows. ·\v n~zej plika ~i rowniet
Jest nam po1rubr1y·
• rJC 1~ UlO'Jws :,
Poni~:.r..ą funkcji; ~) iem o~r. yjny W) , otuj~ " t:1u TO!plKZiicie dzi ła11ia aplik3cj
fun CJ 3 io służy du Ul\-vom■nia obH:hu aplik cj1, ·tóf) ubsliuou, tworzenie okna oraz
~ ndcnn ,: 0 J
PSI .. ł )
lk . AANł ar .
_.
ktora będzi.c wykonyw~ wszystkie operacje zw.-ne .
,.
kacji. ~ ie eo prosty pmgmm _ ~ i e (ang. z JIQełWlrzaruem ~ naszej apli-
.
w dalszych ro7.działach. ~ ) . la6ry będzie rozu.cmmy
Plik Apllkaeja,h
Plik 1P_l~kacjo.h _zawi~ dcfiukję kl~y dla naszej proslej aplikacji. w tóldz.iale
bardzie_, mf(:l'C~UJC nas s'konfigwowame ..........i#-ta.w.nuNt~ 1 .....__.• w=-.i Iy:m
- ..J- · I · kA,,!...,· ~ ..,,,,..,..J P •~Jl lllUOWS mem a! do
oas•ępnego ro~1~ u nu: ~ u.:my zaj111owae s;ę kodem 'lconu' , •
ią; e proste defi_mcJe m\\arte v,,, plilru Apliła,;fe,.h przcdstalQOO s!::; . .
reDdermA, Bte-
'
K(i!ejn_ dwie ~ cjc _1.0 ko:n lruktor o~-destruktor, Są_ CJJle "~·oływanc odpcwiedruo
' ;\: LC ~~~~~rn,_ ob1~u oraz w ~•e ..1ego niszczenia. Wywołama te zwylde znajduj
s•~ ,...,. sektJJ m1cJ~l ~zacJ~ orniz w s,cktJ• c1..)'s-U1..Cflia;
~J1c:.
·•pl 1 acJ1Hc,st O .
. 1r ual -~1; {!C.,;· stao.
Pon~zsza funkcja ma ma.k ie :imo pne2in. zeak jak fóJlkcj B obsługi komunikató"' :zdefi-
nio11J.ana , p~iku JJyko'l'll'Wol,iF h. \ istocie jak pokrJzano w następnym podrozdztaJt .
funkcja P ocODs omum ata,.. \,, . wotuje funkcję ProcCbs rn atCM w edu umoih-
wieni :r..dec. do,vanfa o sposobie obsługi kom~n;JumSw przez aplikacji;~
lRtSUl.T ~lP:.PJ Prod.l>SK(Yil.Jn 3 O~( ,D C t. Ui k ~ kat, ~QARĄH ~Par .
LP~.~1111Pc!I~~).
Poni;rs ze pole jcsr uch" . tem do okna aplik j i. Ut czasi.c: twon~oia ~1i.k~1.cji jc:s.t to
1dentyfi1mt-0r wykorzy · t wany pi-uz aplikacj za każdym ra2em. kiedy I słmcJt= po_,n~b.a
modyfik~cj i 1..awart~ ci oklla tub odwom.ni się- do niego w do·,.,,,·otnytii ed u: Ostami rrzy
zmienne zdefinim .ano Jako protec e,d p m, ab_,. urnijemo21iwi ni ·praw1dlowc " 'yko-
rzyst.mic ich p r~:z mny kod. T)'lko lasa pl 1 acJ 1 s a lub jej klas::,· podf"Lł(lnc- ntog,ą
modyfill;,o,,•ae pon· c.: zm icnne:
o ee ei,
Ił" rD ... li t ,
• · ,..... Mo"'oo J e :zrnie:nić nn Io.
0
P,om!s2e (JOie oW1ają l)Od. ta, owe Jmrameł~ ~ ' ru ol\;n • ' k "-
Pllk Wyk9nYWalny.cpp
_ • , za.w,em kod wnkCJt , a 1 n ornz: f1JJ1k~j• obsługuj ccj ~
Plik HyJo~-aln) .cpp pr,1; -znacztni~ to utwof"lA!fli eg:1.empla~ obtektu aplikacJl n..
k.afY. Jego .,_.stawo, c - · ".1111
,i,aliz..t wu7Jl\Viilrtej0 w pliku Jf)•k.mJWOlny.qJp.
Two.rzym~ st~ty zn , glnbaJny ._,., skaŹ!ll;k do obi ktu ap~ika j1. (.km:roln;e ,,,,-ro~
:attienn}:ch gfooolnye-ł1 _1esL Uil"n wane 7.Jt zły nBV•')r'k . k"tlnak w t) m prrypadku. zrni
ta musi 'być dostfpnn w funkcjtt.Ch r ' 1n OnlZ Proc()bs , u 11 ~~1 ► c.., e. l.! 7,a1em J
rozs((dny ,... Jttek. Z""roćmy u"' g, 11:1 ro, ie myp mego , ska:i.nika h~ctt~ · si zmien~
w kolcjnyeh ro:lldzfalceh ~
st •c pl acj HGsta ~ 1katJ' sta - ~L.
W momt.-nr:ie w ,wołani.a funkcji 1 r .a1 n· lępujc utwm7..CI1LI! no" cgu t:pmplam
ooi "ktu apJik j1 , raz wywotanic fwrkcj i tmt ,.._, c łu rozpocz,e,a wła.-k ~w ego dJrJa!arua
~pti.kacji,. •unł:.~j Star· końC"l.)' dZI lanie w chwil i. kiedy :]phka j.1 je!!.l goto,, a do :r.a
cz~ni pra y. Z tego poi, odu po wykonaniu t go ""'·yu•obmia mozn~-t ?a ·miczy d.1.i11l
proVoffiu:
re·urn O.
1
Jak \\·idzi_n-w, działa.n ie kodu w pliku I J' ony,..alny.cpp polega po prosmu na p ~ i u
terowani do obiektu aplikacji. Prv..-am.lli1J.1jmy zatem plik .'lplłk«ja.~pp jako ostatni
~.11wałck ułd1.1danki.
Plik Aplikacja.cpp
Zaprcxentow l'l,y niżeJ kod pokazuje.,...,. jaki spo...,ób 'f'liot.na sitwJJTZ}'i;; prostą aplik11cJę
s t mu \ indo"tw ·. N ił tym ,el3pie aplikacja pelni" Jedym~ podśta~ owe fun cje. w dal~
szych ro:zdziabtch dodamy do niej kod Oirctt3D.
Kon rmktor Jl! t prosty frgo dziaia.1Ht. to z ioicjuw me dom_ 1ntgo rozmiaru ~kn~
KJ:isy putomne niosą znucnk 1c warto 'c i 'li S\ oich kon 1n1klorn;ch poprze.z z3~1t:me
~nyd~ warto ·ci wl~~n)'mi :
~pi1KdCj1HoSL' . .;Ap ,~ccjiH ~ at
{
C•1 toS.-·t roi: ·si: !Jl.O.
= O· r ,, ..so\ se - 48Ci.
I
· ,. . : • · · · •-- ... -, 1,.,.m••n·1k'•t-..• "ri nn •· ylam; do aplibcJi
OZl\':&I firn ' CJL Stil!· nruil~J1UJC utwortcmc Ol"i..l 1..., .,, ,.,. , •· . . ·f ··: r ... .31 . .
i \ y yłanc z nicJ. K1cd ap likacja 01rr.yma ·orrmnikat do J."Ca „ funk J konez. woJe
dzialan ie, co 01Jmc:ra także znkońc-zt:nie dzi alania rpro_gramu :
'Old Ki-.p .~CJlt~Sl~ S c1r ()
.,. _.. ...
Jc-zefi udało nam ~ił m~'Orzyć ok1110. Jl(!Wod'ujemy. że sf.anje ię ooo , ·id~zt'lc:. J ·
7.j:ikicgó.Ś ;pow du nie udi!ło się utworz,. okna, ni(' ma sensu konf}'DUlY\"1'a działania,
moma załi:ooczył je w tyru momcnir:rc:
P'olcv.any nit.ej frngn c.-nr kodu putocmic ~ i 1 - 1ę "pompą" komunikató, . Pętla ,..+n1
pl'Zcl<~ liffll11nilml)' umi<-.,,.cznn-, "' kor•Jc.:. do ehwili uz)s •wia komw,ikaru o 2lllloó-
ozc:niu d,;j l3nfa _OU ). Pompa k01ńw1ikarm •.apcwn13. a, komunik ty są ~-,•syW,,
00 1""8Jlllllll <lhlJusi i«iRJunik:1161 . ICicd) pomp utr,)ma konmn1k.at
łanila., pęrhł v.-J,ih~ kończy dzfalan re i nkcj a kmicey prac .
mk<>ń=nia dda,
,r,, .
t..r .
11·at).
k~U .
• O, O. O, F,,f_,EP. ~').
'
JtGoijej tnljduje się kod funkcji obsługuJl\caj kornunika K - • .
.....:,aniu za pomocą globa.lnc:-J funkcj~ obsługa kornuni~ów o = ~ nfillJą tu po
llwi• wybór. na który komunHc1t cb«my ~powicdziec. 3 • , • Ja ~, <:h umo2.-
ikal QU t natomi.ut ,; tłuc ~ R mtrrtsUJc nas. tylko
koal1II! ' pi.lZOcQ pru:syhmc do domy.tlnej funk ·~ obsl i
tomunibU>w Dom lny pmgmm obsługi komun~katów ol)s1.•-··· _,,,-1.. . ą ug
·- •n'L .
dołY~e ou■11, Wlftlłc J
.ak . I
ztn1an11 rozmt'flru. p~ uwanil!! itp.
•~.]C ł'VlolOtawowe- opcnu=je
{OJ.
R)Mlllk6.2.
Bwtfwprr»la
ilóqfJ
Zt,. • lfflCJfl(
~ k/alJU2
80 ~ll•'fwtOIQIIIYuldlllt
Rpunak ·6 .3.
Al.l;.'t,oJm r.if#iłanm
pr-osl •j '1pl;łaqt
An,aliza 1
.1
Gdyb m p1:tiłlh własną aplik cj4c. z pewno cią zrob,1ib).'my lo inaczcJ, \\' ('11cni.· ·:t)
ro1"-dzuil'.e pn prostu prab ujern s1worzyc aplika ; · \Vindo\\ s n:a111.HJł\C . najpros.-tw
funkcje. \ kofejnyc,h rozdziała.eh klasa M l koc 1 os ta ~d7Li.; v... •kon. wać "": Z)~,:
podst:iwowe działaJli~ utnotliwiDj~ r141m koncen1ro,,anj ~1 na b-rnficc f unk j 1 !Ja,r
umii:ścihśm w innym pliku ni;;,; Id s 311~1kacj1. r,onic"'ID' gd1•b. b ty une w tym sani
pl iku, sytuacja skomplikuwarltlby i~ w mom~nc1c twor.lcn111 kł a podrzędnych kl
KA.o I 1 a J Ho-st . Umrzymy,, nje ich odcb.aclll] ie u.-.nacz • h! mt1my mot.1iwo t ZJTiil11~
kJa,!;y, której i:gz~mpl.arz twnrzy fiuik11.j11 1 a n, b~z kanir:c1nośd modyfilkacj,i kodu
w phku ApJi.tac,a. pp. \\ls;c lkic ile powody„ -yt, ik !J z fokru. t • tworzymy szki Lcul
widu ró y h apl1lrac,ji. GdybyJ.my pi~::.1I i pojedyn z ~ pl ikacJę. m gł i o m. poł Q .
~ 11 nc funkcji;;.
Ruz■!rlal 8. • K.,.,,...rac:)a łnldo.._. I PIDlła ••■mela WlnD a
v,,r tym rożdzi fe -koncentro,, aliśn )' it wyłfl! znie n11 stworzeniu pr05,t.ej aplikacji Win•
dows. Dla do~,,•ia~zonych programistów 1cn rozdzi!II jest po prostu poiw1órzeniem oraz
wpro,w11cłzenicm do prostt: o 57.kieletu, Ol innych ro~fal rl!n doslaroza w iedzy na temal
najpro - zycb aspektÓ'-\.' programo, a.nin w ~ l,cmie ·wil!ldO'Uii,. W nilSlępnym rozcbi.ak
rozwiniemy k I ę l 1 acJ 1~s·t i wprnwadzim)' l~ciw;· kuci Di11Cet3D. Na. .razie:
powtórzymy najważniej„:ze punkry porus~c w tym r~iah::
• DK v.i1-ra do~ z rgu.izo\\·alli)' · ~ek.!1 ap1ib,cji. T, orzymy wh ny ·el.et
by móe łl11wo wytłumaczyć kluczowe pojęcia.
♦ OK z w1cra 1akżc wiele przykładów, które S<tpernoc dla ]JOOZl\tlwjl\Cych.
• ysr m opicrocyJny w c lu uruchomienia apl~jw wywołuje funkcję L-:i ~1n.
na..sZ}'Dl szkielecie funkcja t'I 1 1n łuży do urworo:nia egzempla.r.m klasy
aplikacji.
• Klasa 1 :1CJ1 os a definiuje n jbanbiej podstttwowc funkcje. W kolejnych
rozdziałach u't'-i.· rzyn,y kJ asy pochodne kla:.'iy KJI 1 dCJ i na. które będą hl1ij·ć
ł'lnszym t: lorn .
Ce:tcm
w iJ>Op1'7.edniego . lu bvlo
._,,. k te· . h rozd:zi ·~ stvloncme · prosteJ· a.phk.ar::ji
• \\riodows.. po co. alb,y
~ - o ~n;,~ ~•ałach móc całkowicie skom::~troweć się n~ D1n-ct3D Zanim
...p:rzeJd~
_ . o· do ..orna.wiama
3D wLer-'Chołków i wiefoE.-.,.,t.L.,,
~ ~,.. li\n
r"'w1em • k"I'-- ó ·
I ~ sł w 00 ~ t lłną-
. • , ~ _ postępować.
11.L&Dl8 1rcct oru postaram się p kaz.ać w jak.i 'Sńl'Wób al 1, •
Kod umieszcw tvm „.1....:a1 , ,......,... n e Y z nim
~ w "' roZua ,e 211llJdt:a~e s1ę ria płycie en. w katalogu I.Kod\Jłqzd:ial07.
Pr-zed wykomm1em rendcrowama. ontówimy na.sh;pujące :r,agadnienia:
♦ Omówienie urządzenia Dircct3D.
♦ Zerowanie urządzenia.
k..im"snO w labeh 7. ! .
Trt;· podsta\~·owc (}'PY urz.\!die,, po
.I;
~ród cych tne«:h typów. lii\L jest najbęrdz;~ej u recxn?ID urr.ąd2t:nie~. IH)lliewat
~yko~je ceJer.icję P?łto,.\"ą. 17.;\dzeme _refercoq:1ne (REF) sluty Jilk~ ~
timkejOtJal□t" uriącf2',oie proJcktowe dh1 progr.ltr11s•ów. Oznacza Io, te ~muluJc p_mgra.
mowo ,,~tkic mo-iii~·e, funkcje Direct,"(, ałe 2c .mac--zną s,1ratą wyd jno~i, U ~
programowe mi,xe- wykorq·tyw renderery program,o\.'-'e dosta\cvcó,.,,. :cewnętrzn)
afe na razie tałdc n.?l'ldr:rol)• Dje I\ doslępne. Przykłady :lh"'arte \ tej ksiątce dz' ·
pop WTiic z ur~njem dla kart graficznych z.godnych z Direct 8.0. Czytebiitj
nic posiadaj ey b:r1 o~ługuj cych fimkcjc wy·.r.s~o ~-du. jak np. med1ani:an~· ·
"bader, a.by ml>Aayc dzrałan ic przykłsdó'lo\•. być może ~~erą musreJ~ 5]<onysta:ć 2: Lll1ł
dle-nia il\'.:fc.-r~.ncyjni:go.
W tym mmziare dodamy fun~jc cm. ługi 11mld2t."11ia do is rnic1ącej ·lasy ~ 1 acj1~
l"ni'.~.my uv.•agę 0111 m~ ie ~i· lworzymy podklasy, a jed~tnit: \\'f)m,vac::17..amy doda~t
funkcje ~ta'i\row.c w kodzie. któtego tworze.nit: ro2poc-zęli ' ruy w pnpr-.zednim roz ·
Pod ~ome tego ro~dż,atu ~dzicm~ mieli kompletną klas~ hazm,vą, na k1ńrcJ pOdstav.-i
~cł-,l--iemy rwo 'l:yć kod pnsze:zi.;gólnych tethnrJ.: .
OJOCAPS8 ziUrzadzen1a:
E )''' - p030 -~tDe·ncc<.ipsCD3MDAPTtR_ F'.;JJLT. 0300[, PE. HAL.
¼)zlllrzadz ial . -
Pierwszy parametr okii •1.a sprawd7J111y adap1er 1ub kart • graficzną. ie mam .t..aJniaru
dokładnie opi ywać · ste,mów z wjeloma monLtomrni. zatem jedyną spra,,.dzaną km.tą
będ ie karta domy ' lna. Drugi parametr okr~ la typ ur.lądzt:mi a, kto~v 035, ioteJ'\I.! uje,
naromiast 1raec~ parametr o:macza struJd.11ri; opisl!ł możlh\·ośd Ul'7-.i4dzcnra. ktor.,1 ~dzte
wypełniono prLCz wywołanie funkcj~ . Możliwo "ci wymilinionc w tej 1rukturz dcu c;r,ą
\liSZ}-~ktch «:cb ·przętu; począrwszy od maksymalnej lia.by oŚ\Vieth.'ń. aż do obsługi,""'·:io j
w~rsji me h'łlnjzmu \ 'Cr1e • hadcr. \1 k~dym rozdzfale empi zę. w ja.'k~ sposób mo-.rn.a się
1
.Pode-z.as gdy funkcja GetOe- 1.nceCaps prawdza mntliwosci uraz ograniczenia ·prz tu.
funkcJa Er nAdap er · s :prtnvdza rnoll iwości zar.t,ądz_ania sarn:i,·m r.::kranem. \Vyszco;-
góJnienie do~pnych tl).'bów ,,-yś,vier1ani pomaga apl; a ~i ,, okn,"!ilcniu rozdnelcz ~ci
d:ranu Of'dZ formatów pik ·cli dostępnrych dfa okreś.fonego urządzenia. Ah}' okrdlić liczbę
dostępnyc;h trybó\l\'° , ap,ikacja mo1:c wywołać funkr.:j Ge•, dd terł-'o cCou-1t. Prototyp
funkc:jj pokaz_ano poni żr.:j~
11, 1D1rect308 Get:i.r:Japte, .JM: ·1t(Ul .r Adapter) .
.W~ ID1 ce 308 En Al.lapte· iPsCUHff Aoapu·r . UH: Trj . 03001SP1. •
Pien,rs.zy parame1r jest takim ~mym identyfikatorem kart)·. jak I w 1kor'Z) talL rny , funk ej i
Ge Oev1 ceCaps. Drugi p.ar.1.mlr!tr identyfikuje, który tryb będziemy sprawdzać. Jeżeli ,; ·ar-
tość le:g,o paromclru Jt:Sl większa niź wynik działania funkcJi tetAcldpte ,,,odei:oun . V."'J'-
ko_nanie funkcji nie powiedzce się. O. tatn; parametr jest ws~ikiem do suu1,,.iU()' op.i-
su~ tryb \ wk.11ar!ja., która t"trlzie wypetnioM pnez tę funkcJi;:. truktum 1dcntyfikuJ c
szerok ć. wysokość. \\'spóle-✓.} nnik oc.Hi"·it:ż.""lni.a raz formi1l piksela dla krciloncgo trybu.
funkc,je Ge oe..,ceCa s omz En ~dapt:er odes poma ają mak_ mal nic '' Y~~~tać
molliwo,ści prz-ęlu oraz przygotować naszą grę do wykonyst~1a ' prz sz~~•· \\'1~1~
stuszy,ch gier w dalszym ciąg1J slo~y ~czom. ale gry t s ogran~c-A!om: d · ~d1.n:!c7~.,; 1
640'.11'4&0 na,\•et na naj 11 \ zych k rt eh. Powi 0111. my t~ zaproJ~ktawa _n::iszą gr • aby
umo.tliwić ufylkowni.kowi wyb r ·po tr d :zbioru rozdzLclcz.ośc• ?bslU;1s1wanych prz4;2
llaSZ'ą kart Dzięki temu ufytkownik rnoże zadc dować ~posobie naJleps~ 0 '!I "'Jfko-
r"l.ys~nia spr-.&ętu. Kiedy j uz. po1.naliśm}' rnotli~ci sprz~tu. czas przystąpić do utwo-
rzenia unąd:tenia.
Pi1.·rw-sa: c:nery parametry dia ułatwienia mama zm1,T'leĆ ~ ~ b ; D~Y iCE_r.JfA .i:.r
PAA ~· TfRS. Zn zenie pieNrszycll dwóch ~euów Je~t takte samo Jak ,, ~
nid1 dwócb ł.70 cb. Uchwyt do okna de fin,UJe okno. k.-tor~ ma wpływ na nffllll&.oo,__,,
~~ni 11. Ragi ~iałani ~ta\\rfono w la~I i 7.2. natomi st w Lllbc I i ~ -~ opis.ano Pl-
mmeuy p~zcntatJJ. Ostatmm pa.ro.metrem JC t adres zwracane: o wskam1ka do
utwommcgo UJ7J\dzenia iju.ełi wykooanic funktjj się nie powiedzie; jest to wart~
Dx1ara11ie lU'łlldlc,nia w d®:j mieae je; t opis.ane pr~ez dane ze ta.wione w zmni~
n„c.h pooiuj tabela h.
Fraga1
....... , ... TwotUnle I Dl'l'.aldl•II UIQ+ •
e:a• DlreulilD
iJ.,..,i: .
phk:~ 1a '"''ybu:ra 1u1v.')•;.!$L1 m tli w. ~'°. ·~ Lld~"'-rte-ŻJI!m
I.Jl Ta n.a ok.mia, -r.~ p~1k:B.! ~ h\:dli.c oc;re 1\\ a..ć na ~~ót p1arnkl w pl{lm(:
J
follStret'n P.re:sent.i l0oh1 rn~ :iplll..KJI dl!H ł~j c_ eh\\' f nic tl"tl i:lct1k:1ll ffi , til1CC 'Y,U~ Cl
al - Inne wart~, m ,ie(,J. z.i. :,;u,· w ~ ; 1 ~11: ud dZJ I n 1..l natyd1m ;is.t,:i, ' l!ll.O _
4skrowmk n~ i;,tk:i:1 do ~..;11..:ltwm•13 m:ik.5> 111.31~~o. r6n; mote 'Ił! yn ,.,
do c?.tt.~rct:h pn\\, rMów p] 1n l..~
. C., U• Twllll'.r ....llł
Krok 4: ąd ■I
Odtworzenie utraconego 1
u,r z . zen1a
C2iU,3R!i mo-z~ 5,i~ .;;,,.darzyć, 1c utmcimy u~e~i.c i będzjerny c~ci~]j je.~ Lw •~
Przyld.ad('m mote bfć u~b akl:yWn~i ap111beJ mpelnoemnaw 'lJ_czy l!rumma,~
11płtkaf:ji dzi:i.łi)j «.i w oknie. Utram ~dzenia 02m1.C7Ji. .t.e d:me me mogą_ być~
wwane do c::fJwj lj odtw~m urllt(iz.elll3.
w nickl~h, ~cb Jm)bujc $t~ obćj~ć ten p_r-oble~ '?Prz_e~ b]okowaailf ~ombin
1:Ji,wis oo uni~mD2Jj~1ia plZiełąc-zimw apl 1lnu::J1. Z kilku powodó"1.' Ji:st „a
J;fff. '[:ab,
wleś(:iwy s~b posrw,owan~:;1. Po pic-w.·s:r.t1. nic: mólt'l :l dopLJ z zać do ~1wi.cji, kitd)
n:ity~mi:a.c;rQwo v.'}'sbkiujil.(."e okno pnwociluje :za~•,,ie iłl:Dme gl')". P,o dm ie~neytkowf
;i.o/fde deneiwu_ią lf, kied_y plikacj[) próbuje iJl~gumf:'" 000\ll.'I ~ją_a; Uindamo,v.·e r~
di11 ripl~i Windm-.1s. Najkpfoj ,ił.-sl mmc.zyc się sposobu odm•arzania urząd:zt:nfa.
.rc~li , ryv.-ołani~ fin:iktji TestCooperat 'I Yeleve1() nic Vo' iedzie ·ię. t)mac-Z"J. t4.l, :u UJ"?t
4llt!nk zouo utrffl:OJ)e i K-mdcring nie jtst mo~iwy. \~ ~ mmm:ncsc zazwyczaj dofim
~ ZOOZt."'kać i Wf\''ołilĆ funkcj't Tes. Cooperat 1 ~vie t {) pwmwncc. Panti!\',,'a.ż rend •
nic j est motłi\\,'f. aplik3cja mic powirm~ przehwrzać kodu Z\J.'iąLilllc-go _ :tj's.<ll'iirani
potu~ at byfob to n1armm...·amcm czssy proc~QTil. Zami135t tego mdcży czekac do cmm
Jiil(.ld)' fu? . :ie.Tes ~Coopen1 t veLe-..e l Z'Wl'6ci "li arto§i J□ERR_JE. , ( er NC TRĘS.E T, W ~
rm;,men~u: a.phłil e~ po"1in11a spróbować wywofun icB funkcji Re Sf-t 7, ząpis.at1~mi ~
mt:'tmmi prieztnta.cJ,. ProEocyp W:j fulilkeji je.sł nas•ępuj[tcy:
~Sl.LT J .rect.lO:łeY1i::eB: .FleLU~ESc 1 _PARP.HE EAS r~~r r.)'Pro:J~~!ltac.11 ).
Właśnie
•
zakoóceyliśmy
• .J J d
omawjani-e zanądzaniern e·""'" • pozo.
•.,•-· • "1~dtema,
.......,...... m hlillltm11
stoJIS Jt:S.ZCU JC.-"ucn YO atkO\VJ, bok. Na koniite tneba ZlltSZCZ)'Ć u~dttnie.
1
i e urząd.zenia
KrOk &: Zniszczen1
.Znis~z.enie uratdzcnia j t pm te. To.c-bit, po prostu wywołać flllnkcj Release:
~ SUL T IOu tJOOe '1Ce8 FI<! 1l!Jse ) •
wrvdru1ie .•ej ~jri p,M~'odujr.: _Z\"''o1nit::nic_~ 3 . at.: dobrym zwyemjcm jes1 uprzc-
d~ zwolni-łi:me wszysdoch obtekl,6,,"· r.w1,ązanych z. ~117..ądzen iem. ~kich j a'k tek.Stu:rj'
cz;y bu fory wicnwholkó\v.
Rendering z wy1korzysta,niem
urządzenia Direct3D
1
V.' popntednim punkcie c1mA it:d;i:idi my sr1c. jak uc, orzyt UJ""140ttnte. 2 którego mogl t-
byśmy skor~)'sta " do n:ndclingu, naszych doskom1rlych sc-e.n 3D. ri~ wiem jak Vly, ałe
ja już n Li: mog~ s1~ doczekać ! Po ut,,,•orz:enm urzączem11 i upev.'Dienh1 się., że nie zostało
ooo dll'aoorie, mote1ny rozpo\,;1.ąc remłenn~ na..ęzej • cc;n • za pt,rnocą funkc-ji Beg1 nScene~
ESULT O N?Ct300e•, Cl>'~ Beg ·oc11r-ie< ) .
\Vywobmie rej funktji inlc.>rfflUJe urządzeme. że mam)· 1»miar rozpocząć remkring se~
ny. Urządz.coie konfiguruj i.: w,c\, nr.;tr1.q~ :,,:,Lruklury i ocz,ckujc m• ~,nsuukcje. Po ""'""Y ł.anau
wseys.tkich instrukc1 i d,a " branej scen)'. apl ilacj il morżc wywoł!:lc funkcję Eod~cene:
Z"iróómy uwagę na La . z-e scr.;11 01c możm1 ł'-BgFJ~eżdżai:. Aby roz,p()Cząć no~ą so,:,nę:
nmsimy zakonc:r.)•Ć 'ic;t:nę i~nprn-:dn i ą, Zazwyczoj dobrze je ·t umieŚ(;1t w poJedynczeJ
scenie m3bym:ilną ~i z.hę in ·tmk~j•.
zerowanie 1urządzenia
1
W w~._ -ioser :ipłika11i tntl!~UJł: 11as t ·lkodocd1)wy bufo ram ·k oraz bufot Z 11
O!OCOl~ •'ołcr Koror l..lzyty do ,\')IPl..·~fmi:nu11 bufom ramek
fl. r a Gleo1 W:uto~ć wyk.o yslY'\'31')3 df) wypdn, •ma hufom f!łę.:br. k,t to 'l-\.'3r:10~ ;i; zakrrru
od 0,0 do 3.O. ~ atJ \l.tY,.\'ilJla Wru1ó$Ć 1•' I ,O,
ks:4 co wru1~, ·ko zystywan3 <lo ", ·pełnienia hufom rnJt~·t.-y. Poprawny 1„,m.s
\'i.iU"to~, z.alr:l)i od bitu gł bj bufora m. tryc~
T:i.~ wręc pr~~' iliśm)1 \\rsxystkic fr,-41gn1enty potr.rebm:, at,,, n· zt= ur,,ądze,ni~ popr.¼Wll~
dZ"tałaio K°4:1 zródtm;y lwor..rony w 1y111 rozdziale ma za zadnl1ie uzupelnit.:nu? pod u-
wawli.-ga_ Yk1de1 u. k1?1)' roq,oc~liśmy \1{ poprz>t;dn im rozd:zial •. L.an ·m przejd.ziem)' il:\
necl}'l\ rs,tego re<Jldenngu, wróćmy do k:odu żrót.lfowego i z.obaczfl1'y, co się znueniło.
7,•TWDllllnlal.za.sr l1u„ _,_e .........
Ponizsze metody -ą c::hmnil'.im=. pon ieu.;ał dosC~p do nkh powinien być rmotLi\\,Y t::,•H;;o
prze;z demtnmy tej kfasy oraz klas potomnych:
roc.ected
~j~ ln1cJuJl130 inicjuje obic-1.t DirectJO. klór:y wyko lamy do ut om-·,m11 ur~
dn,1ia DireclJD~
ESULl I~ CJ~Ji).)D().
Ogóllila funkcj a cwor.r.ąca un:ąclU?nie. Funkcj - ,i.: m~zml :J,!ywo1-nl beZp-8$1\.~0. v.-yko-
m-zysruj,ąc wsz. :tkic pia.ramell)·. aplika.ej moie leż ,vywoła j{.,-dl'UlJ poTiizs:zydl upmsz~
C"l.fJnych runk(;ji:
-SU! Ut rt1Jrza11:er1 ern300C'1Ll: "~EATł~ P~CTERS lfl9ar ... tryl ne 5.a.
OODPRESE , _•;i.lt!"'i • E·!S ~-f)c1 a'"~tr)?rfiE! tacJH:
r
0Zloi:11irnle,.
1'a fun~-eja implemeJUuje proc dlflrę ot1.:e ·iw nia ~-odl~ar2r1ni{Jj opi~aa!\ wc~n;cj;
Pmitszll flaga je-si ustawiona domyślnie na wutołt TRUE. Mote być u.u.wiooa raa wulfOłt
FAł.Sf ·przez ~ kl~ lub pr■,'-!Z klasy potomne w cełu pomformowania aplikacji o zapm:•
staniu rendfro1i\·anu1 ramek.
8CO;. _1-:ont;.rr: .XJa,
}.
w l\llS~pnym pod_rozdzfaJe opisano implemeo1a.eję kom:piem~j już kl~.
""8Mk7.1.
Prupl;w slffl:, ..w,ia
14' oplfiacji
UtwlWD!lleOl:N
UłMMDIM~ D:W
~~om
~ O p a l. . ~
PnDcl~
~ CJWlri,,
~~
I
i
cr
l
L ~~'lin
I
i
f
F'o.Znlu~
l
Ponim y kno służy do zamicjow2nia nag.i konl)·nua.cji. Aplikacja kontynuuj~ n-nd~
du czasu. kiedy otrL)'ll1a komun ikat o zakont:~cniu działania lub k1e<ł. ta flaga zosWIIC
us1awiona na warto:ś S.
_ ooty ai:Ja • TRUE.
- Rozdział 7. • Twonen. I .Dlrr4dzanie un.,.,
ment?'1'."ać t1t futlkcJ~ po to'. aby ZHIDlcJowac zmir.mne pr-a::d utworzeniem obiektu D3D.
Jet-eh kJasa potomna 7.WJ'Óćt wan.ość FALS[ , :aplikacj111..akon.;zy dtiałanic:
1f ( PrZlJlrl C C'ndh l ( JJ
r.=-Lur
:~~~ fun~cj powQC!uj~ utw runu; ob,clctu D30, 7.g-Odnic z tym. co opi$1U1o we wcze,.
.snteJSomJ części te o rozd,z1ah1, lrnpkm.entatja funkcji inajduje ii; w dals~cj części:
• l CJ JO-: O,
\\f pliku ,fpHkucja.cpp pozosmnjc jed,.m nił.!dokoflc~ony ,dcm •nt. \\f lym tt.r~zfa\e wy-
\\1ołujęmy funkcję Ut~orzPros da.pl 1 me. abyśmy mogli wyświe1lić jakieś infomiacjc.
W kolejnych r ztlzrnłath to wywołilnic unkcji n~uni~to. a utwo.runic urządze'n ia dla
.aplik cJi w oknie Tub aplikacji pelnoekr-.mowej będzie ~~dani m kl polomnych. dzięki
przesłoni· iu metody Pold1 CJ ·an1u:
1f ~f !Lfu bt'il r ,:Pros. -r< _ 11: ,.y • 03 PE_·W..
OD.:R(o!. • ,-.AP.1_1 P. EXPROCESST o1 )))
Pęd.;ob ług, komunika• ·\\ ua ·tualnionl. \,•pro" ad,.ajac: kod ob ługur cy r ·nd ring.
Oznacza to. ✓.c ~łpltkacJa re-11<-il!nsjc ramki t:.1k sJ;ybko~Jnk co j11.-sl moiHwe, ah.- w dal zym
c iągu odpa" •~dra nu komumk.i.t} ·
n •,
Sc. n • d •.
le ( lkdt SS<1 •
Dzię~• tt:mu k I11~ potomna ma mozli wo ·ć wykon.mm potncbn)·ch d.zirc1 łań pr6Cd roz-
lJlOC.lt;CJem wła:ki\\t: .sci:;: ny·
0
W '-'Ołanic pcmil~ZeJ fortkcj i jest tym m~cJsccm, gdzi-.:_ · kiclct ap~ikacji info~t~t kJa .
pocomną o tym. ie. rnłlc:t \'l.)'koooć rendering. 'IV kolcJ)ll)'Ch ro~1ahu:h 10 ""raśnn:: w teJ
lfun ·ej i < dbrwa ,~ ,,.·,trk~l"O :ć dz1ałan :
P. eruJ().
~J PoRfpdel'Ciiłnl U( U
1 lo.XIEldł_OEYCCflv.JO -
{
prze<lidt110ri~18C),
M r1Urzadmi, · f >•
PQOlnll(JrZfłl11J(j:
J
. • mii:°seR. ro czas zakońezyć. \ l ~ miejscu ~h:let daje klaait
.leśJ1 dos~I my. do csg~ . ~. ńnl'"'nldku pliZt."'<f z.nim:zemem urzą_dzcma:
pof omneJ mo:lh\1/ro~ł zw 0'.lcn111 l t ' ~ - f
p z,cdl;l1sxzen er.-t>.
•
Natommsm - ·&.,..,
JOOEll ... ""Sln!kll"ia
.t:i)...... fil.I ·
nnwodl!ł
v r... . jć: misze.zenie
. . -•. or7•.ądzenia, Jesteśmy na dAL.:
-~
drodze oo calkQwitcgo z.ńkońc:z nio Mi'ała1u11 aphkaC:JJ.
2n,szcz 2Jdl~1~C).
C'.d1 _DES •
PostOu1 ssa eto):
}
retu n De iii· nt.10licProc (ix:
)
Zacho'11. :ij 1
kopię p,arnmctro",.._ b w razie: potm!by rniee moiLh,--ość odtwnm"llhłi ~
·.y S _Pa a,: t. y1 r zen a. ,.Par~ ryT„ rzema.
s1zeor{O::OOf ~Cf. CREJifON ~•iłJ.~ EP.S)l,
P.)''~r.:_P:1r4..,, --yP·ez~ aeJL ; ar~::'.t-tryPrezerttilC:j,,
!:i 12eo~ CDmPR[SE T_Pi..! • qEA,S)).
if "4Jriod'Zen1l'030)
~rz~ KC'l•
„ijrz~111
- rn s_ ·:
ł '1 D3001 SPLA.'1
1°"9 . lha~JitiOS ~. )
t
'ajpiCIV-' pcbit:r2emy liczbę dostępnych rryt>ow;
ong L; cz 1 Olu-~ti\ P ".rMQdeCouń (~TIRJ>EF ' l:
l
Poni za funkcja stanm,fl w•ł~iwą 1mplcrnentację tt:dmilci opisyv,•ai,ej V.'CZ~ie.J.
rz czy,...•i~ta róż11ica _polc-ga na tym. że obecna wersja ~wicra ••pompę kom=...-..
która umożliwi11 ciągłą obsług't komunikatów w czas i e. kiedy ~plik:tcja _,11,11,łi
odm•or'll'nie urządzenia;
r u s_o.
}
- Ro eldat t. • Twon1n1, J __,. 111
.E
ra .
_Ol ~ .
łC.)' r)l, . Far::,
t
-- .
O)C,t;Kf 016.
u.;u,l~ uou - r.
- 1 .zadł:l!n1a :
Uchf,,t .•
• Oz:1ł1 la 1t!.
}
r~ urn E_FA L.
}
Pcmiż.'i:tA
funkcJa j est inną dodaną dla. wygoił funk,eją. która $hify do \WOf"jenie u~dml
pelnockmno\vych. Znowu funkcj tę utworzyli rny jako udogodnienie dl progJGmtSlf.
z.ar m mozc-n,y zmicn,ać \\'llrtOSCi u~h pammelrÓw tak. aby odpowiadały Q5.1;)'m
potrłiebom :
r0rd1na 1 • ~lER_DEf T.
·z , .. ?.er1,L
, . .
1
z.adz _
ł
można pruslonić
fMkcj:J 211ajdt11'\c sili poniżej jest funkcją obslu .i ko~~ tów. kł
w Id h potomny h dla uzy k.anJa wł nc.go dziaJ n11:J.
. . . . . . . TwGiiił•., .......
-•
Podsumowanie
Mamy teraz wsiystk ie części naszego proste~o szkick_ru. J ie _poświt~iłem iby1 v-
uwngj zarztdzaniu trybami czy też okr la_nm fom1atow, pom~wat s2k1elćt dos .
w ~ DK 11obj •o ,v najdrobniejszych $zczegółach. S1,1-·orwn... ?J.:1r.::le1 ma na ctlu IQG-
stawjerue Ceytcmikom podstaw. tak aby l'nogli analizować pr.cyf<lady ~ ~ r t t ,u.• Sili,
a także ah. mogH .z niego s~orzy~ae efo zaimplC."mentowania fantastycznych t
w mtSt~pnyeb ro-zd2iah1ch. Jetel i p10J ckrujemy gr~. ktota ma działać na wietu ro
pl tform1Jch będziemy zmu$.lCni stv.•orzyć funkcje- y_.arząd:,.a.nia trybllmi, ale ~ ~
1
s.ooelc1 daje na.rn solidne podsta\V)I do projekto"''~ia. Jak zwykfc. spróbujmy \\-)W
kilka ~adniczych punk-tói.,i.•~
♦ Urządicoie Dircct3D jest ob1cktem, który umożliw•::i r~nd~rowam~
~ ianąd7.anie renderowaniem.
· \\ prze~u,Cm
Z :zajęt goomctrii r:::-111nęLutW, 'le dt.,woln:i poZJ JO ,__ · m - ,,:! b"·..:
~ ·-r
~:ńlZt.."tltowana
pr2cz matemacvcwc pi..lJ'i 1..:. Jakim · JL!. t punkt. •au 'I ,m1 m'-• •i" mkże ż • d".t pumk~·
1
1
. , • • • •
w pr.lestrzeni definiują hni · prostą or-.11 i~ trz pui'lkt) \c'- prze. ~em ddimlJIJ lll"OJk t.
o wła me te20 pomnebuJ ffl)'
i,; pod UIWO\\.e ptlJęcm 71ius.trow::ml1 na r;sunk u ,1 T ... .~ . _ _
'grafice 30! Put zcba n::ill1 podstawm, ·j kon ·truk1.j1, 1-..tom 11' ghib) . luż,c J:iko •.klo-
c:ek'1do W)' c ·1ania punktów. linii i pcm icrb;hni.
3') esm ~N"CJalni~ i:iproJektowin~ do
Wierzch . lek Jt:S.1 kon~nuk Ją pod Ul\ ov.. ą. pr.zi;t - •· J 5.r · h ,• t
. . . h ł'· • , oraz do \\"' ·or.l'r~tY'' ru,111 Le "' r.:e u
s.eybkH!·go I wydaJncgo ir,m:tw. r1M111 wierz 11'1.0\.'- ; ; •
. . .. . h , ·,. tm, • \ :n kic dz1alanm g om try zn
wykre. łam. punku.>,,~. lmu I pow1er7c m (trOJ"'• •· ·'
_ . , Ili • RarpoaąMlfflY 11111111,awanle
llylmakU..
W'.r.")11'• zoa,'ntl sir
od wttrzel,olł6tt•
•
V1
Unia p,rMU
Trzeba pamir.,1.ać, .ze niektórych 5J>O rud łych nag nte mc)żna tosownć r'1-Zem. a przy.
kład owe ma sen~u łą'Czenie flagi 03D IJF "'YZRf-1" z flagą ~3D.... 1r _ 1\1 • ponic,,.•lli w •
P1'2e~lc-0ne i oświctfo11~ wuer,; hołki nii: '\'Yfl'Nlg~jq ,aisto$-Owania wc~ora no11'113ti\cgl
fod'obn1e, w m ~mym f0ffnłlc1e nic mo1.11a 7~ro owa· fl□g dla w1crt:cholków oieJ,-"m
k ztalc-0n)rch Om.i' ws•c;pnie przeks:z1a.lconyc: h.
Rmvni1;: ~~.. jest fakt. re nagi wyszc1Xgólnionc ,.,. tabeli 8.1 ~ taly W)mi monc w
: ~~~•Jakiego ~zckują ful'lkcjr;; DmrectX. a prL)'kk«l ji;ull t1.>1111a.t okr1.: . I info~
~tJI. kołorze I tek lur.te. ro trukrura opi ująca ,v i~rzchokk mu~ 1 bvć rganizawir:1 „
w taki wfaśnjc • ~ób. Poniż.ej .lDaJduJe ·ię fragm~nl kodu "-Y~wietlaj;cy kilka PIZJ · ,
dów fuml~łÓ\\.' wrcrzcholków oraz odpowiadające: im slruktury <lanych.
1
•cie ne O ,f:._PR2 7.T I(RlCH ( .J F_,.~l ' I DJDFIJF Dl fllSD
strun PRZEKS2 I RZ EK
{
""·
J.
RU&dzlał& • ~.....,_lltOdwleaollOll6w
X'IZ Ta tł~ uma iZll 7~W:llliC trmch wmości typu f 0A; W ('Cru Lq>:IC2Cilkłwan~
pozycJ• X. V~ Z w 1cn.chołków. W 1crzd1()1kJ W)'ko~,uJącc ,~ Dagę 54, wnyłane
pópr-.rez potok geomcll)·c-n\}• w celu tnmsform~j1,
Ta łl:1,8.l_' omacm zastOJQ,~'Wlic: l"2tcredł wa.f'l.oki \)!pil Lill, w edu rciprczcatowania
W!if~~n1~· _prle 'lili;!_q ~ ~zycj1 ekmaow-ej wit~bołków. Oprócl,: pinycjw
X,V,Z, CZ\\'3ru V.l'nftośc1ue , wspóln:1 wru11JU W. W~ść RHW ma. znaczenie
~~(li ~ted}· •. ki ~)' mm~· o b~fu~
W. Wn:rac,bolki de,fmio,\i.;.mc z ~ łlail\
om1JDH b~oł..1 tmr1 fonnncJt I ofwu:thmm pi.1toku: urutdi7Jl!niCi: 7.,alcł* :te 'blic'l:Cnia
te zm-'lały wy~onnne pral.'.'z :iplilc:itj",
W nickl rrych fomrath :mim;ir:ji mołJ1:1 W)'klJIZYSływ ć \\ itk ma.t:i.tri.y j~o ..Iem.o•·•
s.tm1J cych ~nimar,::ją. K..i2d}· :z. "" icr«lwlków mote byt prMn ;tcZ1.\FW priłz bldą
z tych mncicn:y 7. iooą wag;ą. Tc flagi ol<R laJą. j11i'k wi!lłe ~ g uw1 tęd11iono
w formaci,c·, K~Oi ~gs wym:Jgaj~di'Jej we.rtli>Śc~ F OAT, ;7.3t ~ H _'AYl
~ d'lo\•tkh wrutosci rypu ąDI,. . , hodu. sstni!!j flagi dl\a ill~lmc- pii;,;:111
11:Jg mit.'2w'llnia,. to joon:ik DiNcmX 8,0 obsługuje tyl~'l ~- w. ości ie " " ~ Y
""'' d:ilszcj C.l:.;:ki ł:cSi!łiki. pr.-L Oklll1.Ji omcawfaniai :;uii~ej~.
mVf_LASfBETA_tSITT.11 Je2eli one']ono llę flng~. ,o OS~lmlll W:JS,3 mi_ 7.3ni::1jes.t imerpr~toWann JsJ.iiD
wa.tł ość tt • a nrc f L(lĄT.
030f~I."-• T. fla~a OO".na-c.l3. że rQrma• \.l. ierzdloJkóv. o'beJ f'illllje wck1of norm:.lny
repre2cnLoW.ln}' pni:.Z u-z--y ...,....:mości łypu O:. • V. Z), przykład, jdcłi tm
wi~'ho]cł,; JC~L CĄ-SC 1ą pow1ern:hrn. ro- wick!Of norm.atnl' ~c- pr:i'.Lv.-dopodobci;c:
,.,«1.~ktorcm num111ln} m pó\ło ll:"rLenn~ \\ ..,, ybr.rul)'ffl punh:ic.
T fl W1 071U1 1:ł, k f('lrmlll Zi\Wlcr:J pojt.-dyncz;i w::utcxit '-YJ}l.l H !,J, która dcfwLUj
m:1.n11ar punkmu dlll wicr.lcbołków. Eri:kl d:1.i:IJania ccj tlagi zali:1;)' oo mo1'Ji..,. ości
spr7~1u or.u u z 1d1A,,,~i::s.
ll:iaf~ _DLFFOSE Fonnarr Z3\',,lr.:r.a.;ą C t~ nag~ .mu 1.1."roj~ \\'311.0~
kolor rm:pros1,.::n1a RGBA.
OlafV _SPEUl.i\Cł T s:iffll1 Jak pul)'CJ31 popr.«.·dm.'I. dl;i koloru zw11:TC:ii.1.dhu,ego.
COOf' [XO Te nasi okrc...;.la_i~ całkow1t lic7~ ,YS]JÓtrĄ"d11yc.h tt.-kstur wykl,1ł7.)'StY,.,.·anych
COOPt(T0:8 w rym form.1,c 1c. W w1"ł..:P'OŚC i pr-.t.) padl.:ów kaźd~ zbiór "spÓłrlędn) h h~kst~
Jt:SI ri;pri.:1cnto\\'3n~• pr1c-1. dwu~ "<fm:o~ i lyipu F Ni_.,.. :ale:- z _pomoc-.ą n •~pnc-J
flagi mo.i.n:i ukrc~lr, 17,:c;.i:y,.\ isty n"!zmi:ir.
1
Olof f TEX Ta lla~11 O · resla. i le- w:utOŚ<Cl typu I :. ~ Jt:11. \\'ykQrz)r~tywar,ych do .lde-fam01i,'0.i.'Li:!
• ~ TEJ •·-·· J ' b ,rn,,-'J .•.,,~ .. hr•· ,_,.,.1r llom•..!ilJ1\' .rtUJln;U' to roc, F rr.,
'!,. .tr :'-VIT2.
II ULau:go ,I. JOJU '''"'rr•TLl(Ul•,I' .. .:OH • :,.i • -
., JC OS 'I' w. ERZOłOL[ •~
I
\
FtOAT li., J . l.
FLO:.T ~~. ny. nz.
A O Q,
rwerzenie wierzchołków
\\' rym momclK'i~ 1~ti · w~iml-:. U)fl ~ wrem:łiołlci ~ opi~li_m y ~ ~
kf6n je- de-fini1.1je. ~ Rll.1$1 IQ}' JC po ~ li :li ·o ~~NaJ~IC'J ~ 1 5 , ~ ! ~. hi:
~ mecodti bylob],• pro u ~lołcO'lr _ie bi_ • ~11~•·
pod~c JS~ co ~· ~ i
dt ymr DJ~1ego ruc? ,ilftiC' funkeJ Difi."'"CIX. ~1 re ~IIl'lUJfl ~ k:uniJu l\1.'Q~
pracz ll'-1 ~ T l ika ••. AJ,: rnll$imy :si~ p-0\~' ~ r. q_ l:l~ 1c fun CJe. ale v.,· 99,99%
l'li: złym , boR"m. j4.: •H chod1i o wyd.iJnoU. Tak, spo ob je.St Dil tyJc: J..ły. te Jl"ez,j~
piuj1r . omawrLia go•w 1)· n l'0.7.d~.i· re.
Ty~ 'ego n IJ')r.l' dę por:i--u ,jem). · t uMor.le-nme bufora Wilcrzth fkćm.·. PD! •
k o, ie · i.for wimclłołk Wj t lc:~n ("01,\1, ią7.aniem j fo~1"-, ze U l,l\da"Jloc ,IU,JIUUlt
um I btlfor w ~~i \'ideo hlb w ~tę •i GP. O.i!~j temu mamy ~"~. :n
u~k\Jj1: d tia, d do.nyc-h rak szyb , jak 10, mo,hwe, co oau1c; " dobrą ,~ 'daj · ·
Blifor w1erzd1ołłut1A' j i.: t w ~ i · t~ Ol'l ni)' prz 7 UrlJldzeni • pop17ieZ wyv.
mcr.od.y ID1r-ec . . l(eł!:· ·Cred ~• er!e B. (~ • Jak zwyktc. po prmot) re . ;p l.Dli-
du.,ą 1 , tn:bł:J~ opisuJąa-
TTE y Jic2:1:!li :msro~ujro1y ~r lingę. bufóf v.•u:nc:hio&óv. b\<di1i: do l{pll}' ł)·llro do liłpi.s.u.
Prob)· od eytyv,·.ania oo fora me po\1•todą się.
Zasoby utwor1,0r11: ~ 1..; r;»iov, mem I.CJ 11:i:gi l'\\r')klir . c11 ·o~ w pa.Jn1 1
:$)'$l"'mov..-cJ lub v.· parru~ i AGP Zal,c; ~i~ \'.ry cn?.)'Stnnłi: 1.CJ n~1 d ilN{ąr W
wiel'.lellolkó'"' ,
Z: s.. hy u.-'ili1'(.trt0fle a, IPC'niOC..;J ,~J flagi sq ~ pr.RZ ur,Qdz,cruc. riĄ.dzca ·
p,7.!!<:howiije, opi4r dan}.d'I ~" parni1w,-...:1 !-o_ l!'!lcTlloV,,~j i lc,oj i,tji:: je do pa:m;i;,c~ ~ o
'r rmill~ pottl('b W pr.cypJ.dlu utt:](}' lln'..l[hro1 . Darr:iclX ""-)'KOr-':YS-'UJC' koptf
s~ti,: 1rtoY1.'il <lo ji:10 9dtwtw1,:r1i~ \'\' . ~""'P 111i:.t..1 1\li. ~h,~· dla uzytkow111k
Ozi~~ i ~mu aplika..:jn. ;i.~ ,·wolnio na 'lłi'}'kan}"'t .mia dl.ailł n ~·i .11t)'(h
z. odlwll7„a.mcm bu fora.
Om.D.._S 5U Z:1:,u'h)' są Cli 'OJ7,t)l\i: ,,, parni ' Ci s~·st~mO\\1:J, 1r: J'-'S• ") hajlqr.:;zc uslawieaa~ ~ .
oororÓ\\' wi~rl( llo-l~ó.w . poru~u spl'"l-t,1 ni ma h.::,pośrcdn~ ~ d plffll'{ L
W~!\\;·l)fonii; tej in 1rukcj1 :powodoJc: umw4ll"leme b1,1 ora., ·ienchofków. Te-raz oolely go
'L\'Yl)Cłoić danymi.
W porównaniu z nakładem pro y w . 1.asic t ~·or.zr,;lil i 'bufora.. jego rniszcz,:.rni~ jt.~ prosce.
Wyslarczy wyw-ofać;
108
FSllT ICllr!C
- ..ar ...~~Bu fer8 i:tele~se(J:
•• --~..ł • • szczenie: bufora i 1.wolnicnic ~•~D)'Cb
W) w,l3nre kj funkcJ• po1ivvvUJC zna 'ł
nsobów.
Konfiguracja i modyfikaeja
danych a wierzchólkach
istni~,. w p:imi •-c, , dco ~ub w pamięci 2nrh4..~
l!...,.u ,..t..~ mo'2'\
h :: ' . - ~
_. . ....
. _ , • $
famm e:r Ooc..:Przes o:mnc.T..R :pn:i=suni,:cic do miejsca., " ' którym rozpoczynaj~ się
kowanc d~ne. PammcCJ: Ro · u o d ozna~~ liczbę zablokowanych bajtów. --.,•--
. :Zdb O · nyButor jł!SI wskaźnikii:m do zabiokowru1y b danych. który będzie
wr lll)' pracz funkję n tomias1 pilr-am.e[f ag, Y..dcft nitoWiTlO w iabeli .4 .
fl3 i11formujc
t1 dzcmc-, u: na1c.l.y porzm::sć- Sł, ~ dlllc I zwr1}f;LG t10\\i 1""'
Za.i(O '-'"OO]C' tej n: i r:oon: mi . V. płyv. llil poi ' pszt'll l C \\ •d.JJn I, polllC'-'
11.młP.Jt:flir: m~ rn11Si utymyv. potoku w ct&-ie u:r.y l,.1••••am:i. :c. tar ·cli dan)
r~~t:r l.b:r:tla. lyllre dl;i rufOfÓ\,I; dynam i zn eh.
TJ fln~j,I urnotliv,.1:1 a~rnwi?..a !,R podC'J'.M d&J~m d:mych do •~UllŁ'J t: l:rJJ'Ofl.
l.isło wanie tej flagi j~m zal~C"!III.~ w przypadlm d d:i \ ama danych do btlfom.
030LOCl YSlaa: ~ "' ch1j .l.Jbl owanie butom v. 1crzchołkóv. powodu 1.: t - blokm ·ar111: '
~ , r:mo~\'}•eh. W Pl7.}'JkldbJ długo 11W ~(l.(:ych blokad 7:0 Los~m ,1111t: t~J (1:i.gii IOOU'
by ko111~me. aby sr-;ti:m mó 1 kootynuoli , dzi:Jlanic:" i.:/.a~tl!' 1m :mia nt,_r.ot/TI
bfoko"'·a,n j ,
Ft_g1r tę rno~my ok~. li'= w Pf'l)lW.lku. s,dy a,plik.icJai chr:e tylko odc.i: ty\11, t buf«
1c- raQ!JJ:1 •oSffl\ ll JtJ dta buform • ·, itr.b;;hołk w tylko do l..lp1su..
ers :Ur. l oc O.
Aotdzlel& • w ~ ~ ... od..........,
fo , rzct. lk-...tJnl~C):
Bufor j~st teraz wypełniony dm'.)'iflti i gołM, y do ut)'Cia. ~my ~'}'sbc w1c:ncho11d
:popm:z pot.ok''" ce lu renderowania.
Renderowanie wierzchot:k ów
\\fres.zcic j • 1eśm golo,.,·i do un1ii;sic-z..:ni:;:i c7-tgo~. 1'111 <:krnnEe. We. fmgme11!acb kodu
pokazan eh do rej P'),Y mów iliśrny o "'' h;:pnie. przekształconych ",,;e-nchołka,cli, pt;nie-
W3Ż d,o, rej por;• nic wsµomirn:d;:,ny o przeks--ztakeniach (opowiemy o nid'I w następnym
roub:fak). Spr bujmy kontynuowuć ten w~ iek. W porlr\\11lllliu z ,,.,-ykommą lko111iigurncj,ą
w:,t~ną. samo rcndt:Mll''ru1 ie jest proste. a~~ty rnz.wa1)' 1.r.✓-)' dementy,
Po pi<.'IJWSJ'.t-. poli inni •my poinf0f1Qnw t urządzei111t!, z jakiego rodzuj u , icrzc:ho:lkruni mamy
do czynienia, Robi ~ie· La za pomocą '"'Yl"''ołooia fun~..r;ji 1Djrect3DDe,·kc ::SctV rte."tShadcr.
V 1.ym ·cuuekśc Li.! venc. hill-dcli jc.-s• wla:ic1w1e lbrmlllcm FV nil~'Ch wEcrbCholkó'!i .
Jt:sr m dość dzi,va..:. pr-ottwda, Zastosmvanic FVF po\,roduje, że urządz:11;n1c jest infor-
mowane o formacie w1erzchotkóu ora.r. o t~ n1. że w ii.:rzch-0lk; b~d4 ('.11'2.e'twarza.nc rp . ,e2.
poWk . rancfardo~ .. , Fwikcjc \(; ·w,
ołuJemy tylko wtcJy. gdy tonnaL ulega nmd, fika~ji.
a nie za l!rażdym raz~m. ktl!d>· \\ kormj..:my rcnckrowanie. Funkcja ma n::ist~pującą p,0$tać:
HR{St! - ID 'e<:t3We ,ce!3 S-t.~ •eri:.e,;,5.~dde:nO FF '
Ot.u!;i krok polega ,ia pomfonnowani1.1 ur1ąd.zcni:.1 o tym. kąd pochcxb...ą wierzchołki.
Wykanujie $i~ to poprzez prze ·az nie bufom \ 1cr1,clmłku..,,• {]o funkcJi [o, re--_ :'..lnDe'a 1
ce· .SetStredl'iS.Ource. unki:.:J~ t mforn1uJc urządzt!:nic. gd.1. it! pr7.ccho"p"'.11n~ _q wierz-
chołki . Pi oov.'llic funkcję t~ \ \ rwołujr,; si«t 1.yLko wtedy. k100) che miy akreśli,c Limy bufor
,. ierzchoł~6 . unkcj a m~ nast'ip-Uj ąc~ posra. ·:
ESU T E01recJ::.JO&. ..1cie8 Se !:it re~ource, U: :~T , · rS '"ti~ (!l'li a.
IDi rec:tJOv"'r lBu ~r8 ~.-&i (or,., er zi:r.o l •
urn >
Parametr I rS rur1 em a określ:i. jaki srrummcn należy ~k<ljarzyć z tym buforem wieil'Z-
eh.olkłn1.·. 2anim po.tn.amy traJnik1mcchm izm6',., erte). hildi.:r, bęclxiem~, '-V}1kor..r. st. 1ać
myłko strunrŁ~ń numer O. Pa.romctr Krok okre.--J11 (w b11ji.ach) rozmfa1r kafdr..-g ,vier:zchołka~
Znów~ d®pólu m p,oznamy fflt:(;l\amzmów vert • ~ha.der. IĄ'iiziemy określah ten pa:rnmetr
1
v,.• ostalnim bol-ru infum!\ujemy urządtt.entL? o tym, ~ na.Id.}• wykreślió \\1iendmlki. '\.yyto-
nujc- się to popn.ez ""''Y'\'Ołnn i fimktj i l 01 rect300ev1 c~B : 0rawPr1 mI ..,e. F\mkcJa ma
111asępująccl poSJEnć.:
etDJOPRlt4 IT
p...,,,dl'JI te „m6wi,;lr ,~ ,ze "" " ' rozdza•I• Io.• P""i•:Waż fflllj ~ ~
ZDl<Ji<tliC dln CfO" <ćl
i> l<sZl;dlów g '." <~ ,; al)' 11. Pont<:,.- Rll 111/1'.10 ~
łl lr,
o pqi:d""czy<h wi ...,1,olbt;h. mpam1~Jm}',., J>'I' m• "' _POI 1ST
mia.si I;;,,..; o ktril ),ei pwd<t " · ktbn: <I •~ r„oJ rov.a •
,,,-dajn ~ i
Rpunitk&.2.
Opu,cic/ł' = M
lłlk •
-
za,attnienia zw•ązane z wydajllOśCią
Z:mim powiem_ eokolwi~ na temat wyd11jności. parni,ęłajmy. te Vl)'dajność jest fu~.M.
tego. ~o próblJJemy zrobić ..Z ~ego powodu. ponihu zaslldy mama uzna.ć za prawdy
oc~•5l~.• ale mw~ze ~w•nniś~y- pockspnymcntować, aby .mald..ć podc:jM:ie, kthrc
1u1JbardzltJ nt1m odpowiada. Pon1teJ podano 1i tę za~d. które wal/to :rozważyć:
J ...J
• 11. ···"""
1.UŚ(: pGV.",-'Ż5TI.•ch pr&\\o'Q OC-ZfWIS( Cu l'Jlua•a ,_...
m d # do mak · rmlll•~ ~J il.;LJIJ
• •
1·,
•
.. 1' --\. dl.i fan
... grupir,wanie to poch;tin ar. Zaw ze: pow1nnL • . , . • liiaci i ~ynuicJi, kied}· zmu-
.ak. k ć . d • 7Vl'il "'Y"'ołilnn.1 I tmn1m11
J •~ motr111 , y mrn w JlOJ e ~ ~c..., ··
:.i •
\\' mojej pra 'I prawie nigdy mi;
Slruny urtądzeni do przeł czama do nowe O tonu.
CZ,,,llł•~......,....,.11
Jak obkcałffll. kod w tym roulziille \\ lrorzystuje wc::tt'Śnicj optaco"~l'.lny szki~Jec, "\łt
l"llffl?ffl J~ą niewieJką mmłtfibcję we,, n~trz klasy l dCJ l I-' ~sta ns,u.-"~ąe l.\o} t11o
io.nu.- ,,.,,.~ ur-'Ąd«nie} ~ zmodyfilcowakm plik W~,~ ·alf~J,·.cpp. ilb)• uwzgl ·
11ową kJłlS~. Pozosu1h1 cztść kodu majd'uj~ i~ ,. ewnl\tfZ klasy ~ l katJi 1fr -·i
która J~ kliis~ ,o,onmą k las1r '(JJ.p · kdCJ 1 Hos a. Pnyjl7,}jm_ ir.: defi n ccji .htsy w pt
ĄpfilrncfoWierzch.lr.
Zanim b~-dziemy mog_~j s 00"2)·s•ać z k~llSy pod tawowcj, mosimy najpierw\ łąc~ ·
defimicję. 0\'II r.:las.31 dzi dziczy wszyst ·e podstawo,,·~ wł.a!cawości i rillelody 2
0
r.Aol1 aCJl~S i! Wll7,J.)17tsbru- kilka funkeJi wirtualnyclJ. klón; urnicici li m}' wszkit]•
• 1ocl . · ·~1 ~:tC:Jil
ci SS r"Apl ilCJ --er"ltr.o1 ,
' ..bl1t.
P ~•31 ~c \\,__aa ie •mcJBhZ3tJJ lub w cz:i 1e oo•,varzt1nia un.ądLe111iL \\' tej pr')
dow ~ phkitl.1m, PUOO katdą opi:racj◄l. rc:m::lerowania. bufor jest wyp.:tm111ny okręgiem:
~ 111łfłl;:'1r.1JBufo• ~(l"':! Ol,; }
Ol Ul •'L6.ir or'lllóJ~rzcbol,:( ): ·
·,old lrl 5lt1Bu or'... rerichol o.
\\fre iiCie funkcja, ·n.a lktbli'.ą ~ekali my. Jt;j :za.da□iem jes.1. ri.:odr:,owa.nie wier2~hoU,::6w
ma ,e~r.lllie:
, r ~ I D1a Relide J().
Defiomujern~ fonn::ll oraz s1n1ktur~ 7Wil\1an· "l "'1cr;-1:dmlkami, ktMa :uwiera ·s.tępnik
1..1 .utoną. pozycję oraz prosty kolor. Usla~~mny kolor wkrzchoH;;ów niJ biały. 11h: nH:,ma
s rutt
{
~T '
- i -Rz E,
Tc!ii7. zdefiniujemy proste makr gen~rujące 1;c;r.bę losową. ·-~Z$ plikacj a '' pełnia
ekmn rozmieszczonyrnm Josov o, okręgami ► :ate'ITl1 tom kro ublt"''~ t:"'on.,,·rne 10 ~"rych
wartości 11mi~nnoprzecinkm"r<')'ch z ?JJkr~u od O.O do I.O. l1on; ~dz•"m mm.ożyc pra~z
'2erokeść ; wysoko 'c unądzcma~
Oil") ·al'lłlO I ( 11 ~ )
11
•de1 ne- LlCZBA_l050~ ((
Clll"5 11 • Roa:P ..e:t,mm)' ~
~11 ~fj1W e:
r
ł
tii:4)· tiu for \,1 mc:rz-=:bołkó,.,.,. ni~ zos.,r.i, z lnfon)·. t~
Dc;ś.lrutwr oM~i,;_ic s)'(L1 3 t:Jł:. . dk W)'H imii1a iflJl h bl'(dóv..· w 'br~ie -HAl,ftillj
yooat;ja. m k .się ~ e w fll'Z)'P8 "
·, 1 r 1 u
1 CfAILWtU· lPros:
DJOC~(4J! r.-..~•,...,,._
F~SE. -
:te 1 o.
}
1f l1G?.O· ;i.iCrea ■- H! (
" ziea ~ _ F1.f. U.).
OYS. F- IElłlCM.
~_DH~T 1
a Ertt H:))l
r- SL
- Rmddat 8. • W.,..... "'llłlDOIJM ... ad . . . . . . . . . .
'
ł
l
Funkcj PrzedOd ...n zeri f:fTI ni u zy bufor skojanouy 2 utrnocmyn, urządzeniem.. Przed
odt\'-'onenit:m urz: dunia zwolnicni lego,buforo j,cs,t konieczne::
800.. 1 di;Jl ri PrleóO:!t „ .ufl l1
{
1s1.ciS1 0~~1erzcool {).
re · rn TP.UE •
}
Funk ·a ł'oOd ri:>r zem :.i wywotrwana. je t pe, odt,i..·or~1,;niu urzącv.en ia. JeJ 7.adanit:m Jest
pono,wnc utworzcrut: bu OtJ w1erzuholków. który 70Stał utracon , w c::1.asir.; 1 kitd)' utros
ccmo unąth:~nie. Dla prawdzenia ty..:h funkcji można uryć pdnocicr.ulowcgo ur~nia.,
po c • m _p17, a.~czyc i.; cfo mnl.!j aplika 1L a na tępn ie przelączyt ie; 7 powll'ul(..'m :
1:Ap l ..:~J1" e-r-zCJ 1k Po(Jo --.urs:~n ,
{
~ prtmvl: ,.
~Ja
Podsumowanie
Celem tego rozd1,ału
byto ,., }jaśnienie podstawowych zasad twot?.enia i zaną.d.zania
wierzcho~kam1. Picrn•szy przyklad Jesl niezb}1 ciek~, y. ale jcżch m>zumicmy kod oraz
pewne zagadnienia ~• Lązani: 1 wydaJności~. to zdoD1r-dz1c=my s.olLdnc podsta\\.')' da zro-
zumien1a kolcJnyeh rozdz, ałc.,v. . Spróbujm; podsumował naj waznicJsze plll'lkty:
t Wicr2chołck rr'I07.na zdcfinicw, ac jł1kL1 punkl w pr,.e-suzc:ni. który sfu~) jako
,Jdoc~k.... do rcndt:rowania punktó,, . hmi ora:1 powicuchni.
• Fonnaty wierzcholkó\\. definiują ich 3trybuty.
Co to są transformacje?
Aby dobr2e uozumaoc , w jaki . posób Y.rykor?.Y t:1.ć Lrnn form::icje ~ c~ie r~ ienia
grafiki 3D, r'OZ\vatffly nash;pującą s)1u.t1 -ji;. \Vyobr&im„ obie. ~c znaJd'u~emy 1ę w we
c:.J.........
... •
,,,.,,u mut.steczku • • I KaruzeI1a n1a k· ztah I cui;."(_Hnctn
I fotog,__rafuJcrny ki.-Jruze ę. . " nie m:i ! kte.
pewną pozycję i orientację w przestrL,eni. · y tel mamy p~wn~ _po_zyc~'t w ~rzcs~nt
(na ziemi). Kolii ~a ·ja pomiędzy pozycją karuzeli. a naszą pozycJą I onentacJą ,o ~~la.
Clfll6 • • ~JNl!!,.._~~o~wa~---=lle:,_______________
bry~ę re11di.:-rowaną dwct raz, w dwóch roŻI1_>ch pozyc,;jach ura/. ii.:runl-.::i h. Pod\~ ~ ~
d:myth o bryi~ gi:nmdryczneJ pr.tcsyhmych tiu karty, 1dcn jc~t tll t lko jćdr.:n rnooel
R)'AU11ek 9 .1.
D»a • -g..:.·ntplor:::e
pr::t.·Awdłoo11t;J
bnh
gC!O fl'1('1Il'(7'11ej
-
rr•sf611nacje widoku1
i transformacji widoku
bociaż maciew...e {\\ 1aca 1 \\ 1doku są pojęcio,"'O róznc. 10 Jctfoak ,sa oni.:: takiiz saTM mc-
:hanicznie. eo oznaci-a. że dla obu prn.::ks;.r.1ak~11 sposób t\\or;cni::,i m~cierz.y lr3:nSfol"m3cji
JCSl ~aki sam. Z~t)dt11t: z Ly,n. c('I nap1satcm \\ rol'<t,iale 3.. m:3 ic,,c 'Pf""'eksztalceń są
~?n_on~ zgodnie· 7 pt:\\ nym fom1;::1Lc:m. r.i potączon} 1:fck1 ich dzialani. motna uzyskać
dlztękm mno?.cniu po:s✓tz~gólnych rnacLt.:I7y pr1c1 "1eb1c. 'A•' t~ m nn..dz;alc opov.1iem. jaki
\\1'~' mają wspoInn1aue macierze na bł) ly gc-omc:tryczni:. W koleJD)'Ch pr,),lcladach
omówi~ srm oby manipulo\, :JnWi 1n:1clcrzą swi;;1ta " c4.!h.1 pr1csuw~niii'l. bryi gcometryc.z-
n,)'ch l!l8 s.oonie-, aft:- Ptlrr11iętt~my o tym, że te ~ami.: lnał::mitt dotyczą pr1.es.mvania ~::unery
za pomocą macier✓.y \\/tdoku
RJ't"'"91c 9,311
Ef.ekl)• pro~v:lr
p,-;:d,~/~'-Jł
....
Fłrtllfićk 9.4.
Efel«y '
pr.tlc..i~¾lkc.11
.,
uy1 "-')'Ś«Jdko"·aoy bł . . ~ u •
.....łi..r. _ . • • _ •• ·d n~n s,~ to wyd w~fo. :1 rysunku 9.S poka.til.Jllo fi~. tt.orc,
r'IĄlll.p;. nie m3JdUJC r" w ......,.. ■k. . ••, . _ J .
[ . . ~ ~za.ffl.u W41IILIU wspólrą-dnych. 1; a swlu c1:i. i'.A-«2c t'M\110l'i-a!Dl
is men iu wbudow lleJ me · . . ·J 'J .,......
m ·•ach na1 ,1.r.., et~~~ P?'=~UftL'tC19• Z tego P.(>11 odu ,i,.·1.: ,i.;s tldch transkt-
,, e~, Uwzg_lęd111 JC,J 1 ~filii! p""",1,,~ cl ' . . •
u · 'kamy efl!kt okn mni . j'I, _ • •,..,.,clUi) ~wo._ J 11 zast0$UJL"ffl)1' m::u;aea
_ .
odfi:ul~j od . pą bł „ panu:wa2 osie ~bracaJą się• •le iguro znajduJe -•~ v. :sttiJ
c ł, ro em ten mo:ma b · -•n
układ.u \ pńłn dnych. od . Y rozw,ą:r.at, p~esuwając model d ~~·
unjęcia i wtedu m... 1-i....~
:J
°' atoby 10 \ ' rzemwaą1 ,; •budoWńn~j m::.ciet'Z)' pl"ZC"
..,ig i..,,, ruy zas~oSOVl.' ć ob ó O .
~'rllO'W'anm w takich S}'t • . h . r ,_ CZ}'Wl Ir.?' n.aJpros.tsz po.
u Jat" J l upeWlfli nie ~ię. "te rtmddc q," . rodko"'łll'
Rozdzlat9. • ~ ~
-
Rss•rrtk 9.1. •.Z
F;gv,a prztstimct.a
M'fh)Stnfłll
do poc:ąlh ukKlih•
v,-q,i,lr:4.."tflJ)v:h
Popr;;edmc u,,1Jagi odnooz.1 s{ę t~e do s.kailm\·an~a. Je:h:li opcm.cja skalourani11 pr,,;cpro-
·w sdzana j esl jako o ·tatnia w ekwi.:ncji opera ej i 11.'Wl.t:ien.o,,o/cb, do•')'CZ)' oua iwylt\tmir
fig.iny. Jeżeli natomiasl macterz skalow·anwa j,est za&tosm am.a gdz.ies po ctrodi.e;, w ~ u
op~mcjL „vówczas do1ycz;>1 Lrtcr1~ font11acji, 'kcóryclni mmcier.:re są_ kolejnym~ w sekv.·tncji
po macierzy skalowania.
11 ·lę. że pow i działem JU.ż , ~7.)"Smli:o o 2flac-xe111iu kokjTiości ~•y'kony,; ~nia o~u1łait Klu.•
c:zem do :m)7.llmi ·n u, efektów prz,ekszutk~ń. j e mwi1.ua.Hzacja efuktóv.· działania każdego
„
z kroków na uklac.l spó! rZ,ędn:>·ch C'lr:1.z kh wp~,~u na da.l!.U boki. Pi:-1.:ekm.atciznia
\Vpływa;ą na le), w Jaki s:posbb obiekty i obscn"a,:ony pnesuwajt\ if; v.' świecie. \V następ,
nej kolcjnośd omowimy li'ZUty. ·urn: ruwniet są op~ 1;111e. za p,omru;ą macierzy. ale nie
polegaj na prz~un tt;:c1:1ch i ohrntach.
Rzuty
Rzuty {ang. pi·oJr..'4.. 1ii-m mm.~fmw'1lrtm) l(i pra,:,.,·dt~poclolmie_n;,,ij~iej ·kompki~~ane
prL k.'i'l.1afcem~ dL I w~zu::i11 ,..acj, h1;;1.c.lCj n•z. w pr.r.Yf?•adku m_:1c1cr'o/ S:""hllta. ~ey te wrd?~
które kodują pcv. cji.: 1nbroty, rnacicn. t'l.Ulu koduJC \"łł.aś.c1,1--o c1 ~L~lJa~ne:J ,kami!:':'- V la--
ściYtoś.ci te 1,1wrzą ostrosłup wuiz,cpia. -1óry okrclla p,rus.tr2en ""dzLaln~ dl 3 k. .3inery.
Os.tros.łup 1c11 pokanmt) na rysunku 9 .6.
Rysune:~ '9.6.
Ou,wfup ł'.Wunia
lłysUnek 9. 7.
· ;. T;JJUI 9J
pr:e=. d,,;o
" 1(hi/uw
~ .. o/irf il)'M) .
Bibli ek:J DJDX mwtcrn I OróM}'th funkcji do tl nenia m..:ci..:r.ry zulu I cnie;Ją,
Jcwo :tn~ i pr:mos :1oc dl.a każ •g._, :z pai,: iu ,ypóv. m. i;1~r1:y „ i:-turu:k -kn:ru
~t.a. c,i dod!ltni kti:runr;k Z Je: l zwrÓCOl1) " 1mm; 0bs~rn .n tr•r.1. c I.~ le-1 P ?Vi c,;
o~erwa.100 f:' ie\\ 31. w Otret:tX ,.i. yko~Lyv. f'J~ Jl.'"'t ukbd 1i..~\lo \ S ·r: 1JI) r.....z \\'
od obi:;i:~.n.10 ), s.ł..onocnLruJ • :,;.i~ na pi~ tu L •pach k;-\\ os ·r ·rn) eh. któri.: ~ta
w 1akli 9.1
funkcj [ llńlOO',[\\i ~il ht WC: ~·orz nic JUII ri;rl) n:utm, . Dl:l pr, ' ·tadó,, I., gta .' ;o
:i n.1JUI},· '". ·or-LyStuJ limnkc; · ......,o r..a r 1 ,.~,.,
A •~Fo , , i:x,iw,:w:i7. JCJ paramL"łlj nJJb&-
dzitj ...........,,.~Jti.g-1 ill1'I ogii do ~·ty. W p~ •kraihch 2D "Yki..)17)~tuJ-. OJ.::~ •ti
~ · et:lu. 'lldr:1non:.tro~ a w. 1.a_lct L.a$t41S4'lv.1an i rn ·1cr.1y rzu1u njt: u,, ;,gł t;tlńi:ij ·. i..11 •
s kry...,y.
r$~-C • 0'4
• FLOAT As
ZO.~leJ)
OC s
.- zero • , si:t osc.
F • T lO-!leJ)
Po u· ta\\ ie nwu 1111acicrzy pr.zi.:ksztakcn u~• w 1amy tran ·formncję. poprzez \\ 1~•ołan i~
f1.lllkcj1 Se T·an" form:
lfł(~T m, · 300E"l'lCI:! SE Tri! s onn(D': TR/l FOR IAT(NPE 5 an. C ' S D";" ' TRlX
•i'l'.ac1erz •
PicN"zy parametr okr ]a trans ormacJę. kt rą nale~ u cawić. Poniższy kod p~razujc.
w jaki SJJO$ b ustawić Erzy prleksztalcem , które om rwi liśmy do tej por)•:
_ rz 1'len eooo Se rtans o cDJO.TS_PRU.JfCTI ', . _K r ·:zRzut, •
_i,,1Jrza >Se1Transronn(O~ T5_ I ~-
lenie()30 ie ZW dQ·u).
_ lodlen1e03 r>Se Trans10 (~TS_ .LO. c·e !Sx atol,
nn u:-h ustowieniu maJą on
~...,.111., t!'. •
I !, .ua;;oJ.OJ1T13.tj e te fY\OŻl'l8 US
•
\ \ 'J rk ·-•· r-'U.._
.7.ęst0 jl;ff>
f'Mlll...,...,..i:.....
V•1.,
ate r·
~ pływ n ,. ,•:;zystkil: r..::nderowam: .;lt:rn.enC}'
SIi
P!zypu.ćmy. re"""">" pozy<Ję, on,nta ,j "'3lku na mo~ omz /,; '-Damy 11!''-}"Ję •ioł
w to un'-.11 do LRlJ..'IJ, a l.:dcte pc3l}'4.j • haf,, to.sunku do \\'lt:.I) . 7..amma hvyl~r.a ·
llłfl ic:rz-y dJa ka.i.deso obie km, m1 •\.-pnie .:rapisy\\ a.ni a każd.:J .1, n rch. QN}Żerny „
1".!)'SI:I sio i rend rori.\ac sfnte · li ..:dług na h;pująt:c."go schcm tu~
L tworzy · imerte1s '>'losu 1. porn --,ą un~CJł J3D:<C.- t a r1 cS ac .
Z~ \Vyhcry ma je z dla ?07.}'CJJ seall1J i odłoryć ją na ·to
3~U ta,WJĆ wierz.ehoft.-k losu ja o bi~;-4cą rrnn formac ·r; św~::i•a. i rendero,,: _kadłub.
4. dło11 c n:i sco rdnr;wn..i tron fum11t{'j~ dla wJcl}
5. fawif u·i=cholek loou jaku bic,.ącą ll'ansformacj~ Sw1,1ta i reodcm1<·ać ,.;~
8. Odlot ·ć na ros reł:uywnił trnnsfom, ej· dra piet\\.' 1.~j Jutt
U 1aw;t
7, PJern Wis.,,,cholck rosujoko hicz· rq tr.
'i2t tuf-:.
nsfum,aeą "' inu ir ndero-.-.ć
s,ę 1JaJJsfunn„j1
8
Zdj \t_
- dJa 111aC1e1z ""stosu. cu
1eJy. powud,yc, ,e na s,cz,·cic
~ znajdL1"
Widok ekranu
W'idc.d::i ekranu ang, vi wporl) nic mają '~'P~"''ll na maderze przekształceń. ałc war10
o nicłl '!,\rspomnie c. w tym morn ·nr: te. Po \.\')'konaniu trzech kroków zv.•iązanych z prz "-
krna_tcemami. ur-.ządz.enic musi określić sposób odwzorowanra. daG.ychl na rL,ecz,wis.te
pik.sele na ekr'dn,e. Aby uh1t,·vić \,\'Ykonanie tej 'CZi'lll'llości, d:mniuje:my ,._,.,;dok ekranu.
W no.rma lnych ww-ut1kach ~idok ekranu jest definiowany przez rrrzmiar ókńa w przy-
p:id.ku ~plikacji w oMJie oraz przez rozdzielczoś ekranu w przypadku Bplikacji pe1:no-
ekrnnm ej. Często ni· mus1m)' w1~ jawnil! usrawiac jego paramcu-6"' W Dim- ·tX ismieje
jr.:dn:ak mothwo~ć ustawicniH CZ\: ·ci ckr-.-nu jako widoku ekranu. Może 10. it: przydać
w ewie re11dcrowariia wie~u w1do 'O" w mym '(llrn}'m oknie l□b ido uzy ·ki~ania ~nnycb
efckCÓ'li • takich Jak np. c-clc,wnik naJpera \V przykładowej aplikai::j~ dla łego ro1.d2iaJu
utv,•ol"Z)'In ·, iele w1dok6"'-' ekranu. ab • zaprezenEo"vać roint:=" tr3nsfom.13cjr.:.
J~ tg dobry pomysł . ptm1eważ wirJ1.Jk ekranu powinno ię us1.a,viac r,onownic ",. czasit:
rencfer,owania. flodobnLI.! Jak \\- przypadku Ltans:fonnacji. b1cźocy ,,,ido'k ekranu odthia~
luje na rnndcring du c,.a~u„ aż zo tmrn: ustawi ri„ na i1J1 ną wmo~- Jeż.cli me ustawirn~·
\,id.oku ~kranu. rnny fragm~ń\ kodu molt przyj c 7..ałoźc i:i, kló~ ok:11ą l't nieprawi~
dicwe. !Po z,apis.aniu k.clp~1 w~doku ekranu, mo:>.11a tL-1 ·~,,.,.~ć :no widok ekrami1, 2a po-
mocą funk.ej i Set\' e-.-, Po
ESUl ren ect.300e ,•1cu Se 1 1e,.,..Po·· (OJO ,3 {POR.TB +.,&.· , [ f,!r'ILI).
funkcja ta d.:·finiuje nowąc:łĄ; ć okn., d t..:j chwih odbywa si~ w nicj_rysov.~_ic. Jeże1i
new,,, WEdQk ekr. .mu in Jduje i'i poza granic mi ur~ądzcnin.. wy, ~lam~ r~nk ·J• Set V1e
1
"' ort zak, ńczy się ni~powmb:eniem. \\fażni! mnf~acją do iapa~rm:too1a J~• to. źr: prO-
porcje wymiaró" widoku ekr.m.a powinny odpown11d · pr-op 11:JOm "'V!i'kort:) -~""'rrn~m
w m it!r.ey rzutu lub oowrotnir.?). Jeżeh tnk t1ir.s jesl biekt mou ,,, g1ąd,1 na m1~
ks:t1.akmt)'-
łączymy to raze111
My Ję. te n.njlep5,Z)'ITI sposobem na zilusttowanac poj~ć 7.d.cfin~owanych w t)lnJ ~
jest zademonstrowanie ech w pmkt!oe. Przykładowa aph~acJ_a ~re-lenlo~a11a ..,
rozdzjaJe został.a urwormna na bazu: kodu z popr7edn1ego rozdz~ału~ s1o~Jąc ~
n111cje do prosmych okr.ęsó-w . .Ponięwat d~ ~Z\"ŚĆ kodu p ó \ ~ s,~. ,omówi; t}'r.ko
materiał. n tomi st f1'łl pł~ic CD znajduje Ję komplelny kod iródłowy. 'IOitt
3574 apribcja renderuje c~ell'}' rome widok.i tcg~ sam~-go bufb"': wi,e~choikóv,, ~
każdego wrdoku to .ujemy inną ~ra~sformacJ ~mta. ~o po~3ZUJC ~fekty kolejnoiQ
dzi3łtH]ia. Zanim p:rzeJdę do om_!'~ruu_a kodu ••naPcey pam 1.ęta~.• ~ poniŻ$ey kOd •o-.
dwie wie~chotek ~óry· fO(fo\'-'~J. Jdli chodzi o wyk:orzystan1 mmsfonrnac:ji. Za
t.-ksperymi:ntowanie z poka2:mym kodt!m , zmjan kolejn ·ci dztaJań lub dodawanie
wycli operncji. Po omówieniu kodu zru;ugeruj · wykona.nie killku ćwiczeń. ri.
Jak Z\\'}'kłe pT'L>l-'1lnruizujmy plik I'lagiówkowy dla PłlSZej nowtj klasy Aplikacja~
c;łas.s ·..;.pl1'ac;J1Przeksztaic Pvb 1 • l1kc-CJl te!:
{
pv ł1c
Poni~ej zn~jd~j. się ~lówek Jcdyn:j nowej fiunk~ji. Funkcja ta jest '-'-')'Woł)•"·ana Jl?.
fartu: aphkacJm~ w c-elu zd;fi nmwama ~?wego _ zbioru widok()w ekranu. w· pełnym :
dz.re fródlowym ll'Zeb.a takze u"rzględmc ftmkcJ~ RenoeruJ, PoC'dt1,'\~rzan1u iq,.• a !aa:
poh1 dfa nasze~o tare 1 0 bu fota \ ierzc:_fmlków;
•Old .fllCJUj ld 1E, r~n {).
Poni~ze ~]a są ~asqmr ~11cil!r.atmi pr.lcks7take1i dla trt:t.'Ch głó\\ nsch mraosfo
Macit:rz \\ ~d~ku JCSI u taw,ana raz. na sam.:vm pocrstlła, ap IrkacJi. natomi t l'n3fflfl:
J'"TulU oraz wmta są U.'\f8\\'ianc 2a Wd ramką:
0.:,0~TR.X - c1~r2Sw1~ d.
D:m~T IX m_Mac1erz,.,1 • u.
OJOXHMP.f _ ac1en!ł.2u _
ł obrót,
e ,,,r
1r'lf' O"' .. _PROS . j ERZOI cOOO '-'f X'tl DlOf"~F Ol Ff USU
str PROSTY}UEtłlCIO.EK - -
(
Io.li • Y~ 2::
ffiD kolo .
Do tej pory nie omawfa1lem stanów re,1derov.·onia, le dla potrzi.:b tcJ 3p!ikacJi v.rylą~
oświetlenie. iPowockrn 1.akii;go działania jest fakt że wierzchołki przechodzą przez po-
tok. lmlSfonnacj i oraz 0$Widlcnia. Je~.el ~ nie \\,Ylą.c-:r.ym O:łiwictle11i~ ws.r.ys1ko będzre
aame (ponif'\vaJ: nie będzie św1a1ła) m nic nie zobaczyniy:
r._ Urz~dzen1eOJD-~SetRenderState<OJORS_ J ~TlNG, ~~Sł~.
Os1at11ią nową f".lecZą jest z3imcjo\vru1 ie 11owych widokó,,.• ek~?~· ,~ -~vykoo ~•.runy
do reoderowiłnia róY-.nego widoku wier■zcbolków. Cal}' kod mrcJalLzac:JL ~urora w~e:~-
cholków jest 1aki 1:U n Jak w poprl~tl ntm rozd:zia le. pt01J11 rtyrn. le nowe '" ·,erz:chołki me
:?J.ai\c\'ieraj ą pola RHVrl;
Jmc uj lC!Ok.iEkr"-il: :.I().
retu n UtMOrl6uforl-: 1e ~zct,o1•.O.
}
:a._IPUM\Y
. pobieram)'
. . .d k kr by poznać
bLeżący w~ o e :ml,_u. l3
jc~o W}'1Jil'l1iUY. K,.udy z naszych
'd,..•·n ekrmm .Poniiszy kod po pros.--tn
#
ra Gł u„n:;'l•i'ldo E r nu:
UO
took{kra11..1):
d E•.f'i! PO d h •
r• l(Nr.;J
ra p 14'.! do E~, 31).iPO ~,gttt •
r,1r: •E a" He-;gti• I 2.
ta
ran~ Y
SOP Y • O:
PO . • O.
ra .X
- •16:J .E rj m„ 11e1g t I 2,
__.,.,.,..,do ·Ek r t)I'; ld / 2.
;ue , zap3mL , :k limit w półrzędne-j ~ a.fa ka.tdcga z. ;vidok6w clcranu wana ~O{
o►o do 1,0. Wy[l i}m to stąd. że bu or gł-;l}j :;,.osEa.l 2aonnal1ZO, an. do wartości ,_o ber
,vąl~du 00 odtegtość. j11ką u m,i imy d.lla da k;r.eg,o planu. Z os.L~oslupa wi~tnja Di
kaźdcgo. _ i1.loku i;kranu można ~d.:finio , własny 7-@k rt.~ st't.b1, ale w tym li
ust111wiam_ k dy z men
na pełen Jl$kK~- Po skonfiguro'II amu ""Ldoków ckmnu apl
rozpoczyna. rend rowanie·
.1>1c! ~likac 1Przf!t~.rtalc Reooe JO
t
Pónmcwaf jc-1 to apl ikncja dzialajqca w o'k nie. ufyl ~o,•rnik mole 2.111 icnić nxzmiar
na nowe proporcje. Pomts:r.y ·od po-.,.·oduje pobr-.u11it: prostok ąla 1e-.nla 11a11 w
r..r.ystanir; go do t1t-w,or.1.cnr11 nmcicrzy rzutu 2 '"''I c1,,,'lll1 proporejam~. '11\f'OCffl)' •
uwag n 10, l !k~• poi v.•1dzeaiil został "'}mony w rada nach. Jest to bard.7__.o""
pmiicważj~lel~ •~ pomyl im , i "'r_:.rraziffly go w ,opm3cll, 1n.1CJc r,: rzulu będzie li"MWf:
ni,;pn,e~ i.dziane ,1;ynikL:
,ECT I
li~ C tQi·naL
.,, ,er P! J 4
Pro 1)
c! p op),
.. .
_ rzi1Cll1;· e030~:-Se i1 1s o COO.OlS_P.RDJtC'· [ N.
- 0301 I :flORT8 l ownyW1 (JOł;(~raAU:
'fltil"lcH1M' 1e000->Get l ~ " ( 1 '.M1dok k.rorJ.J):
Oto kulej nł:. stosunkcm„o pro: pr.1d.:s.zt łccn ic. Tc.-.u: najpterw następuje pr~~~nięcie
le
obiektu, a później Je o obrót. JeSJ.eze rsz 1.wróćmy uwag· nu kolcJno Ć m□ożenLa.
t1r1atl1.emeo~ =-Sl:!tYI ...~rte 1do f.• a1 f1)0).
-Hdc1erl~ ,ata - ~cierzQbrotul· c1erzP zesun e,:J~.
: rt:~dlemeoJO -·SetT dnstorm(03DTS_ LO. _l"w!c,er!~; ~ ~:ERl
_ r2,w1.ef11~ 'l' :.Q•·~11Pr1m1t1 e(OlDPT_POlN 1ST. O, L -
Zalecane ćwiczenia
Przykłada\\ pfikacja zaprei-tntoW3Ra w I rm rowziuł • do~tarcza .solidn ·.:~
do a rumieni e da6 ró.tn1 h 1ransform cji. Za\ ~Te jedna n\ozn nob1t
Pooitcj zapropono '31\0 il ćwiczcti, ó i: możemy '"'Ypróbov, ać:
l. SIB~ i my lr.lfl fonbn "J' ,.doku 2nmi ~1 tra formacji świata.\\' przyp _ ru
ostycb brotów wokół i Z \\ in i my ury k ć ni mal ~en sam efi .' . • ,
~ przyp· u 11.lit wicni trn nsfonn cji śu. i11ta. pQd wani nkiem. ż u • wił 11\)
• unsform ej~ "i111 n rn. ti1.:r~ p 2c ·;n ł ~ i u,, •
i wcgo.
- 2. Etsperymcn~rm. __i ~ómymi wartośei~i ~la FOV dla macia-ey perspektywy.
SIi
ri.,toxem w. prJbow. wJcle u.rnbin11cJi Wiiżne j,;gt aby kflritz.:: c 1ekru.r~ ~g-0 rozdziruu,
dobrze TrOZ\Ullti.:c,jak ró.aa~ lnin~fo:nnacjt: wpływają na ostahxm. '''Y"i · nn łkanie.
Podsumowanie
Wykorzystani 1; tmm„form ej i J3Ji.: h'1 rdzo duzi.: mu:Hiwo ci, je~• ni i:z~~]e przyd tnc
i czasan, i my łące. Jak 1'\ kic: pe 1 rlDl)' kilku nilJ i\ aim~Ji h z pdn i .:n.:
• Do pnesuwaniil figur·na w1nualm;j ·c:c:i'1ie mo:1.n 'L,~kor,.c • Lil macir.:rzc iwi IA.
• d WIJJliH bufom
t 1'ę sa1ną figurę można w ... korz :;ta,ł; kalk
• ,. ...1 ..• ..,.
rolmiti; Yf~11: ....1K [I er . .
...
1n•ierzcholków k iM · raxv 1, .l roso\.i..'aniem ri mych pr2ek.s.rt rccn. wmta.
~
t Macierz w1d0Jru teruje poz ją i ne-nla ~I\ wirru 3lne.1 k 3111 ry.
Clflld ■ • ......,,_., NIII■•■ lit
których j~zc:r.c dokładnie ni om6,vil1śmy ~ jak np. o~ ielh:nic. Jeieli \ , pęlnt ni 11QD1~
mierny tych nem-ych poję . ni rna.rt\vmy i't, mJwrniem)' je \\' dat zych roidziałnch Kod
~entowany w 1ym rozdzfale majduje się na płycie · ·o, w katalogu Kod\Ro:dzial10.
w tym rozdziale omó,111my fl.l..Slępującc 2'J\gadnienfo:
• Zas.tosa" anie , ic:rzcholk w do t,"·orzenia powierzchni.
♦ Renderowanie powtcrzchni.
• Zas•osowan it: Iist łrojkątLJW,
ł Rcndcrowanit' z wykorzystaniem wachlarzy trójkątów.
Przekształcanie
wierzchołków w powierzchnie
• • • • ' ' 11-.,. ...,,.. Ofl'IÓ\\1ie111e „iencnoU,::Ó\\•.
W kilku O$tatnich rozdzm.lach po. w Iee-dem meco mteJ.-3. u~ . • , • ,
, , • Jedn-•· L... -ł„1e1 ,f.ożone obiekty zaJmuJą
pontewat rcpre7..cnt11Ją one pozycJe ,1,.• przestrz.em. Mi, I.N!,łw. :1
........ ~ ··•
........
najczęściej są
.. .
wiele pozyCJI w przes~m I
mwnęttme powterzchn1c. Te
w:z!:.
·lice 30 one reprw.cntowane
trme powiuzchnie są :tJkZwyczaj ,epre
'eh p<>wic:rzcbni mo,żna zaslosować zbiór
przez trójkąty. W P ~ ~rzc~ odpowiednią dokładnościSv Kiedy ln6\\ri uuraru
11
K-'Ń."'r:Cht1/Jtów
dla pow~er.u:hnr
Okazuje sih fe nie jesl co :zbyt pros.te. Ptzykladow-o, jeidi twQrzym}f model walca, boli
tego walca muszą składa. · si, 7.:e zbioftl płaskich powie1?.Chlllm. Jeże-li za.stosujemy ?b,t
mało ty,cłt powierzcttmi. \V8Jec będzie 2byt kanciasty i będą widoczne kraw'idzi~- Jeżd
PW111•htl 10. • Oil wlwholMw do... UT
AJIIIMIC10~2.
~•t.{~,,, Jiicrc:
2
~~~
1 3 6
Zv.'IÓĆmy m1,ag\: nil to. ;>-~ lic:rba prym1t~ w6w o ·rc~lunu. 2. JM)moc-ą trzccie~o p~mi:lru
, ,1skazlllj L" lic:zbię nary suwany h 1.-ój!kątÓ'-\ f:! ). ~L nii.: Ii1:zbę "')'lOil}'Sffll'l}'Ch Wtel:"2.C~ol~
Mw (ó,). Jest to n jpn,~lo;zy ~posóh repn:z~ntow:mra tr,ójk:\IÓ\I,\ al~ ru1 1') ~n -~ rn.2 w,dac:
~ jego najw i1rkszą wadę. V idt= r.J7}' LrCiJ kąty 1m1 cuu;leJ pow1er.rehm dud~ ' pó~ nc
'1i ifH7.clllolkij , .ale rui lis1aeh trÓJK'f\[ÓW w p,'ilnc w i~rli.:hol.ł.:i są_ !P0 wua_rz:m · wiele :~zy.
obnmny sobii.:. że n.:ndcrujcmy ··1.r.:.." c,an . Ab~ ldefi11tow~c ~71 '.1'1. _PCl~..::e~uJ~m~
~ledwie ołm~u punk ców . ~ I~ , :r.t:-"ciait:11 r!!ndcrow:my ., ,, kor.r. si . r,n.~m hst l:roJkąt6 1'
wymiąa 12 trójkąt.ów i 36 wicr2ehulków. Ozm1.c..-.a to. fe hsc~ ~róJką\6'v zim.15Xill PTZ\:
' prmtw:ananLil o _g '""i t:ll""l,d,ollków ,,rti:
do · ·eJ,· mz · tu k,on~ t-cmc · aw;:t m rynml'
· Jest • l,.ii 1. O.l
~i wa wyma(!;anych wic;r;.chołkóli 2'lt 1t,;k:-;_za •~ o 50 pr~t Lcpsz ~ ro~~·• 7. } ~
111
•P.,"SL wu:lokrotne
• · h • • "'1 - 11,ó•... ~ 1 w rz~'1:9Vli ,.,s,tosc1 mo;tem,
liW}'k rzysc n, ~ tych •afi1iyc Wlliiin«: im~ ""' \ ....., •
tak imb ić).
SIi
1 ..
.. 2 Ni·Q!-Nl•'-<11 ~
l!J'lr.u.hałlllw aniim,O
Z wr •my uw11n;,ę m1 ro, 'it: r,suJ4_c d\\•;i. uójk L • w dal z m ci~su okrMl'amy d'i11
mi[')'l\ ' pomlmO (~g.o. :«." liczba "]"-Orry~Lan 1ch 'I;\ ić"rlChotl,.;ó'!i zmnitj~·ra . l ~
do czterech. Jedna.k mechnika 1.a. ·._.sł niezbyt uz •1c:cma. pon1cw3Ż momit j~ ~
j(dfJlie do obi~ktćw ok~t: en lub figur \\' ks4:'łkrc ,,achlarz3. h01:iat można
r,0•!itać ,, chlme lrÓjkąLów do 1\"'orz,.;nrn ksz1ahó\\ prosto~1nych z:l.Z\, aaj nit
to m-o:r.wi z nie najłatwicjs1.c . B.Jrdziej oguln„ in ruz\ll,ia1...mii.:mj" · t pa~k trójką.łów..
7
1
3
1m&1nefe 1as.
,'i,x,M/.~
f'l1'ń'~lłl
~ ~.,h Jiro,.t.·, ~1
;rroj rami
:.Jq~li'o'{JIJ 'mi
jk'nrrli
,ci eb.J liil'cMd'I
w ~-1ń.riud'i ~
A• eJ Ił
~ IW'D:lC.'...,,
at:156~.
MO
zoajduj~ce si· , <C'-'.rl'Nlln bufora indek.i::o-w.eg-0. ale poza tym zakresem. powoduj ą błąd
dzi"lania runkcji. '\1 :,.aktrności od wan:ośei tych d,1,·ócb pammeU'ó u~thcnie mote
fó,i.'mlid; optym:'Hzowa.ć pne:tw~rzanie ,;i.•ieruho-lków••de w większości ptzypadk,ó w
ruoiem)' ,Qfaeś 1ć peiem zakres Wlerzcht,lków.
Kmedy.• rMpocznę- omawi:m ie kodu dał czooego do tego romzi.alu. opiszi: szczegóło„vo
iui_plemcnra ·J • ale '\'\<'f ilm m faktem~ który nalefy ~rnięrać z tego wykładu jest to. ~
i'stni~e \; ii.:]~ sposobrnv r(odcrowania b'ój \tów i z:azv.'}'Czaj najbardziej opt--ytrta.lrl.e • nieh
wymagają mJ 11imnlnej liczby wiei"7.Cholkó\ . W więkS20:k:i J>r.lypadk6"' rcode11owa.nie
(bn;rch jako iridel1i0i.,·arwych li ~ trójkątów jest dobrym rozwiązaniem i ~ nie taki sposób
jest zap.isanych ,J.riefe modeli w plikach fonnaiu w DirectX. Sp-róbujm_ opisał spos b
p()Siępowania. z plik::1mi ~\'.
Jeże] itworzymy prostą figur4t za pomocą kodu, optym:.1 l a.c ust.a,,.ticn te danych je m . ~,..~ ,e.
ale w ,vię.kszoS(.;j przypadkó\,· modele [l1,,orzy SL't za 'pomoc p~kicm do modelowania
fi§Ur 3D ~ 1. piSt1ji; w pliku Tcrn7. kiedy juz znamy pt~w f retl:d,erowama figur► przyj-
rzyjmy si~. w j aki ~ijlO~(lb mo;.in!ól 00 1}1ac dane 1. p1ików .. r oraz pozn amy rót.nc ą>O$. b
rendem, 'lł1l ia figur
Format phku .X jest -10-su11 kowo rozbudo" an>·m form11tem do zapisyn1anitł i nJomm ~i 3D.
Zdolno~ć z pisy,,.·ania plikó,v w fom1acii.; X posiada c-oraz wi~k :t.a Uczba proumnów
do modelowania grafikc 30. chociilż ~ą r6,,•pie1 t:1kie, któri: ~akiej możh,. ·ości nie ·mają..
J~"ieH program do rnodelo" illl m gra f1ki D ni~ ma możli,v ś.ci 1..apim plików rommc1 „
.X lub je.zeli dysponujemy plikiem 3D " ' innym fom1acie~ t rnoaemy skocz.)·~.te z nanędz.i
do koowcrto,\ia111a f rn1atń\\ plików. za wart eh '\\' D '. nip. con 3d .c~e. \\1 poniższym
opisi zalożon.o. i.e dilne ~ zapis.ane w pliku . ,·. Kied)· j~ż m:im) pl·i~i _w f~rm~i~ •
możemy pono\ nu: s,knr1.y. w · ? pomocy bibl ioleki D DX • " kor-~ ,sine. kilka mrcrttj ~•
i fonkcj1 shdących do \\ ykt)n~, ·,mia dziahtri 2 sintknmi,
.ajpro ISeym sposoln:rn ockzytani11 sjillki z phlru „X jr.: 1 za losO\ :a.1ic 'funkcj; O~Xlo-
- sn romX. Poniżej zaprezenlownno prototyp rej furikcji. 4 w•
beh IO. I zostały op•·ane
jej l)a'rafl'Ltby:
..... PUW. . .
~ •11 • ~ . . , .
Ma
o,rJ.(JdAl~8hFroffiX
, _ . . 10.1- l'arr#MlrJ'fanufl DJ
LPO
ie,
I Es.H •iG,ó 1a , a).
Po odc- ~iu plik'U _\" uzy ujem~ obic:kl \i.' pc~rac1 s1a~ki ~ ntcrf tj s [O -~ z
w1dl!' póJ i metod, ktorr· daj~ uzytkowmko'l.', i duic mc•i.l nvo ei 1Jrzą_dYJ11Ua~ s.1~
t<1órt" -, t)ld1 funkcji umożl i,1; r.a_rą ll7.)'sfran i I!' hc;qx,ś.rt.'"<łm~t!-o dostępu do bur.oro "". •.
ebol Ó\li i indieksó, dla si tkt. Inne nmtna w •ko zys1ac v. !.'.'cłu opl) m11l1 CJI
Ki dy rOZl[>OC'Zni~my oman ianie me h81l1Z1no" VL;'f'tl!X sh.adcr, bcd:1icm1y d ·ompo A
ie~[)' ~ postaci smrJ.u w t:lu uzy " lia pier,11.'ófnych dan) ..:h Op1.m i~m, we o •
rych metodach interfe,su ( ~o ' h Kicd~ hędzil!m~ nlÓ\\ 1c o opl) m11lizacji. omó •
funkoJc.:· fu,: • do plym li2:1cji. • ~a rru,ic koncc11tn1J~my sit; n:ł najpl'ló. bZ}'dl ~
nieD1'8.Ch n:ndt:ringu obii:któw w posta I ratld po kh 7.abdow;.miu. za pom , fur.
DJO Loa shFr.
• 1 9$ 110.
I • N ldn:cSI■-- M łlJ}!
uw•
~ indduoWi ta_blicy ,natenłlów dla P•erww~ 1any i-4. Z t e g o ~ mol I y
ka2dy :i tnatenałó~ za clemcrn dćfin1uj•y podzbiór ,1111• k1orc len IIUlerial
~ M W w1tkszo • ~l)·i;h k<ld6w konuJ ydi opcncJe nmdemwarua. siadó
w bdl.a 1 7Jl pomOC:i\ n~tud) r ił .óvb •
u
p,IJ'llmttr I r·., b I u odpo.,~ 111tlui mLL,c ·!'.Qwi ,., l.llb11C)- · 1.truil • PT.eyklado'IAi o. ~
lenie podzb1uru dl lf"I' utu O _po1i,-..1.~U.) n,.'lł)'" .... · m, w l;)slł:i,:h ~ian. które wyko--
rz) luJ pi~f\, . mutc-n ł \ tabl ,cy. \\'1 1,; '.i. \)1\\ obi.:· I e pr b1cm)' :t v.; dajnokią.
Jd h tatka m e 7. i . ~ . opl} mi.lhJ.("l\'\'3.m:.1. b-1.1fo1 111ry ILlklW nie mu , ~ J)O'SQftO'-A'UIY
~ cd,h.1 b),butów \I.: • 1m pr,Q1:µ3d~ u "" i... a.ni( m tod>' ra e powaduJc limo-
\\~ pr.ze.,,;rukr'l,\;ooi~ c:.dc~ t.~1for. ilUj' uc6', ,, celu oonalilt.ał:lfua ~1aridi "'Jkotzywj..\(:ych
"'''" n)' .u.rybul \ przyp3d u dtUyCh i11icr.; wykorry-stu~ eh n rótnyct, matmalóv.
fl\ł!I • 10 d prow dz11: do ,wy ooyv,·aJflia n ~cji " mlk1 i.a w dl.U.ć'j mb1;i:y 0:1)·-
i: n1rii',na \ LTI.'lbLC ląfej. Z te T odu. wyc".l j dobrym pomrsłm1 esl op\}'l'IU-
lllUCjti 1atki1 ;r:i pomoc.q ,.., bud " '~~·eh fon J• ptymafot.· cji ,u p :lrMkJ w ~
1y,, 11ic I i.l.nktJ r Or~,.. ~ ":t:.t: !'IW1at.!amo ą ti:go, J3ku: ~afan1 ta funkc:,a ,y,; _ onujc:
Oproc1 '". I,,; slliJUfl m , k.---n:dll)\\i . mciddC' rrncll!'IO\\'il Z3 pomocą strukt~ !
w d'g I dmi: 1~'łka am jiik ind~ ·so\\ane list [roj _tó...,;. ZB~dni1m1 y.,yd3Jnosc1.
~1('.I omó..,... !ł ·m d Iil u " 1I.! o~ r n "- i r.,rym;')'Vli ._., w takim
topniu doi " zą I P dil1'-' "'Yk fZ)Sla.ni intmej~u
dost p do plikóv.• · ltzaCJI
Problemy wydajności
~ r cym rozdimle spnmm 1~m o d u pr, bi :m:ich . ale nk
m.: t re z ni1.:b · omn rn:1 Je r pt r\'- z ~ n le
m""'°'a.lłiu J '. CJ i:j lu:7b) hółk v.. Je menie.
• 'ITI bl1cia.:n Jl fi le ~ru r ani li; h I_ •_
daJn•i:.
il: 1 • • k p k z,.'łlcm. n ·p zym <iJlCM.'lbc.::m rcnd,:ro'\\1U1l fi ur J
i,c imle s..:,\ kó\\ lub ::.u1_ h h L In SO\\'aJlC' hst) ruo,g b c
ni«o mnie-j "" dlljn He- p ,:,:tu~•" lt. 11i,n1 JC LI t:J z:e.
W'r
1111.: me mu!-i1
pr'l.t!m 'ilane _
~ Ut • 111aq,--4'
,...,.,........
Kod · low. , om ~
ych. ie 1...;l[\, m ro
I
e p0kazuJc
•od Z,llfJft'!Z
'.
c:lau t : IH:acJ Geane r
I
~ 11c
Aby mot.na b~ ło ·korzystać i oświetlcmi. oraz przek 1:t11keń, musimy v.,ykonaci wiele
mdan konfiguracyjnych dotyc~ ych 5.an'lt."g,O urządzenia. Z tego [PO~·odu wyłco~ta
m}' nową funkcej do wyzelO\,·.ania illnow urządzeni w cz.Mie odl'Wa~ia urządzenia.
Ten koo uzupc:łnia poplZ(dni ad, któ odtwanał bufo ip;.•ier.roholków:
od guruJUr za z,e,ne( ) •
Ponaz..i;ze dwie funkcje ładują i w,,kn: roj obiekt ~1a1 i. ie umie; zc7.0no ieh w mnych
funkcjach ob ługi figur, punir;,waż siatk jest hl.do" ani! do zru'".lądzanej pamięci i nic
wym g11 odmwa.:rz: nfai podczas od'twamui ia ządxenfa:
JSl a. kNJ:
43 eO:
Kolej[)~ ln} funkcje W) ofujcmy 7.3 każdym razem~ ki<.-dy ,worr.ym}r lub oe:hwru-zamy
urottf wie. _unkcje t~ ob ługują tworzenie bufo a wierzchołków oraz no ·c o bufora
mdeksó"'". a takti: wy'\vohiją funkcje N 'OrLqcx dane wi crzchołkó\,,.' :
U rzF1 , O.
l):pf 1 lJ8ufo erzchoi O ,
010 i n•szcir.,_ ~e ().
lliSlępna
funkcja inicjuj.,; oswictlcnit: Dir :-ctX wykl1r1y tnne ,\ pr.r.y ·ładzi . \ pi.;łn)l'II
kodzie rn\dłrn1. mi po tym ,,·it: 1.11 nas.t puje fo nkcja taruhu-do\\ a t.'.lkaj P t\'ii1rzan1u,
RenderuJ Itp.
od In CJtJOs~ie ie,1e ).
l'Omżej zn~Jdu.j ą się tli;ldar-acJe wsW-i1tków do bufora rn7. obiektów w postaci . iillki.
które ~dziemy n:nderm, ać. \ . k~17mk1 te -;~ 1wor7..one p .e.1. m ·tod unądz.cma. or.ll
funkcje biliJ iotdd OJOX:
lPOI CT301,[R 'BU f(RB 11i'9ufo 1c ze !Ol •
lPO(RfCJ:i:OINDf 8UFf[R8 - Su orJnde s .
LPO.Jo~ Słl _wS1a d.
ooc,:• E 1• 8 !ter il s. oi,l IJ.
lIRTAL~ -_-,ł"..Jt r1a 1s1a kl,
,abitfła 1a1 •
J
Dl ~tJ1
{
Zrnsic:z-1
• • . . J8.. Oli . . . . . . . . . - - M1
Ol'lt uttJJUrz.adzen1e().
t g e(>>
r SE.
ret~ ~t ei).
}
P-ooitszo ~ J11 lumfig;1.i1ruje 1.lf'lądz nie~ ius.tawfaj c dom;i'łlnc maeie:ra:: widoku oraz
nuna. W popr"Lt.-.dnich m~;alach macierz 117-.UI\J byta usta\ ian.il w fu~j i renderującej
Po to. oby n"'z ,t~d~ić. 7.mi_any kiz-tałtu okna. W tym ro:ubiale u tawiamy j1 tylko ra
w~~czarny 1ak:re ehmllruLCJ • danych I ang. ci,llirrg). pon~i,;aż rrójkąty lf),• paskach wyst1t·
pująn pr7: ·mian. \\rres1.eic: konfiguruj emy oś,; itth:nir::
•010 V1p1, acJ1Geo:/e r·;K'.Cnr,guruJUr~adz ,ee)
oJ:O n·•ldeflt• y(&r.; ;.,c:1erzWdou),
- -urz.adien erot>-::-Se T !lr,s ·o {DJDTS Yi
- - 1ert. 1 · u).
Funkcja PcCd l'lorzerilu teraz nie tylko ponovvnic 1,vorx fi µry, ale ~ie zeruje stany
unądzenia. poprzez wy\\'ofanic funkcji onf,g ruJUrzdcuen1-.ii. \Vymka lo I d. it od•
lworz nie U r7~d:1cma n ir.: :r~c:tio·wuje ~ Ianów pop,racdnio utv-i·or.rom.:.ga ur.ządzeom:
900t. ~ ,, 6C::JlC-«.Ce r PnedOo r.,.'Q--::-et'l i~O
(
O:
1f ł _ rr-.a1yS1.aiti:1)
{
ael te · e.er1 i! lyS•at · •
~-~teri~1,S1i!t -
, ret urn T,
terOOOA- ·Rfl~ase(}.
o,·:itr •
->Lock te
>Unl t.
~urn T'.łJ.Jf
J
~ popnednkh roz.diiił~ach p mięmlrmy ,J tym. żeby v.11oinić bufo wiencnouro~-..·-
Te~ ·nrn1simy z.:robrc Io . amo dbt bufora ~ndeksów:
~o d ~ l ~acJ ~ t Zr Slt2119ur~()
{
erlcht':l , .• .e e-iiseO:
, 1erld10ik - Ult.
ł
1 , _,,.9u rorlndek w )
' fOf'l~.scr-.-~Relea~e().
ł or lńde so.. • • L:
}
11D ~-. ~ .......
. ,n n=-ndffowanie si110ci„ u Eawimy ITIACien p~~łltal____
~m~ oddałem• joj od ko!IICI')', klOra ZlłlijduJe ~ ,_
.
Zanun Y
p,:rrsua1cc1t ~•dl• w d'!:"':.a11c~ po ro. aby m6c mllaezyt wiele nltnyc1r
uklaclu. Ró..,.,~ obr.le ~ ; . , die j,'SI naj,.•IODcjSZe; m ~ ~ . ,
W tym przykładzie ~~ p - po to• 3 "T
!<)Wa,! Z n l ~ I warto„ l:IITll
i..• • ?.obaceyt ooickt 1- n>llnydh Pttnbów ~"!i
-,
'OlG t,. :~ r uj()
(
l]fl K le.
ron:o'A JRH
O..'lOTR '1. 1~ ;
~1Kłtr 1 a"i> trhRof H -
u 1,1r;eoo-, o 1 100 or. o o. n
o J.
r i:1r. Pr".łf.sun Kie, O O . - . Of. S Of),
r i td ~ przl!Sunlec e.
e0 i:1 sf'o (D30T5_r,; O, _Hac1erzS ·iH.d),
EUSJ. O. 2J,
AA ,
lłW: lal40. • Oli Wlaaat ..._ det•
walce zewnę1J"Zn)' jest zbu~any 2 indebowanej listy tlq~lłw. która zawiera inde~
zt,iORI W1cm:holk6w ~Wilon~ dla paska lrój~tów. Dane dla obQ w11llców ~ takie same.
11~ przed IUU')'~•em ZCrWDęlm'lcgo walca dodajmiy w~~ynnilt skatnwania do
uusfbmial)' św1a1.a, co wpływa 011 dane w taki spo,ób. ie zcwn~trzny wratce slaje i~
szc'5tY i nU$zy:
OJD'XH.ł r1&• 11lgf&$ alOlol n1~. 1.51 O 51. 1. Sf} :
~c 1enS.. ~ta• ·.,l d e _ ,f zs•,,,•la ~:
-lttJriatttem ee~
>Setf a»5, r,r, · □Jl.lTS_~lO. _ el"l'Slil1 au) .
- rza.clzen1,e00..'!ł- Dr łłl ńd ędPr-1 1 we(OJOPf...TII IIJQE tST _
{). UC;reĄ_wl~.Rł
(I, LJ C?BA_POwt 2):
}
p0111 iisza funkcja jc.~t w 7..a5-ildlzi~ taka sama jak , poprzednich rozdz_iil.ku:h, J ~ill_)ilk.b:,ten
.kod~dla większej jasności dzie:H operację rworzeniia ,vierzoholków na. ki~ sekg1 ~"'roĆmy
uwag-ę [la 10. ~ metody bu fora i ndck..,bw n1c p0anc,.'bują d~tJipll do w 1er2cho~ko"':
80Cl 1 acJ1~ r· ~)'Deln·JPufo ~ e~1.chclkc)
t
1 - (l H' Zł:, 1k )
r r.
..
P0r,r;- Gl'ZICMi.l 1
ó.b ._ ~ ·
Rpunek 1Q1.8. Uld,MJ paska 1,·ojkt1fow
Całkowita liczba wykof7} ;1:an)ch wi~rmhołkoo jtst równa podwojoncj liczm powierzcbn~
pJus ch-,.a Równame tu w ·mka tad„ 2dyż kaida pro&to~t.na powicu.dmia. ,\)'fflilł!.3 dwóch
trójkt(tów. Powód doda.n ia wartości d, ·a je~ taki ~un jak w przypadku w~chlara. Pfof\, zy
U'6jką,m wymagi:I t:r7..ech wit:r,~hn1ik6w, a k.V<ly nas,,ępny ,vymaga Jednego. "'t eklery no1!'-
matne dla kaid -j powierzchni ~ ✓-Wf com; ,, tym sa.rn m 'kierunku oo ,w:lrtory Z3SlO»
SO\Jiam.e do .ak fin i wama f)O/) ej i \"'l'li:rJ'.cholkó\,. Zast,o owanie wano ·~i inu.s i eos.in.us
h OfZ}' znormal1zo\VaJl} ~cli.tor nonnalny.
l [ S + I ~) ) •
z r • 1 a - tJ. • • o5 cos( a>.
ze ( S-PASKA • l al.z·
ze ( s)~· <A • 3 a .a "' 1J z • 0 sr * s1 n( a ).
,•• v,.....
Clfl'lll•RA .........,
erztOO [Ol - -! Jl •
l, lGhOl , {0] z - -L o;
1 O.
erzcJlO t "A • ,e-rzcnol · Jl "' _ Of:
A rlcnolk(l) z . erzcr.o1k(3l ~ •
~ tttJo\ ,,(23 -
,ericholk[~] ~ - l ij •
1eocnol (Ą} l • . . O •
er1c. 1 (2) -
ich:> klSl • • l Of :
7d,ol •(5] z - !.O:
[O P. l iO (!1 ' ..
(2 er z no {3} Y •
[~ ~r?<"lltl (51 ) • O Of.
O) .n... -
21 ] •
4l J - o o·.
O) ]
J ] 'i -
~) j n • - Of,
Ol l nz •
21 ) 07..
4] , ~2 • O O.
Poniż l.)'kod two :z bufor indeks ""' dk1 mock..,owanej li t)' trójkątów. ic,m3, ~1
rr.y 1anycli indeksów jest r6,, nai lic:tbic powicrlchni po1nno1onej pn~ .dYr
Jadające się fl3 pO\\ ·e-n ltni • orni. tr-.ry wi~rzcht: lk i kl, d-41j. t:-1; ię na Ił 1 ~ Z ~
WnJlie łist trój tów moze ~\'1 ksz)·ć lie--Lbę li ic..TZcho&Ó\,·. ale rue " 'Yk rq tuJell")' •
i ~rr:,thołków nit w pr,eypa_dku paska. Ponil!waż "ti:rachołki ~ ekm ntarni P~-
ny~i ~r"l't-z P?t . zwj~ _szenie liczby ind~I< ów ni _· ma :;,byt ujem.n ~o Y.1)1}'\''U·
„
2-aJmUJ pamn„-ć . -ale 'l.8JnlóWany ob!;za, JC:SI me1+i.·1dk1 p lf wnamu ~ ~_yffl_'.ucit
!'!:
ch<Mk.imi. Pon1~ai korcr.,taimy z danych oblic2;\llych dla p ~ ~. bl1 YA!nae U1' 5 ~
j t do JlfD&te. Dla innych mode1i indek nie muszą b ~ upo ~'\dkoWfille w.~~ -
sposób. Zwróćmy uwagę. ie rozpoczyna1ny ind ~, od zera,. po11.iew□: ,, 1,vC1,e1ifl-,r,'
11D łllllłJO.•Od---lta.._da... SU
e1 D30RS UG . TRUE )
e ooo -~ - l(N . omo on>>.
Podsu1mowanie
~ I l i • ~ ...........
Poni~zc zagadnienia zo. tały pr?..ed I wiom: tyl~o w celu ogólnego przeglądu.
♦ ~ ykorzyst:rn 1e struktury D30L I GH 8.
ł Twor1.entc w1.1dc~ ku:rnnko\J.,•ych przy utyci u DJDL _G+fT6.
ł TworL~ni~ ·,, iatcl punktowych przy ui::yciu D30 1~18.
• T\'-'Or.t.eni~ ~w,:-.icd r ·1lcktoro,.-. ych prty użycm 030:l I - e.
f Konfisur0\\13.nlC OŚ\', ~e•leJHa W urz.ąd.zen~u D D.
• Dodan ie funk j1 oswi ·tlenia do aplikacji_
• Efo ly oś.w 1~llama moddi o r6inych rozdziclc1.osc1ach.
Struktura D3DLIGHT8
W rozd2:i1de 4. przedstawitem struklorę D3Dł [GHTS, d i~ki kl! ·j D1 n:c~ defin•t ~~
ś iatla, W tym :.1myn rozdziale po twiędkm uoch-t; czasu ml omówicm: poso u:"' J
rJ..4..,. .......i.,.,..• J , • · h ,u.. · - t~.• ....-711\U kolor wier.lChol~ f1--ci me ,; · pomm11l1,.m.
•vr.!i_t •'IJ'Uf~J.: u~,\'ICt1Cmłł WJ)■ 7 .,, .ilJ::\ na •'-"',___..,,........,
~ IU • --------- ,..........
~-~
Tien fr:lgment ·odu tworzy śtr\ł.kturi; Nprex_t.•1m1Jątą ·wiatio. a na..c:;1~1m1c zeruje \\i
Jł:J \\rut i. ~ 1-zerowruili: "s.zys.tkich \\,.u10SC-i struktury 78 "\."'TU " ~ Yi:s'ey
zbędnych dM1ych, k1órc mogiyby nii;kOr"f5tnii= ,, pJ ruąć na oświcr l~hLt:. Pa $M"
S1N ,tury mo~w \\'Y))C'm•c ka1.dc.: p()li: w,asnym1 ,,, a~t.:ian11 \\ prL 'P dku 11· &)
cypów Ś\\.iatd (np. ~tabrenic.: inten ywnośc1 73 pomocą,\\ iatc! kicn1nkcra ) ~
\i,af10'bei mogą powstać Ą---rO-w"' l kodzi um1 c-7.0JWlll -.\· t,m ro7.dziilfo
w:.moki dla kilku różnych typó1i ·,v,atla ·z ~ · t,...C1du bi,"1.~;t~ pmi, •tór;:cmem f.llJl.d
z roldzr.:u u 4.• Jc --z 1ym ~ zem pncs ledżmy s1>osób. " Jdk .,ud~ typ ... "'\ iaLb W) :
lUJ JlOlo slru llH}' D3DLIGHT
św.atła kierunkowe
:~.
~:t~yp,ad~
M: r · tę
1
.s~iatfo J Lbi.ale i Śk'- 1t-c1 w dól. podo nit! jak ;.~1irdl sl necznt ~
be~~ 0 •n d głtni. , Iefy 7,au11 J.btć, liC n; wnlc:: scowi o ~ ~
p 7.YJ.i\ ·• ze .:-wratlo icrunk Wt: polo.>.on je L nieskot\ ":ł'ienle dal ko i ~•;cdl
113
111w.11111tu. • ........._z~.... fllnluillwlauda-...ah SIi
)catdy punki ,r=11rUni. Nic ~rdlono równic:t ~sywnoki oraz zasicgu światła., lal
wiC,C wszysdcae punkty .są _OŚWlCllone Z tak\ sam~ mten~'UU.IJlOŚCi• W
.. ,
małko N al1,..i:IS·ł•)'C:ZDII. l'•ecz ta-AIC:
.L ' ~ •• "'"
ruu1e1śe!1e .......... znL·...
ygenerowa.na ' scena
J·~s• ()(:~'ISC-IC'
- w • r - ...._ ·
,.. PfZY!ipH::Sza ob1 tc~nu11
,
111a1c:matycmc. .onteiµC:u~ roi'!dzia.lu ~· u'IJ.ens}'WD()łć światła dla dane wierzchołka
jest pe pl'(l(Shl ro1,prośzony.m kolorem w1atb. go
ś_.1 punktowe
świarlll kie~n~o~e mają okI~~Hony ki~mnc\;. ale nir: mają pol~mi Sw,alła punkw"'·e
.są ich P;Z-cć ~~1cm 5 mwem: rnaJ~ usta~~n~ roloż_clllie~ tecz , wiatlo roz1H7...ASU'Z~niia we s.,,
\' zy il1ri h ki~~kach. Dctychc:-.as :sw1ath.;t kiaunko\lic ~ •Io porównywane- do $\vi:1tł:.i
tonccznego: Sw1atlo pu~ ,owe ~Qzna ~orównilC~ do poohodnt lub Ha,y„ gdzir: 2rbdlo
~\via1ła ®v1c:,1.ł11 WSZ}1s uk1e ot ~za.,ąoe ob1ekry. Poaihzy ~ fkł'ad pokaocujic. j ak ~ 3
usta'i\ti S\""'tiUło punktowe:
z r)'(&OS'ń 1e leme. s1:z:ro W30CIQff8l).
os•1 e::. l !Nll l:, _ - DllX.l _l'Oi ' :
os 1e 1 1e □ use r • 05},, c 1~ 1e oir•use ~ os.1et el"I eo ~St: b. l.Of.
0S1 e il!tne Pos,t Gil • 030 \'ECTORJ(0 Ot. 1 D • łJ O ).
05 ,e 1et11e R~nge 5.0.
os 1etl,e,1 e. ~ er, t, ooo - o l)f.
09„1!tleme A teru a 1onl - l 01;
wiatlo j est n · tle l koloru bi~łega ! t'll:~ jest prołożone j i:::dn~.j cdno tk~ nad pocZ1lkitm
n'kJadu w!'.półtz'tdn:yc'h i wi,,cci we wszystkich kh:runkach_ Ola wgo :11 iatła o~ tony
jest maksymalny za i'rg, k1Óry unie.m.ożliwiia o~wie-1Jccn;.; widu obic!'.k1ów znajdujących
si P"J71ł tym zasi ·g i m. Po1..:t ry,n 2 i~gicm ś,, iado puok-1.ow~ h1bnLC (zmj1.'fli~ intt:n·
SY'' rJ ośe). Om.:iv.1any wcu niej wzór okrc · ]ając}' osh1tneruc ;nlensywnokt świalla to
R.}'5Ulltk l ł . I pn: :-oSUtwiłl. j:tk rórnt: parametry 06łahi,:n1;,:i k~tują krzywą ,ntt.'B.\· ~11~i
poza zas1~gi,c;rn .·,,,iJUD. Biorąc pod U\\l!!;t; r,bliczenia nmtc-rna1yc:2.1'1ć , nale-zy zaowaLyc.
że ·"•i~tlu punktowe jes, bardl it!'j ,.ko ztowm.:•· oblic:.r.t:niovim. kicd. doda si· ~mt1.T)'
At e- "'uat c i .su ·e 1tu 1cn2.
'-IIMIIM", • 'I)
~ - 1 1 . 2.
S19W .'rwiu1ła
H.:fJ'ełtorołW!gf)
~ 'Od
~ ■ 4,.,R Jf I +a
llfMadl ••h -----..._"TS
•~
. b)'. widzimy jak wicie obliąei Jlll
le ~ r6WIIIDl8 1 ~ ć wialła rtflektorowego dla
hllJ:llC....: unim IOSllftlC ok)dłoM ~-~ J·~artość J~• ciągle '."Yko~""".'
nywan, .....,. 1· iu inlCflS>'W"'""" 1' '-I · • --., .... _ ...
,rim;cholka- Po ~b ~ warunków c,śwactłc:01 „
aas w bezan•• b•~Y
: z~1te3D•°>'Ge
. '
L czS at •l • 1.}I.J s.
- . • ... a-Odi:I _wi1tlhi nic n.a rl!'źy p .zie lej \ ·~rto t W
Pod~ k~m111 • z~ _ _1.._.-1 ..,,,.,..112jll jak ueyw t do, oJotj lit-A..., ·
0111:m ·aniai mecłHllll mo"" •crte :,nm.1ff łl'Vfl. "· · • • • • -,
KrL'ffi' iródł ~·illtł.i ~dą j1.t1 t d tępne, m1 le u<tywowa OlPw1ctl~111e. u la.wiaj
powi~crni na.n urządlt!nia:
rza 2emeOJ0.:1-4=! ~~rS m30RS_L Cł!ii , • >•
Mama row1u("ź tak USIA\\ric unądzt.-nie. łby wykorL_ ty\),,alc, wan:ost gto1Qł11 ~
tłt,n.a ot a.aj ~ - - ta1i1,•iaj~ tę wartośe ńic ~-fyw.J.my adni:go z cloSl't])ra)'t-łl :r::
1'\ ,l~Cł.fi.:
Prft'fowruti: jcs1 ustawienie ni,-.Sz ~ wartości dł11 11 utd owcZ3Jąc1;:go, gdyż symul
J"Ze'CZ)"I- ist)· ,ef~kt promir:-m ś1. ie-tł nych odbjjnjąi ych Ljię w całym otoczenmu i DS\I, i
eych po,.-,jer~łlrtie, do których u.cez tstc :h1,•iaU mogą mgd. nie dolnl-e.
ole1n1·rn krokiem je~ okn~:.lenie. ,óre aódło swjada nu-i być f ktycznic: wh1,c
1 t to pomocfic. gdy prągnicr:ny uqc nrr:któI)'Ch żr6d ~ 5,,·w1atł:1 l'y Jł.o do "'-Vll]!;lqjjJ
obr r.ów. N p :l)1fdad. j et,eli j tnie-je' ilk :;"-,·ia•d re flek toro" .. '"h, mom~ W)' . ~ •
~ nich~ dłll tórych r)" o~ ane w danym momeneu; obiek · s.ą p,oa z itsiem i \li • •
Je doprem w6, C7---3b. gdy wo 7--01\C h~q ohh:kty. ctórc są w za ię~.-u tych uódt-t
~om.aga ,o 11 ~rym:1li!o11 uiu wydajno:kt. Poni :cy kod pr>kilTUJe, jak włąc-l)i
:sl_one f~b ś,~ mtf Pu=-m eym parametrem Je-~L ie.koty fika tor H:1, t(]reg& "" ~,,,i
Jl Je powinna pntekmc."7,ać frc-xby dostwnych :hódcł w i.a.tła pomm~j s · nej 0 j t--drn. 1
--- Por. ko \czemu t_ ·h w tkich ~ków. bl7..ą~me ,,,wn:U11 y; LCrl.('hoO:.•. u~:z ~ 1a ąc
u~t:r,, iónl: p,ar.nn try om1; r \\"'Danu.\ pr7.ed~.a, 1-t,llM: w n 1mcJ,•')'ffl rn:ld7.llllc \Iii r L•
dll-tc -1. Jddi ":1111.1 ~r..m z.n ab I •~uJc sp li;"l0\'11 · l ·l. 11bhcie:ni d k nywanc
prz.cz j.:'j ip~ . ·or GP ). W pr..1:00,,.,~n~ '"'Yfl·
tlku ohhCłl1.:ril d1,.1 r.>nu.jc pr i.:r:s r ..:.f' •
P'f"lY'kfadow,r~pr:ownm je.si b.a.~o pr, 5'~1 :smcktem kLóry . ,ut do ie • peryrn mto'",a-
nia z cfL-kl mi genarow::myn11 pr:1:ez ro-żn roh.aJt.i ~,\ iacfa. W plikacji :,.a1mp1uru;nlo-
'l.\'allC ws sfkie trzy om wi n11: rodzaje wi tła„ jl-dnak 1:t.!. irul:::1 n."'łh: ·tomwi? i punk-
IO"' ~ $Jl. tutuj najbard2i~j m1.e111.::i-uj ce. Ab. moin było za.demon LfO\\ c skutki
C)J'l.\·ii.:tlcnia. zoi;ta;e, czytany ~j~d~ nc~y plilc "I. siad{:\ geom,.;lJYCi n (ang. ml! hfllc.
który :iuiw1crn pi '"C rn1,n)'ch pod;,biorńw p1ateriilłó,.i.•. K:tldy podm1ór ro prosra ptas'.tczy•
zn i rotną liczbą ierzcholków.
Rysllfl le U..4.
tQtla pliffft1o} 'ł!
fJho~lo)ąc< :ntk•
łłT)-alff'.
114
\t, am: 7.\\ •kłc: lin.ie i O gi pomagają pokazać oh zary umbra i pemir,di,a.
3.fj • ·• tłonł " ·lko wierzchołki zawrult! ,,.,. obszan:e pi'Pfu.mbro
l)'Clń1e zostaJą o ·Wie • - i:'.hld
·:ik w rzypadkll ~v.'lalł:l punkto,vcgo. a ~•a ,,,,c tego p~. ~ mo~a
!e nie Pwano tworzyć • 0S1:1ownych"' 5:\\ iatd retlckcoro\\ ych. Jczeh oświ
ni riel.ki~ ?;i3tk.i o ni!- iej rozdzidc.tości.
l..at,,\'(J motna ~uwut.) ·. ie na po~y',.szych rysunkach nJt!' pokazano podzbion.1 'VI
ów dra je nej ~iatki. J.: 1 to !'tiatka o bardlo niskji!j rozdziclt;r.CJsci. siadaj
~rcruhołki :połotolli! w cztc h narożni ·ach pła zc~zny. "ala I.! zez; .
\\' 1mU1osd,1r:żeh w~~ tk ie wit:r-J:choUci 7,najdują się- pc7a z ięg,~m ·~tb.. l • TJ
10 bJąd gdyt" 1at1 posób d.zi fa o wieli.anie wierzchof ·ow. \ 1 na..i;lępnycb ro
móv. ię technik\' o v.·ietlania pikseli, tórn poZ\\ ta uz ~k.ac lep ze reml ty w~
i.ale o 11 i kiej rozdzic czośt i.
cła ~1k - J1 e· l
ł
o.
310s e 10,
Ponł'1.S:ir ,ny flJllkcj~ ob.stu U twora'ftie. ~nd mwan1~ i ni~fo: buf. ra, iLTZCh.otk \
ktory j i:st koni~z:□, ~ w1:cu.ali2:Kji wi tel Świ-atl.u te g □ero\!,; e · k o 1..bLory
linii i funkcjonuj~ idcnr~ i j:1k lfmrory wierl~ho-11( w :;i: pop~dni~h mzd7.1ał6w,
ft! 1\1 1efll!( >:
lJ z l er'l1JC}.
- l l'I •• • !!ni C) •
Ko ne- f11nkrj1: pc-.,vnijJ ll ta" 'cniC' nrząch..-:t1ia (aby mog,to Ul ,.,,c cm, ied~nira) oraz
micjaJił..acjt; w >Z) stkicli źtódi.:I =
1
"' 1 11tła. f u'l1k ·j:a Kon 1gur J r1~d1en e j~ odd:r.u:~tt
f1.1nk.cją. ::t.órJ po7,, •ab Jl ust.1,, ,~me ur~t:ni '10 '-"")?.crowan;u. by z,nti:mć para-
_mc1ty oś" ic1tent ~ nnl t , wprowadzić zmiany " kcwbn~ fun ·ej i l n 1 c~ UJ O ,; e 1 , e:
• i.-1rprowsdz1ć ,v!a ną funkcjonalność, 11:.il '/)' pr7.e- fol'll pom:t°'lc s.Uind. rdowc: fonk-
tje-. W przypad u n~Z~J .aplik;;ł...:ji nalc7.y ~" rocu:: m\.lgl,! na fu t'l,.,c,i; r -'~. .' •.... 1•~1 dt;'.
Hby :,,orimto,. a • ii;. j 1.1ik obsłu ...~iw m; j e-st wcj~ cie ;r. kfawmłW)'. ~o~ .an1"--nti. podzh101y
modeli oraz rod7.aj i: w1ull!I.
l BOO.. Poz
1 Pr2 ).
1 E:ocl Prz ).
lrt . l
, r-':, 1
, lrtua s
Pl"'lcjcfD my tet:lZ do zmi~nnrych s, tki 2avi cz· ~ , c ~UJ • li it ._1 3 mkę i .d'lpiero poL ~
rcn«kTUji: ,, :t:}•h1kie j1.:j poozMófY dl ażdeJ ramki. ~. CC) ~hk:::ii;J• 7.R1 ~u l!'m • i., ~ s~te
1POdd>iomy. 1t:c:ł rcmJ~rnv.• n będzie tylko jedt=n ~ mch dl kcrikretm~J rmnki , Podzbiór
0~1ol1J}· p~z '(Wlk _ ezatJ odzb or jcsLtym, ·córy j -t I')' 0 1tV1iJ1y dlrulantJ r.mtkJ:
r: "'11.n a.
8~ :wtf,, 1y$1~t,.,.
~ I!
l
2
2
- K _sroi ··)
Rer•rWU. • 06wletlenlez..,....,..__.._........,.. :I.U
' ~~l ~. y . l ,
rozprosz.
J. . ~tle 00 'łr_i' lSI.W.S ERTĘX <
~k Z\\')'kJI! n Jeży u~Y,.l'lł _~. ery wszystkie- tic7.lli i i v. I(' iki po · ldnją po-pm.wm:
wartości ~ ~ 1 :. ~ 1• ~'O o,tym 'n'łpomr!i • Jde1i 2mienru ~ pvs.iadają bt~d.nł:
\\iJrtO:Wi. {iflik ~ będzai= proból r1~H1derowa-ć ~iei~mir:j ·y ~biór~ co ~1-)'Wlście
ni,1 jt$t pop ,n·nc:
J..!111 aCJ1~l!lletl ·•J\'1 l)CJl0sii11et10
(
'a
lJS1
te-r1 - o.
- ~ 1
.
- (I_
Cl t
r~ fTl La JSlt".k~().
Wcz.~nii::J otnecalem. :l" ~woli ~t~ siar.li srę ,.przemy .,, ' ' kodzie: ~ ie , zonym
w róiny h m7.dz1alach funł::cJe z hiblioecki D30X. \Vk1, nii,; C~Ii 7 po rai._pie~ ' 7~°:L'&ł
lliyta funkcja OOO~Md _r :tł .:./J L 'Q,,.r \ ,m kQnł..TCtn) n, p adku opl!ńJJtmy n:.1 m1K1r:rzy
,..,idoku, eh.ie iero" an w Jó~ kamcm umi~ ~zonu jcsL n1J góne ; z tyłu. O Jatmm
rp:atam&cm jc-t;I Iz.w. w~ktor pionu k1m'l~I)' (.-mg. up 'I-' tor któ_r)' ~ t)'ID 1)~rp.u.dk~L
itro ruty jt:st prD.!itD do óry. ·t1oże ~Ir Eo,,. •d~w ~ ' ocz_ 'Vł'1srr:~ le "' mektfi h
PrlYpędlmch ~d7..it! potrz ba uiycilł lm•ego w-dctoł pionu·
~tlL:f _
~,lJC;l, 1e,OOO->'Setlrar~ a
•
tr
• I / 6,
HPro
)(P
Sil~ t
1(!{)30-:,-Se~ r s
,.
Ponikj mrmeszc::1.on,o fi gmt.-'ftt k0<h•~ fÓ(}' pra\ d1.3 I i . J,ę'. _i mi eją ~ h źródeł Ś'I.
Vtl n zym pr,o;ykffl&ie nie jic l oni,t,"C7.nc oo :t)r ywamm.: •~J W3110. c:i. 8d}i. lłt_) .
tylko J ~L'°® źródltt Ś'\\•iatł LCC"i: w preyyrudku h, rdz1cJ zlożon,·ch Pl'Oglil'tJOlr.·
iaistnrcc pm:nch~ spra'lltrdZ(:ofa tej will1oki:
~ • l,
il/• dl~ eOJD---Ge - ,ic(l('i!,pS(~
l1Cl$. ~ ~) • .z1 ~ • t ~
~ 05t.RITiiclJ wyi.~ł>lania ·h ful\k ui. J -._ ze pl?A.-d \")l'\\.'<Man ie;m fun ej i iniej
~W1 ... lis.łro·1tm1an •ji:st oświcUr:nic: , paen, it: z_e {wiJld ru u."t wiana
j~°"
ji 'i! sK~iatb ol'.nd:aj cego:
P~bn.11: Jlllk " pop,Udnim roxd&i 11:, "'C, ot""Lony model prz~chow n ·j w
P_annęc, ~lłł:'J pac-z program. Dzii; ·i l!!ffiU potlc:1"" 1.erm1ra.ni u ~ i i ~
Ję nw,,: JĆ J'---d>•mc o, lv.•Oftóny „ręt:znjt;0 bu w wkr«holk611 . U ~c,u c ~
a,p~łlowyi. n1· m~l: •
1e::. .Pr C,
Ml
Gcl)' aylko llffildunic zos~1c_~zernw_anc. n h:zy upewnić łt, CZ)' w zylłkie lml)'
~ i . a ~ popra"'~c u~nlCJQYtlane I dup1cro "''ÓWl?zw; poD()Wime ~on;yć bufor
wic:fZChołków wmz z danymi:
80:l- 1 k1! • 0S'lli~ I PoOdt Mr. u(l
1,.1rzao1.e
Q j
l
i a ;zakońc2'emeo c~łe~ I? L1<:cs.u mdc-ży pospr~tać C: •m '° ,odo fiu~ jak w kilku
pop~;ch ro:td:7.i 111 h.
acJi 1 1 rledln ~ei • )
01 ucz""oor
1 ( ..._ ak )
{
}
t (
{
E.
A wmz d!ri..:m:,· uzyw 1]1 kl.aw1sa FJ dLl k.Ji 7.Jl~(J f)rlL-choci7~~i11 mi dzy róxn)'ffli
m lami, '\'I.' pr1. 1,,ad "'-l SL. b6,7}· h m~L n. ~r. ~IA!m prey ma.ni.a Id \1,, i za fi I 01
by' kill ~rom \\ryś.w1e1l~ml!' ki.,1'111.mil:!tu 'Ili' l"-u, ~ c- n i.rL ~~• j~t tumj td ntyfi ror
podzbioru do m mcntu prze-kr ·,~n i i losci mu<l ·h ~-as.tęprni:
UStaY.~on znowu n a.rtoŚ-t! pclC7~tk,,',,li.ą:
lk t)
{
I ._-f2)
ł
IATil)
l
V.' poo.obny posob U:t} ._,. i) ~ -. kt1w 7..1 F1. Joorr \\' l~ pnyfN!dkU pnclttcZIJffl}' }'•
:liczrue mi\dT,)' do:-;ri.cpri}m 1 ;.rbdlarni ' w1:ill Pom~ -ryf kod po" ioic:n ró,wrt-i dzi rać,
je--J.:U do wc,r1y zost;J 1c J :id· ni:: ko1tJ nc 1il1-lo 23k &jąt. że \ -artość zrrnL"ilnCJ ~ _LIG
z trua _po;pmwnil!' u~w ,onn:
.E oo,.
'
Zantm za zmcmy konlynnow ć. "'atm: j e:iC., b • prL.e'k:taJ k 11umi~al ~~~ do
las , ~iawo...,ej. z~pcwnia 40 pI3wiJlow:t O 1u~ podslO\l o'l!,}'ch komW11k31Ów.
luz ka J.
}
c· \\ t'<l ł ''P r')e~
cSH}WLtiGED.
.:dl~n, · • r ei"OOO:C •
zt)&l1.! er 1 l a))J
r ur
teraz 0,a.Jdy ~ię upc~rnić, e1.y OS\ u:lknie j-.: t włączone, p(lllt eua, podczas~
finii r okr, gó\\1' j e t ono wył c,..ane. sla\...·iam. tutaj t01J.'fJ i ·ż ..1-k tualnc żródlo ś
gdy'- mogło byt zmii;nione pc,leceniem z kl3 iatury :Vfając na u wadze wzgJ~ o,J-
maJi ~~ mtfmloby zej umit..-ścić ,,. oranie melod... ~P.tl ~ht 'r\ ' p ,d'um
om1u1ikatów b,y 'wistło było u tawiane lyiko , ·tedy. gdy zajdzie taka potneba. a
,C() lratdą kJatk . Jednak w tycll pierw z-~h preykfacia h prz~dk łttdamy czytt:ln ·
l'lad wydaj.noł.ć. ltó1N11tei w pnypadku. kiedy cyk!ic:-zn ie zm1e , iacn jest dm,._·oloy ror◄Qe!l
oi,viC'tl~nia. nakży co kl.at ę ponownie ustawić źródło ':wintla:
,'01Cl .:Apll l4CJ1 e Rena~n.iJ()
{
_ rl4l~- 1e030 >Set~· rS atern.:, UGHHNG . t.).
_ ;f,Z,ild~er.,~- ->~ Ugł, co. _s a
7
0-[ _B leluCeOs tt le 1 1Pj),
Materiał ob: ła podzbiór. któll)' w tym pr-ey_paóku OZtlat.:7..a rozdli ]C)I; ć "-')'świt ..
modelu. ale-cy okrc 'frć rodU1. marteriału i w6 czas m1ryso,,·ać pojetiyntZ)' ~~
1
Drug.im ,rodzajem '""'iild jcś1 proste śwfoUo Lef'Unkow~. OmóWjm,1 je ht'lilj tylko po co.,
:aby C,1Jy ~ byi komplcin)r, Poprzedni przyklooowy progmm byJ h:ps_zym mi~jśe:tm
n:1 . ,pcrymt.~~o- :mit: 24; • u Llltt.ł:m lticrunlu.!IW),'rn z rac.jj s1wog;onych tam mkrz,_,wio-
11yclw p<mri~r:-zchm. W pn.c:c1w1cnsl.'\,vi,c oo ni,,go., ""' tym pr-l}'kbrlnc stwo.r,r,y my pł ką
ptas1,ezy-m;. poniew submehw efekm z.rn1any inc.e11s~1"\V110.~ L ~whłlll1 zn cmie ~ -~j
jest d~ llla plm;ki~j pow icr.r.chm:
\ii e len aO
801 ~lt J10$w etł .. JntcJuJZ011raz0rwian
I ladzl!ł'łie030·>CrNte 'eirt ;,:Jw er( l
1 ,fF'AiLED( _ r S UC (
0300SAG .
E I
.
ci }))
(Fi IL(
t
Zn s2ez oorai~m eO~•,
re urn 'SE.
ł
P..ru:dstMvione wierszt kodu · 1ymi 11mymi funk j-11mi bufora wierzchołków, .
były użyWane w popr.iedn,ich romziałn h. Jedryną ró~ic.ąjest .SUttni wieJU u.w· • ·
funkcjt -~ 6 • , UD.Lej jest ""}'k«zysff\ an rutaJ do 1Li,1aii.,.1cm11 wszyslki~h ~ ··
bufom wi1:ra_1uh<Mkó'li na 2SS. Jest to s:zybki i pro~y ~pnsób na n danie\\!?\
wic.ncbołkom kotoru hi:l1c:go. Póinicj zmi~BD są &tie określają t: poło7,C'Dit~ I~
dotyQĄce koloru poo . tiłji\ bez xmian (255 ), tak wi c nic trzeba nigdy jll,,~je ~"
wartoscj koloru:
e t it'hH~rzchol k. lb F. UC™_i.lJ ERZOO. ... • s l ·-Of(:W f ';:"RZO. L· _ U Tl.)):
r t :.irr. 1lłL :
l
13.k Z4\l!. S2le ne.ld .y lf)OSp~:
1
Jeżeli 111~~·.af'lt jes sv.·1.:H1o rd1duoro<\i·e. nilłety :stworzyć rnarim rrnm•arj i, która p.rz~,.
mnie W:ieruh0Łk1 :s oika · ki runku poło~ niJJ źródło s,; iadA:
-~ ~zacE!Osw1et· .n1e - ~l~lLO ~Eflt
-
DJ.O~ ~r ·T ansluL'C unl ę,
Kiedy stot.ek cStąg.n1~ jut. polożeoie wiat~,. n:tld..1:01.·ow~ md{'"fy o Lrt. ' · .,.i ~pos
ma on b}'C pr1~sk:Jlm..•a11- 'I.\' cllu 2;0tmizowłłl11ill ccch ·",iJ1.H n~tl!c1kmr0\ tSó- \V f)'ffl
Pr.eyp:tdku zakłada sit;. zĆ u,td.;. 10sJ1IDie zoDfll20Wiln)' z pozycji ~ \\.•illt!a ,..,~ dól
do pxząd;iu uldrtdu wsp6-lf'lędnycll. Pl"A)' tokim zal~enjo to ć ~r~ jes~_po ~
~'.IlBI dłua;ośei \tlN:która po10-~ie. który obli~ ię za poliJ!jDtą koleJ~. AutkicJi z b~'bllo-
•dd. DJDX, Maj obliCZO,Jlj\ wysokość Sł~-t ?li po-i nocą tJ:ygDnOmetn l momn ob1n::zyć
174
_......... ........... ..._.,~ ~
c,ladlit~óll$7JilU~.Po-...,. _
~ ~ jedlld,Dlld)' tWOfZYĆ macicn skalowania. która. ~
~ac,~o,ci _..
..,.-aru,ści bufola ~ •
k doodpow1cdllic;h ~ :=~~,.
n J hł•N'lt,.~r:łt&l
fll\,O_ rt("'TN>IL,.} f10$1 Of\}),
{_
no:,t , I 2.0 •;
n:4' a. O ~ to :1.
t.ć ~ · j j~st po pro tu twon,· · kil a różny b kół w - _ uforo:: \I. ier:tel oł Ó\ii·. •
oa___pl=tt,awx SJ~ \ etłu k!J~~mtncgo \\ «.eySW:ua k Osami;gO ł,;nla.. Joon lłn Z_,...,_.
dt ~ o zadu· sohle ayk trudu, ·, ~ , a.ty c7,M jooni:go koła. jest potrzi:
zn nia t'-zyt~tkit 2 prze sZta)~11i mi. b6re po~ .al.:lj wrdok rotni -.. k ~ • ,z ~
~ i , •· ó . W~~ pi'Ogmmic pm?.rdopodobnic utwl;\r✓.yrny w·~ •·
tó~ 1 ~ .- ):h ~ c e l i , Z\\"laST,ezs \',.' p~:ull,--u impkmentacJ• kodu. kt · cy obna
tru.rru~,e s.v.·J rła n;fl'tkt-omv.·ego:
J~ n· -s 1e.
Jl. L
'1n • Ql, \ OJ .: );
O..x.1 tl'1 Ota . ~
030 rn , S(Ałr,c;{ n1 ~
Sie
Szi!
C('n ł
1e.OJO-
\~. el.
srra l)
•Tr.ansh .. • ·
,. -"Tl
( Po~
# t Pos
.. l
t.11
, •.,,,u-.,, r l
r )';_.. • O$t.S. O'- a,
$lt 1
lrHlZC
~u,0? _,.o nP r l
li _ ...STOl '
I
Kolejny fragmc-nc odu \~\·or-zy prosCil . fcrę< rcpti::tL;nt□ją...ą i Ur,, purtklo~-c:. p · ,::r..v5i2c:
koto jm pra do poto,crua i.rodła i.w1atbt. ~ ,ownm: o kRstt facia punk-
wcgo i eysowanr . tiępm,: "bracan~ j -~ ,c. 90 ~op-ni i n::nderow:ml" J~Lkolc.Jne 1rolo1
kwrc rwony p ·q_ sfc :
łeflll - Si. [At O_l?t! J
r· ~~~ar.sl~ A ec1_.
a IH1 O .
~ !A LO .
_ d ]6.-lO · ).
>.'Sca ,,~c\ ..
~fi
_ lo[
_ 10( ,
I e p ,,eo
C 0, tł Zt.! 5,l':. e,).
...:D t (
- ESi,1(P„ lc.l
- - O.tiCA.
- -
•
Podsunaow•n••
.. tku te„ rozdzr,n_łu, ruaj po raz pu:rv.· zy , 0slitru lln...,
J~t. stWicfd:tiJ1 my na. ~ . ., , n'"'....,,WWlmłłl ~ po~ wb do~-~~
~ •i.,•1ct1m111 .. · "' ... - t ·
fowO pd))rzdlRl'1. si'[ 41.
. li!
, , i;ksw~ć opcrJcJ• z o wrci cn,em ~ ł.11.:.:._
bibliotek.i D ~ Graplt• ~na~:« nmn ~ :sil der. Jednak poj ci m p ~ ~
, i z; 'I'"" rzy5'M1i:nl . . "' .··.- -.~
impkmClt'O~• ·.r: b1t . ~ •, do pomw113f11a ...~mre '">:gc l'«!'ił,'at:J}'cb
w t)'DI ro~łc p<>~llt'i)' · l(łl za pomoc 1imkeJi1 ktiórc są <::~~1 API Zanim
~łalb , ~ łllk'.ł SIYi mz:lłfó dobr.ce by b -~ :ii i„ ić 1rocbę emu n01 llłti-
~ m ) d~ k-Ofqn>•.eh r-0 ~ n:· otM zmianra parn.111l'1rÓw ~-ł m.ltkł J'-"tieri •
men10waruc u zmJ~/~)ł ·~zro.zumiatc-, \ .lrto sprobow zmienić \i. rtoki.~b)·
z pu11me~; :po~~~:rc . c . równic:z p:im14-:'tlc, że n ie ~rę ~ jatb 11\~
zronunicł 1 ~
t.ąda · oobrą w ~ o ł !Inru ""
· ,!I • a.:eki6~· o msluc• mzd'dełczośe1.
~.
l"'ln'lc
r-•1
~doo ·es1 ochwyn: subld ny C'.'fdrt rrółni y inteo ~'tł ':i 1atP w il>'P'. oś
nM j t}'c-h ł'f1 li. JcU:Ji IIZ)'sm-e ";7.UIt: ty n~ ~ c!"'. ~l.'-"&_0 ~ " •
~rvmm1ow . 7. iii •mi m da.1111 , b)' iortenrov.a •_i;. "J.RJ.;1 s ~ ~
.,,. f ~.,,.. -.lclu l"ir'Olll, i o pogOT57.~ni. J OSJ.:J Cli; nt(l'iA'Wl!~ Im Yi,1'i«J
rozur.1t . - - fflVU1.: r . • I · eh ·.._ ,_
ntl tym ctapi , l;}'r'n rutli\'tl!'j bę(.'łzj puj S.:1~ Zt! !Ół}' Ullp emCfl t CJ I me:"' an .r.i JN I,\,'
Tekstury od środka
Za.nim pnejdziemy do K!k.stur j ako takich, z.asli;bim)' siv.' nicklbn: po~~ •.ia, które! cy~
tekSt\Jro'"'·aoia. Aby ,,1 _pełna Lroz:umiil.~ proces 1,-.· r.t.ema tekstur n kz) do" 1ed1.1~... s,ę.
178
\'lir.u z po~:IWR'lli~ 1ę ~a\ u.i wc:rs_jj ~ir ~~ .~L~C \~- z tkim X!!nib ~\a
rzysly\\ .1rua poww-nchn1 do prz~nosRma dan)li;h bruzu wpro:;1, n ,i :kfan W
·c-1pl'7.) dJ.:.o1,1, .mw:m1c k.~i •· k r.& Ć' x zalet r u grafiki Qpisaaego v. Ili
JedJ P?\\1r:rzdm ie pozostufy pod;; WO\~ m _m1cjscen1 prr~chov.. fa dan)~ 1
z q róimc-.. ,. ..:e .!Hl one tera zw. Jtc \\ b1C'k tł'.' td.: ntr;. ktory oo.rdzirj U'lll lllflr\L··
ce ji potoku . fiJ.ij, \V przypadku k.-bltl! pojedyrH;~ dcmen obm2.u n~l34ł
~~ sl!'fumi (ang. tex J•., lri
PamN; b}'bfCffl(}l, a, fub ~,koJ. \\ k~~j prlA!'t-ł,10\\ . '\\ anc pm,, Jćfl4:hrue. ~J'i'-1.Ulla...
f} o •:tfA.:~ o o ' · oneJ -~~rokoścJ _1 ~kos.cJ. \V r7.e ,z; \ 1 •uści j to j 1
~ufor_ b:tJto\,·. ~ . ~ m po~7U _nu:nit l Jl!Slł llyślcni , :i.:e Jtczba bajtów prA\r
~c r~vrna !> ro~ i;;1 pomn~zon :., p 17.CZ W?, ~OkC!ś.ć oraz ItcLh baj t.ow na pikstl
n.c- J.... r po ·. zu~. ,.c nc.ckomecnue 1cs• 10 prawdą, ·
H)'ISIIJ1eł< l.2.1.
[}a1l,t obrcrr,
---a_... clw6Jld
w ~ kart gmficmym i implementacji OIIUI .
przy,.:;: ;;,et
~~oej pot~~ dwójki. Oznacz.a to. te tekstury mw:z.a ~ l a t y ~ do warl06ci
128 128 i tak dalej. ie omae1.a ,o wc:al~. ~ mU$Ą DA wynuu ap, hel, 16x16,
jak 12 ~ 16 są ró·wnid poprawnt. J~• wiele taki kwadratowe. Wymiary takie:
najWV'JlU:Jti'Z)'lTI po\1'0dem Jc:sm dul.a łatwość i SZ)'btość . ego stanu ~ • lecz~
czeń na wat1ok1ach ~dących pott;gą dwójki. w ~.;·..~ Jh:tką ~ I C dokonuje obli-
. - b·,.;. . - ,.. -2 --.,,c \lf-rff•",..h lllllll"Hotu --.r.
re ęgrruucze1ua
mo~ ;~ zmcsmnc. Jednak w na'bl•tsm· --....,.- ""':""'l•.. .,..._.tanego
będą ob$1ugiM 1 •clc~t11ry. których li01Jmiary są po(~gą dwl;~~lłok, karty &flfte7.ne
koro roz:ma1t ,llłDy o WZflliaroc..11 mcksru,, wano parni~ 1e . .
1 pocok grafiki. Tak wi c należ:'.,' two~ --~~ ~tę~za tekstura.. lym
'Llt i~\i dmtYi!h Z1Ji5i1
......,... J.u.. naJmmrJ~ tcl-sfilry.
™ •
(O , S · '· se, Uj ', T
n1~. T ro~ •
r.o .osc.
' .
m"-~T a
Wa.noki
. . S.m o c:i~c Q a7.· :,•'S · o>f,~c o ~wJą
• 1.... ·
wymagane wymiruv tek~1.1HJ' (nolct
~JI\J~ótać Zas cl ' pot,ęgi lic-zby dw ). P rarnr.:ar Poz, okn! i I; ~i,,., -..~.,..m1 t111n)th p.--
;irom w m1pm 111o Jeż I1 111 ""'t ., ••• ~
• F· 11 on wartosć O, uriąd~ic twor..{)' poziom t!l:ksrul}". 7$r:'
™IJ od ?Odali ;-c-h wvm. a ó (Sie Cl o c ·1 1 t ). n11 WYll'iarze l l korir;l'.a}.C'-
• 1 r w
llanW .aa. .• Wpria,, rlltnle a.,.._ 1811
P:ir..unt:U PtJl i j~~ pm:dmriotcm tye~ sa,myd_l ograoiez..::ii, ł((órc b-)·łiy 0,i--nacwannl! w :p~..
p;ldk'u t,uforów , Li:lZ.Cbołków. ~ .w1,;~ ooici p1'6ypad~ó, ,e~ry tWorLi0ru: są v.f)'ko-
m -taniem p~ętru Pul USl3WJ011t,'gi) na 030~_. -. :o~ chOciax w niektóryd1 ro ~
dŹiwl eh d.emonsllm ant: ~ "6,vnid Cele: ury z. ~rmym i wan.o§ iami te ,0 p:1:F.m1Clru.
JdeE, funkcje m•,onąca lcksru,ę mkońc;:ey s[ ptnn ·1nie~ zost.ani~ pop awnit:- utwon:ony
obiekt ~~ury. Za pomoeą kilku pól kliuy m ,·ee 30Te;;1tu es mo7nn dowiedziet ~'i
rzc:goi wi~ na te11'1ili two :ti ntj tekstu .. . Piernts.:1.ą rze „ której warto :11i: ,cło,\ · edzi.«
j~sc mfocmn-cj I.'. i fo mak nap.rawd~ llLv.·orzono puzionum . V.' ,1 1.a.rczy "'Y'"·ołat Li.mkcj(
GetLe11elCount:
.O:..ree~JOT~ ..~. Gf li.:·.1 elCOł..:1 tO.
funkcja Z'! raca poziomu\ powiei.t.thn i za,vartych w obH:kcic tek~Ur',' Kic-dr już
iło.śc
\\riadomn. ile poziomów jest d~1w:-pnych. ,~-ołl~.; si.; fumkejc; Getle' -el Oesc. 1b)r '1~$k.
mł1foooa: je ó kuzdym z nicl,.
ESllT JD1rec .xi"e ,.,!.lr 11 Gett e•,e OE-se.ml H PóLHn, D.'!OSU~FAf:E OCS-t ---...o, s>:
tru ·tura w.OS\JRFii'\CE DESt zawiera ;nrom, -ejc o '"ai.dym ~ po-1jonH'.J1,v, ;i.. oma odcxyra
mrmfary ~ d go z rn~n~czyli mfommrj~. k16ra mi pmapa aiaJduj(: ~ ńa klórym pozimni:i:.
Mci~;;s róv.mk~ ,odc:r,y1ać aktywn;.i_ po,:i. Li.;rzchnu;. ''")'wołując ,1nk.cję Ge~Sur dcel~" , ~
SI.ft. .o·ret':..W :.,,LJ e:9 Ge SJ ··!act1l v~ {Ul ?◊2.let:.
IO r'['Ct~ .. ,· .aceS. • ...,..p~•~r.tc, rrli!:}.
•
\ rrn1J1ac.1e: L.
ottzynmJi:m, -sr-;aznL„
1
,. d
,, u saITll,,!J po",·le1"ł.C~•Lm·- p,-..,
"" ~·
,'..,da.ni: dru, obr.dZu możns
,
t ~ sk0pi wtiĆ n~ powi-cr.t.chni~. \\'ysui.rcz. \1.'yw·otać Clln'kcjł L ·Rec~ nov.tieg:o ob1ekm
ttprezentująt.'lćgo powitr1..ch11 ię :
funkcja I ooo tępni .dlróv.110 pau.imcłf)' fu11ł,,c:J 1 [rP<1 ~ie tL• · • jri.k: , kil a
til1ivte-n1e s;;,..: o · ·i 1 \\ ·so o ,;i I k ury 1m wan.osc 030 . [ r fJ . T pmwi u
Ol 00 le U h\-dii"• mi, f:t rozmiaJ)• obmzl;:.a ff1>cU0Wt"cgo. Param ·t:r;• mtro,\;mQ .
w 1.uri t.po: b będzie filtrcmnmy obrouk król)' zm1cn,a m711113r, op. pod
wyw ra go do wielb,. ci tek~1ury Jub podczas butłowillU:l m1p1nap. Ji:xcli 1
jl':Sil k_lu i ka1oru, I~ ·olor 1.~11 bt;dz,~ pr.a;zroczy~ " ' .1.ał 1dowa11 ·j tC'kstunii:!. i e - - ~
) I~ '.iE._! Op0:1.wula od 7.)'ltłĆ inforrniilcj o phku · rud ł4'1w~ m n."YCit?.
odpo~ i«tnicj struk lJI)'. 1110' u ,~wić wybnultł P-1 lt:~- Pon i ·wa,,. J-Cdrni · pr~DT.1.'1l.
\\ or.cy ty,._, nc 32-bit{lwe lek tury. p.Rfilm~lr 14,: 1 p<'\\ imen być usrawióni)' Dl
lOŚC l.
F~n.kcje b,blioteła JOx 1w rx„ e,1: h: SIUI)' l'tlcg odr:_z;1 • kilk:1n ~ii: ró•1.Jl. h o
P!t 1.1,•. N~je-zy .e pąmi~c. ze iloU: pofl1i ci zajłt L~j pr:r.t.:~ tcks1urr: 1.atcl:)• ad
PJ •~ t t11ry. a nic od wi lkQści l'li iw .towe~o. 1 a pnykl dl jclt!'li j3ko
~:O~i1111 • lndow~n)' pf ik Jf E'G, s.s111 ieje du pr ~· dopod..,bień~m o. 'l. t ura
~m waia .!fi eznie \\ i-.: ej pruni~-i 11 iż ś311fi prik JPtG.
\ . półr~n td::~ur od\1r2ori.>,\.,_uj dany wi~uchote · w odpo~ u:dnie po1 l.eni1: na •~k-
~ - N1c-.1. lc:żru~ oo :ilc-roko~1 1 '"'> uko:;ci s.1tw.:j i ks"llf1i', \l'. łrz,;dnr.: polozetf n
tek turze n11c i:c- -, • m,~d.Z}• O O a 1.O 1 . ą ?ll'\'i 7.aJ oznacl.JJI. h,e \ mi u 1 23t~m
jeżdi chci:m n:uy~i.m a.t p •okąt \V)'!i n:,lajl((.1 · eu] r~ks,\tr~. muslmy u l.\:!"- 1i: Jego
wicachoUd za pomocą w J)OłP d.n' ·h l~ rury (O.O, O.O • (I.O, O.O). lO,O. 1.0). r1.O. ł .O)
gdxw pitf\.\ ~7.~ Y. TJ'"łrlt;dnc okr~~,jj lt:\.l. ~· górny róg lt:k tł.li}'. 3 O. I.ami• ~J, :d:llZUJ.J 113
pra"' ' doin róg. \\t lej sytua j i · ru.łt h:1 ~Ul)• na t.ia-J11.1c 7 kiy od ~ych wu:rLcłto1 ·ów.
ai oie od \-\ rmiar · v.· t!!ksLUT)'. " a. przykt d Jt:1:eli ceksl\Jrn. ma ',1, 1li'fll)' L•. 8x I•. , al...: w1 r1:-
chołki pr o ·ą,~ ą 1:ik rr-,zmLL" 2cz-0n~• .r.~ bcjmu1ą · I) ,;•·ran (L02.4·-:l6 ) LO ,~ksmm
j rozcirtgarut. aby pokryc cały pro. tokut. ~1ó\nąc ogólni • •~ksiuf)' ą rozcią_.~.am: 1 IIUL'lf-
polowane pcmi~""Cl'l.) współni;dn„ mi t~k lur · na ln.:c,.;b wu:rztb llach U(IJkąLlł.
1
W pólrz~nl" ti:k~lury n re s,t ogrł mc:1-en ylko d('I ,, :.u lOiiC• O.O lub I .O \\•a.noś.c; r lTILL"J-
~ niz I "skuuJą c,k ~śł ni! IX',o:t.cn i.i_ 11:1 tl!'k ·turxc Ry:-.uncl,., I ..... ~ pei "JJ:1,1J~, ~3k moi.na
przi.~ na.łc1c tC'blU ~ 7.3 p('lctU"k.:ą rótny1.·h
..... łtl1uci.4:1 \ r ')!ffl pf?) kładzie .ami:mup -lj,I • rylko
"" pólri.ędm: ld-:c;lury, pozm,rnlc- d.111c puł'.'41:,iaj-4 '':.!le.
~łc 12.3.
C.,,llł•lłi pn......,,.....,_,_..
l cyi.ko pJt.l$ c prz~ kJ: cJy. któr~ obrazują z. ~ho\\':lnie. •.~ \.\ ~oł~~yct. t
t«7. z_.aprc-zctnowan poj~I są p wd1.ił\l.'e" ri•~·mc-:ż w mn '~J •~tu1cyJnych -l'7Vlil"')J.• .1.
111
_
Jettfj 1.111ivol7.' my m „ ttój 1 1 ri łożymy na ,u~go l • sturę, h't JC-St ona w.re
'l,,MJMa..a. r 11hy mo u po caf· powit'm:łmię 1rójkąta. \'/ 11~tępnym rozd ·al,
i..
'li\'lttn_ JUl. pk me: wuj ·r~ "" pótr1:<;dni: k · tury. drnA icdznt)' si j3k um, ··
\I, fu~ic wt~ofk. rz· Z>C'.nic- opcru e IWl m11k ymahuc ~mlU rM:n eh [('.·,.....-...,.
tcłl ' m 2c tn by· dodatkowo CJ!?-alll 2.0IIC m()Jliw ·1anti e-slonc o ~~ . ~
\l..iofl powt.ei fo n l FVf definiuje: w1 -r.ix:hvłr.! · Jako posiadający Lbi r v.- ~
te ·stul) r ;f- ' . jest W} o~~ iln prl' l. JOOfl•\ lt .. turę, Ojy- - T[ pmz
i tak daleJ:
1ne CDJOf1,1F_ Z f 03UF' ,'f'_Olf E I n.'.: - ,f
z
Ft.DAT u
••zw u.• w......._... ....._
s nJC
t
J.
Tekstury i urządzeni ••
Dirm.X um iliwio ttr"lądzcniu us-tm: ie-nic do 05miu tckst\lf jednoczi::nie. da t-;·cli
h~.ksł\r.lr j !?St n:pt'w:7~ro,,, :i.na
pt"'Zez zw fi . ,e rury (ang. 10.nrr~ s-lagc). m'lfl u&v.·Lć
wiele rómycn purom :urn i stanów u&:ie-j fQx)·. oo, będzie: pokazane \I,' l'(Jh:·jnym nwłizial'e.
Ab, unąr:17.er~i mo •ro \/p" orzy 1at tek tu~. należ:)' j, przypi c odpo,., •~dnieJ razie za
poraoc,ą funkcJi Se Teir· ure:
Dla dóu· tegu rozdz1alu p:::irrarndt 1..:ksmry j c:sL 7.aws.1.:e -n ~każnLkiem do ~riti:rf.::jsu
JOlre<: 1 e ureP. ( hociaż w k<1lcJnych rozdz13J~ł ~ l:ldni:, J CS-1 podobrui m~nież
w prz)padkt.11 inn. eh rot.:m1.jc1,,ł tc-ksLur. P:lrillt'lłl?tr Fnt1 pr.cyJmujr.! \.łiartośei1 :i 7.akre:nJJ od. O
do 47_ Te- · ;ru~ usiJ11 · i.a 1ę "~ł~ą, -mić dl~ \'t:ykorzy.srywJ.nych az. Wszy tkirn pozostaa
łym razom dumy ~ln i.; prryp1~ujc si1i: ,, a.rtoś.ć : L LL. Jr;id~ •~kscurJ nie 1,ł;dne j'tlŻ v..'ii;«-j
wy ·oO'}"sty,.\ an , na le-ży ust.J.\ ic 1cks.LLl.f dl tej :17.)t n:.1 "\)i mo.sć NULL. Doo „ pmkl.
jcs1 u~wni!!Il; i-;. czy \\ Sl)'stk,c faz~ tek~n.rry· us• " 'i me ~ na. :·uu pr.1.cd zakończ "'·
nil"m ptog,~ mu, po mewa1 mk j~ Se Te.,; ,--e ~,. . LfikS7JI hcmik odwoli:ui do te'k~'llli'y
w m rni:□ctc JCJ u.'il3Wicn t1 , zmnitj sz.a len lit.~lik. gdy 1.e · tl.1nl. jl.-st usm ·iana ponov.;nic
iim w:H1oki-a. Jl"i~11 li zru · tldwoh111 me zosmn1 zmniejS.ZOO}'. b. nit: z-0 Janą Z\liOI•
nieme. Poniż iy prt:_ kt (1 Li,:monS.trUJC spo: ·ób. \V Juki n k:1. 10 obi :
. _• e s. urU).
- ft o
li
_ r2a zent·l>30- •S
/llrotn-1X1e
laknuo i kolory
\\rzuJemr:ie o d.:1ati \ an it' mr~z~ kofor· mi w1cr1..,;hołk ~"'' :i ·k rur m1 oJnÓ11i
~ stę:pnym J(lzd1.1n I ·• JL-rltlluk oddz1„ ływanie o na \\'pł)•w 1m .,_ ' . ·odu
d:1.u~u l)olł)y Jnym 1rybcnt odd.t1a~ywani p 1111 dLy k lor:111~1 w1 tlchołh..ÓW ~ ~
ltl'i\~1onyd1 r~m1e. 1 oblio.011ych w t,-a.kdi.: o. \\ I!!'li n1,i3 " ii:r.tch-nl ów j t
'-0.;1.a l ub mn\'mJ )ow m tofi::111.: l,..olorów k:tdi 1. fo;i:\ 1)n . ,.: ·nl,n n'1 1C"~c
od
\1! za_kn: iC' □.o dn 1'.o, to \V)'JllX•>W. ·oror dw\i;go pik~,.~ ptlll ljJ~ po m
koloru ~e s tJ .G ·oJor-c n ,,, it'r.zC-hol .i ,; r poprndnilh ro1.d7.1 ali!' 7.\\' uc1li.' m I w,
to, J~ na p0't\ii:~hni t:ritjk w. 1mtrpolo:w;ine było o ·wkckni • z k,tldi:go wi~
~,r;-,c,ov. o p1 la na tkrruu I>)'~~rpldkow:t p• n.al maLyi:zm:gv punktu 'łli'J
1
111c-rpo 'ił !!Mj w,mo I oloru wre :lCht;H • o.nu , .lfti. • 1 kolm u 1~ł,.,sclt1 ma,rdu·
wm.'j le tury o 111ls:.rpolo, an_ · h w:,,pńlrz -dn~ 'h. Kit.: dy it:nim\ 11Ci pó!Ni rll
4
fJQ ~od_:ti_ 1. ~b 7.llm ja ~ w ~iem n)'. n JolQna ce-k ura. Ji; -~ rńwnic:1 odpo~ ·
„ tcf"n~a . 1 •o domy.'\ .. ,.;, thow, mit.... 111 ' n st •4m •m rozdrltll z dl\11
Jak e 7ITT1i:D .Ć. .
__,,---
-erz tekstury
omawt11li!SfflY Już .ag· dn inne._ j ~ \l,)'k4)1'Z} .I) rtl3Clt:il trensti rmai.:ji . wiata do
l'nnon. d_,,1nych Cl poloh:mu ':1i:rz.c,b_ollclm„ ::ik,~ same ~ ~MUjc: s.ię w przypadku.
\\ ·~dn~h tdo Lury ~ . teJ :t: . , w,tor-q!l~amy bardm ~ pr,..c:k&,z1'.a1ci:n.a., które
n,ai ,VJ>l, ilłl ~oicme ~rn:hol~ó,.,• W ~ol(Jnych rotddllłach dowiemy si.ę~ j· można
\li/ "4,)l'Z)'·t.a • m„1 lC~ lL'l IW')' d~ .. :}(lrn ~,eb . h fektow LB.kich jak r, , tekstu-
....," .mic A rzutowani, n~ lJ.ng. !"'tJJ _,n~ 1t'Xlflrmg . om?" od'!,l,"ZOrfl'r\\111J11,; eiem (ang. /radow
r,rappri .). W p17~CI\HtruitwLC do mny_~~ ~od.,.JIJó'"' prze m.lceń, aby ua.kt)'\1-1'.lić pru-
kszrara:ni na t,ek~h•m 1:1, 011h:fy wczi:snu!J ,.po111li rm™''il' .. 0 \ •m urządzenie
program
POOU!\\'ll w widu rn1d11;1bch om:em umc są tekstury 1 ;rn I, 7.am; 1 ['l,m1 ~Jr,;c•a.. prLY:
uadm, , prn~ram z.ami -s1c 7ony ,\ 1ym fC"IZ07l:tk J("C.l sio:mn !,..owo pros\)'. R ~une= I-·-
pokazuj i: v.·y~ląd ~k anu 1,0 ut II Iłom 1.:-ni LI programu
Rywnek12.5-
[ b d:J.Oianra
pif) lg.D
~ ·"
- ~'OP't.lką-1';}'
o,t prr,sr,,mr
turd'JU
. 1 tC'go $11DCgo c:zworokąta. kudy ~ .
Apłibcja r)'!uJc _c-rJd'/ esz::~nc •ekstury. Zwni • twoa:yc ~ z•,
Nnl lub pos~da,ący rótnc unysrujc macie-n tekshlr do skałowanią IYda
~ • tekstury. ~ o : dane krz.::hołkil tawicmją wspó~ 0 - . _
~re~-- 11 prz:yt~ ~•
~ o.o do 1.0. Podcw iwon~~ia mM:ierzy s1ca1t......_~
ściach nu~:l'JtCf'C . ~-ki nowych współ~nych miCYczą St mi~ o.o a -io~
która ~b1uJe Q ~~ar1 me,od:1 "' pr.zypitdku wielokriJmcgo k tz}'!itwlia z tych ~~
2
dałeJ Jes1 ro W')'~ ~ - l - --7\li
obic-k1ów. lecz powodujt:. te kcxl'jcst ma1o c.:zytc n •
Jekli ~od wydaJC: L kom.w ni~zrazumiń:ły. mOZflfi bezpo~~ni~ ~i~ć ~~
=!n~ , w danych doay-e-~ y(ll wienchoHta, 20~cn10-w c s 1ę. ~11k1 'llife~t Pl'"l)llQsi
11 81 "pn i~ "~'oo,i ć 7. powrotc-m d~ m~cn:ny k Iowanm. 11c1cm ~ - . :
~--t::
. _,0 hem n pokazanie z:..-~~""""~m:i \Y1elu ró,nych w_~~ny~. w~
~--dnycb są za2'\V)'C'1Jllj m~~zmi<.'flnC.
:muni mi::Jo w fłlc;2DL4: cel d'emOWl uC)'JR •
łc IO 7.3ffll 'Z1H\ILC ~ · ~ E ~~
W druttim rzędzie pokil2:ano zas•oww.IJ1ic mjpm::tp. Le" dnln~ pro tekąt Je5_l ~~
r~k5ł.Ur.t wczytaną x pliku.. \\r momencie prze k lo,,·an1.i w-sp irĄ-■.d'nych przez~: '
ce-hiwy. prMtok l wypdrn ny JC pcm: uu7.ającą .!ii~ ecks.1urą, Po.111ic-wa.l kaidy poj~1lei,
obr3u je sii; mniejszy, UfZlW\.'llf w. kony tuje rru-,jcjY.c mipmapy o \ ' 1 ) ' ~
1o
KN,,l1kac 1Tet~tur():
, rt ał - D , 2c.j1Te stur(),
Propm1 ,.,.,.ykOl7.)1;,ujc: różne kolory pnc~zystnści Wt. aby łatwo można było dostnec
tek~. Jest to pjenv ;zy program. '" któirym prze:sta:nianJ jest funkcja PrzedRenden ~n, .,
dzięlci czemu mo:,Jiwe jest okrcś.lc:n~ koloru uż.ywa_m:go w aa.sie czyszczenia ekranu
jeszcze prztl.i n.•ilde-rowamcm:
a ,)ld Prl&'f?.f:llM ,ameci().
' irt
L "R(Cl3Qi ERTU... E"E _.,, 1.Jfon: r:» iCholk.
Kod umiesztLoJ~)' poniźcj pok37UJC ,,. sż;)·stldc t17.)' teksrury. Pierw za j t ut, orzona
llłłl powti.11wi~ ubrnzlrn \'\·c1.y1am.!go z pliku. Pozo tale dwie powstają poprzr;z wywohmie
podstawowych funkcj i t-...vor,.ąc. eh lek, rury. a n st1pnie ich za art.ość j~111 wypełniana
w kodzie:
_PDJRECi30 · !8 -(· sturaObraz.
LPOIREC JO f:8 -'li ~ks ur;) ,~~-
03D
030
DJO
-
UO ~ 11 • lłr • •w• ae:11,ur ft
łmplcmenr.at:j1 nowe., Id
_._;;.u N .
jett UUll'lr pros&L •JPIC:IW IWonony Jest PfOśt},
~
ąców który ;csi podst,.,,._ do zbudowanfa PfOIIOlc••6w. Potem na ~ allit,~
ą •.:hiwy
Zooaczm)'. jak wygJL\da plik Apliła,;joTttblW')•.cpp: ~
1~:1 ~J 1 -.c...,r . IKY .-
.................rr~.s
fl~t . y.. •
ł0,1 u, •
).
J . z,.,,
I I rlC 1 Te s rJ
n :dóent: e: er.:rW1 u) •
- ..;Jr-.ur:ltfn,~30 flS orc:r:t OOOJS- 'li ~
.
EC .i
l Ln..:r,rAYL. gc:iros o at ~ l.
030 r 8r.i Ili.I c. 1(h't. lł.z\i lu
Q't.l LH{
030X Pl / •t - '
c - )( Pro:s.t r1 - Pros.taka na . le- ) 1
( H bQ t - Pr-os o at n:11 1;.0pl .
l. V
~ 'rz~ ttnlell , TS_PROJ[C 1 •
Pom21.!j nilstęllffl pr,yd.11ll1a fimkcJ1:1~ która informuje u17.ąd~cnir:~ 'c n uwana t~'kl lura
nie jl.!'st juz ui.yw na~
r.: ~ Z..:. l 1,e030-- Se e tur t ( 0, I ł,
~ l i • IUfiDLOI.., ;alłliMi. . .
ll TIU:
V.
.. erz.cno1 )))
F' SE .
i
t (l Lt'O & 0114, rzc110l -">LQO'. (O. 4 s · zeo ' " I ER2 L_ l.
' ~ - (9V L +iir)& e zcool •
OJH
2 s.zcz 19 tf ),
~ um FM.SE:
} 1 , - OL LCholk(O] ;; • l O( .
lk[O] z • U
1 tł! )I ! O: u:tio' (l] , • i.Ot
(lJ., -
1 - .. 1 O ze h: 21 _y - • l O. ,
[?.. , ;t -
1. • 1.0 ze lk[lJ . • -: 0
[3 , 'l. - 1
W ,ym rozdziale; posól, two~ lltm wjcr-zchoUców nie rdżoi się zasildni~e> od 1 .
pn(! tawiono w innycll rozd;r.ialach. Z jedyną różmcą, i.r.! 1,noj współrzędne "'10
c!Mlkow usta.wiilne w.artośc:ią I .O. pome\\·ąi będ sk low.u,e macic;rz te- •. J
łowa_nie za pomoc-t macierzy lek tul)' ok s:i~ .tbyt s:komp,1ikollli ane1 moma
'' (urn· ·ew kumc:,nt,ar-ru wierue zal ·emją,oc mecie.-1: td<SILCI)' i zmie11.11! '-'ISnófl~
k~rt'ffllio w kQftit·. Kiedy IJ\,lą j llŻ 1.NL11e rezu [t111y u_i;1~ :,i ieni~• rótm cb 'Ul .
wspófrzędn}lch !ck.-;hlry'. poD()\\'l1ic Witawi iir j t! n \\·:utoś I.O i odbl kov.ruje ~
tebh.lry.
~ (OJ u - o.o . , r-zcno ~[Ol ~ • o o:
1k{l .li - o• erztł lk{ . o.or.
r:chOlk{.2] u - O l)f no k(2} tt • J o
r . · • 1 Of hOł [3] v • J Of
;JC:...n'3,At hOI >IA,J • •
J
...a11' ~11 li:.J .s :.iry : Zri, szczF l;ur' C)
f .(
{
1 i?r-Mhol k-~llel ase( >.
1!!f'ZCholk • L.
lt?Jnkrok.i.:m Jest n dpisanie- funk ~~ Prz erioe .-,an • aby można było LIZ)'i:.
tałicgo, kdoru da, k16tj•'l'lte kJłiici ię z bi3?o t mi c ~ i . b~• ef~kt nadpisani b~•I
"'idoczny, " ivnątrz funke-j i Prz , t!ndE: nalety wywo'lat funk.c,ię- ~ l SC :
, 1d • 1 K&J 1T r.5 r •
[
- U"'z-a~~~ 1t030·>C1ear O. :JU.,, 030Clf · i t
- O.:~-~- GS( • O. ?"5). ! Of. Ol:
ia zemeOJO -&c-;1ft$.oeae.).
W p•crv, zej kolcjnos..:i l \\ on-ona j~t zmi~n□l m eii.:rzy t~ ury ' tępni ·. zanim na-
l)'50\\ • wstamt pi r,, S7.)' J)l'\1i:tokąt a leż)• u,sta~ it E• .zn,;~rmąj o ci rL pu~f„
~ni tof-liamosi;;jov.cgo.
C s· ~r;',
t n :.ac-1e-..... - _}.r•
_ a 1e030 -~1Tr~r.s•0 o.
P-ocuŹCl LI.! ·srum s.z.:H:-hO"- tI1cy u.i;La\\ i. n j L"Sl j ·o bi~ząi . \1 y tcksruro ma wpłyv. 'lllł
wseyslki4! t.ekstu.ruw3J I J)ł •\"1L■r.lt·hnii.;. do mom ntu. gd • 70:StaJli U$Ulv. iona no\ ·a lt,;ksrum:
Ej(,s':: 1.1r aSPr 1.,.
W20rtlfIJI :
Dzi('ki M~\'1''1f1U v..spótc • 11ikowi skalow ill 'I motn:J l\ Ol"Z)1_J; °!8CL'tn te
~r rv spos6
0
.~tttcfni:i \\ póirĄ-dr1 ti::k lwy. Po ~'lpt,tnnll IU I~ z ńln j,i.11m1,._;__
L('j ma i r"y mo 003CZ}•i:. .. i le oom IC U~Wt)neni-: m die cy L.lilU.l!IUCl
r r. 1 Jn ~t.1wio110 w poni 1~-;cy,m kod7i . maci rz fo,\\'all i sph\\'ra_ tt
po , lrza .si · v. 1~ ul'7..:ldD:ar.e -w 'K(lrzy~tllj\! oor.:iz mnir:J.szc ntipmspy. ft.kl ten .JCSt
dzrcj v. ,doc.my. g ~ , . or.ey ta •• spe j, 31!1j,: debr, ni( m1p~~:
1 ::Te, si·;. h:, · ~a1. '-1).
sł :t!(O(!!rs„ E .o I
T urn n 1,·on:oft1• Jt"St llil pod!-lil\ c 4. b1'37k.'I \ ciyt,n~s.o z pli li. , i:r•0\"1"1 Q;1I1 r,-
pojedyDC7A: po:r.iomy mipmap·
e00D Il /Ji.],
ans 1 2 -O • {I 1 ) •
eOOO ~er~"""' -:9ł
eOOO 1P. O ?).
ra lm .
~ O" 2 T
, a,.
Ul
rol 30 M'.:Ei
030-IX t:0_REC
H)
return :At.Sr.
• ' l. O).
or. (
J
Pod~ p~l3 r-l>C ,\l\5tcga prognurn.1 moic s1i; ldaf7,.rc. zr.:. ni ·1órc !Jf)fa3tje ~~
i. , on i in:łc-z~j (!lp. zmiln fi rm cu te u- ~ w r~ ~111nic c-7.tem..-il UU\~-'""
pro r kąt Yi w buforu w,c :tcłiołków 1filfliasr j edne o. di:m tcg, pr7}•~ro fKW,~ 1
gQfflu ll}'fo · ~fliC" p :i.ydt t_e "hn. ·• kró~ wyk rrystujc ~,~ Jl(.'<i r:as teKSl\ll:Q\111~
l chęea do 'Spet}'li r wam 'Z IISta'- 1 •mdllli ri)l')lych pa:amelr · ,., . 3by pouea~:
½.i ·ną i!'&ę l'l lC'mn mapo1i ill11a •~ • tr. Mot.na n Wt.:l 't\f<Kl~ do pu-p.rud
dtit łów , i tosov.,·.e ~ te ~turo,., 31'1i do ~\~niej s1worłot1y ·h pr st~ch . z tó1,1, P
rn1.: ryo:n} eh.
Podsumowanie
· · dii1t.n1a. J. ti 1rc iłem ,., rym rozd , i,;, \ 17 zi, \'i t~i ni~ \ ~crp,uj ~
OlllÓli
' v. icłu JJrĄ·padk li m iałem djoeyć omó,i, ii;nie pt:\\ n; rh ~kmentow do
~e~ rowuitów. 1' i_c podcjscie .P-)~ołtto oo on~tro\\: n,~ s, na pods !.\
?OJ . .J pozm.t. 'H!!'n1e h h.udz1cJ Zlla\\'3fl.'-i0\\'anyc·h ll,i1. póin1cJ. \\' k Iku prl)·.,.,_'ll]iUU"
DJó i:a'1!' JlOJ cui '-' )'Q1 gało~ lllpełn1e oddrJclnqo r07~ i..tlu. Po prucz, n·u
IQJdriełu powinniśmy ~~-
-~l~
czrn
j~a 1ebtura i j~ si~ )q wykon;ystujc. Cały o6t1ii
~ ,111:swr ~taruJc: ~tę dOptcro _po p~ec~tu tWtępncBO NllWltL,llr.
'f/{)we'aS bę-cki_~ J~~ ~ -C:Z-fill
nawet
W ~dt.iialooh ,d~zących za3Wi!fl5.0W3Dych
atdmik.. NI TIIZIC pi?.dłc-dim)· l{id1·ncnra. ktQrc w1u10 za;pami~ ć z. tego roz.dzia.111~
• '°",ic-n~h.nfa jest obid..'1tm1~kt6cy p.rz«bOMł\Jjt obrnzki bilin pyf damc tcb.c1i
A,,
DzJ~anle ·e1u z opisanych w t,·m rozdz1a e stanow raz 1<31eżY od tego, czy wybrane
1;1
wządz@nie Je obsh.rguJe. .zeli tworzymy apłlkaeję, która ma uafić do S.Z{?{okw:Jgo gro~
uiytkowrukó I chcem)' b)-ć catikowicie pewni, ze urządzenia ~tkewwn ków OM uguJ
nasz ustaw, oja. edy powinniśmy sprawclz 6 mOLII ,ośc u 2-ąCS~lłn•a 1 a p,om~..ą
fun~Ji Ge P c Cęl Ofi i opracować .plan zas ępc,zy· 11a wypadek. @d)ily u ądien n
obsltiglwafo ustawień. Jezell w c asie próbowan•a ustaWień z tt?go ~uillału. oka~
słę że k óreś 2. nrch ni dzrsta, moze słę zdarzyć, że naste u cuen e ole obsh.lgoJe
tego us a enla,
.IIIO ~-•Lil
...,............
-4
Jak pro:kom1llimy sier ~· cr.1s:1e omawianra lil1 ciel"lY p~k ~•c~~. tek t\lf or.u .
. , ..... 31,7-v cdwur"lil ;•,,11tzo.srajc w mocy do eh, d 1-. ki~d on: z, stanie \ISta'łi •
usuwie-n, :uan ,._.,, •J .... - •• ,,.,_t,.,,.... .
n inną wru:1 sć. K i® us• \' jenie je l wme Oil .,c:r~ tycia urz.ąu-,n.ia.
nre.nj J.ą,;.zenj cekscur. Je1.eli sko1,figuruj my wir.;!~ faz tekstur, a :,hiór wie.17.Cl~tG'
po i:;ida w~ j njż jcden z i6r"\\-'!'l-pótr„..ęd1iych tcbcury. figur.t \\ ykorL)'Stlljc ki I a „
Taki S-'laJl o~J ię Lt.mtincm mt~llitck.,·turm-H1111d. l)(,;unk u IJ. I p,okazaDo dw31 pn:Q>
k:t'Y V.')'k~jąa: po jednej ~k~wzc ornzjc en p o:.<;l kąt wyk.or.,ystując) \Ylt:l ~
t.stnieje ~ iete innych opu•-.:icji , ·w 111beli zsp.ri.!Zi:nun .JJ\O jccLyai próbkę tego. co mma
osilł_gnąć. i . którzy cł\c~ pó~kspcrym~n,owa ~ ~nny1ni opernej@.mm. mnog~ !il~~
1. przyłd,ad wcj ą,lik.Jcji do~t~■pnej w . DK - 'Jt,,łFCJ'ex. 1/Ar opc Cjłtdt preyJrouJe s,,. że
ustawiorm je(j~o tub wi~ccj a_rgi.1mentÓ'\v.
DIDISS,.,,.COLORAIRG1, D3DTSS_COLORAIIG2, 1
DIDISS~LPNAARG11 D3DTSS__AIJPNAARG2
-
OOPTA,..
coou_
Operaqe t,ójargumento!• ~ _
(DaDTSS_COLORARGO i D3DTSS_ALPHAARG0')
cycll Cekstm „ lr ~31gttmt:n tov.•e. J~eli ut-.r.ącłzetue ~
":ykon}'\1t □i~ 11 ·cb op: cJi. mo2na ust· wjć pc..~.,._i;:,: tan • tiby były_ ~'}'~
jako " ~ 1rzi:cir:go pa~t:tru. ArgwneJ'lly te są 1gnoro" ar, dl oper-ACJ1, tórc ~
~.Il tylko dw artun1mty,
1D 30ISS__RESULTARG
IJĄm ."lfilt opw-acj d,11l lil'7.ąduniil jes umt,;Szc1eure wymku kaidego z arsum~1t-
,;xe11i.1 w brei r:ym rc1es1~ L ek huy (D30 4.... l.., ,., · ', T)_ Jcld i Jedn · urzą~enie z.a.,.
T
rej lr l}'ll!lczaso\\')\ można UJme.scrć \.l.)'lli.b: .._._, rei ~trLc 1ym ~tsowym ()JOT~_ . Tcs
„
ł)'mCZil$01.1i reji!Str można na.'itg)mc \\ ~'Sla-Ć juko pa.ramc IT 'jściCffl. dla i.Dn} li.
Jedn k O~\\-a ww1os- koloru pn~syhm.a pnc·;t rok j ~s pohi ~rana . D3J A_
z tt:m o.i:;tat11111 akcfWJ)a f,iUj mu. i mptsj"\'-a · 1nfom,.a J do D T'1_C E •
.· ,o o
.•. -
„ ,.,,....
:s1:in6, można USf-8.WLC na ano~ lypu F OJI.T' Dom\,,
-1
lna war10 z tych- .. .,
kttdego ze tanów
\V}'DO~I , ·
pasób oddzialywan ia rotnycl1 wan oś.ci fi mapę nic;r(lwn'Oki opjuno w rozcb:ia!le 31.
D3DTSS_TEXTCOORD NDEX
1
D3DTSS_ADDRESSU, 1D3DTSS_ADDRE$SV
i D3DTSS_ADDRESSW
,,.1 poprzedmch
· r 1:dz1- lach dowu.:di1.::b.
- - · m sir.:, ~ d""m'l!
· • ze u „ 'n
1 m l .,,.,,...
'"".,....,m 11"11'1$lf'pow
.,- -.: _
nia
•
• • 1
--•·-. - A " O do 1 O b Ło l\l'fu/l nem-.:
ze li spolr-Ą-dnym I t ·'.kslm- wykrac~J c n:u po:,:,_11. ZUN'\,: uu u. . • • . ..r- ·· . ,
~k Lury. o dZ;i łantl.! okrciJa si~ tt:nuinem Zlln°ijanie (an • ~wpprng).. ale m~ Jr.-st tf.'> J~dyn,
2łM
-
!JJJfSS TO f Ci\J
-
o:mrss_rcr.PASS
03DfS__IEXTURE11łANSFORMFLAGS
J pru,ko1'J~liśm_ !ł~t; w i:»i: tn1rn ro7.dzi k·. ~n stan fnl)· ijnfoffl'11i1je ur.,..ąd7-1.-.;n1c O sposoblc
prz,;tv.'aJ2BaJ.3 współ,7; dnych 1.eksttłJ)' 7. rnacu..u.ą tckstul)'. \ ~ tcs,o Slmilu fOZ)' 1113lcżv
us na w1.Vtośc n k1.ą ą do i;pu_" ·h
t\VJ · ni.ovn.~o O'.nTE. ~.NSi • . \\'~w
k: opisw \ l3bch l l 5.
R1p Ocils
pr:utw. r: M Z3 pomocą ma.ciem. ,ia :y
\\ \póln ,I.n(' Ci. ,cu~• ~ p ..r,erwal7.anc J=! ,~ '1,1,,-:spółrzędn.f: ·~"" 'tllla.KJ\ ·c P~•L..hldowa
1 - _ew 2 pr.11.•~w.li"la. , -.,pMi2ę-dne -lU. 'fl',op 1'1'11 , , ~, umm™ mies.l.t:,t.\
Sł~ w ukr~11: od l du .
i"'f}ROJECTEO ~ s.pólrti;drie !,.l prttrwar,..me- l • Jl'L'.i: L("ksC\lrn :r.ruto\, n Te ęut'lj nu \ :me ZOi;
rtlÓ'l\ ·oni: b.trdztc JlCUgnlraVi o w n.t....1ęp iJ:ń rozdz1, 1c
DłDTSS_MAGFILJER
"t II b)'b frJiro1,1 ni.a lillZ\dza spot~~ odv.'Zt,r wru11~ t -~h n~ W1 ks-7.L! o
p3dku oni~l11ości J)O\ i ·i-en1 mi;· urz d7. nic" y ·o~y:!>tuje t~n U)1b fil
-------------------!"!!'!~~~•.!ll!!t!,1!!111'!,!la&!,_!ł!!ll!-~~....:•!R!!,
1
~
DllffSS. . MIPFILfER
Podobnie j pop~dni.o tryb lih,o"_ni, , mu tea obc:śl sposób , 'fii,cjSZilni-a tdcstur
ftGd= , lllCKl"PiillllliJ m1pmap.. SlaW1tmc lej ~ \li"~ Dmt F ,E"!,""""
o .......,
~--mrowu.nie mipmsp. -
NDTSS_MIPMAPLODBIAS
Tm s.1 taiey " ' ~sadzie nic "'Pir n fi ltmw;iini , · acomi a :c)'duje o tym. któ
mip:11pę Y,-ykorzysmujemy. Wpro'W3dz nie dotfa111ie o p~ 11n1~t"liil (ang. bim) powo-
duje. k ur.lądzenie 1J.ykorzys,uje mipmap,• W), ugo poziomu nit w ~ 1korzys . 'iUI@
i~v,· z.aj. Wp owad z ·n·i: ujent~~go, pr.a.-s□ni~fa powoduj,:, e urądzenic ~or..!;}'-
r
stuje mipmapy nitlizcgo poziomu , zykła:tlm,o. uslaVi icnu;: dod utiego p~e.slJlli .. ia 1.o
zm~ unądzcm-c do w yko~st.am~i miphLaJ'. w„ t..s.zcgo poziomu. OQ Qznacz.a. v,:-yko„
~'Slarntc mnu:Jsz~j mipm~~• 1 (lJ7.esJłan1 • mnił!js::zej iloscm da.ny b~ 3 to y;pływn □ 'UJ-'. - -
szeni~ k~7.lcm J:a1.::ośc i, J4;: I to w no e iyp11 r L ale p,oni.;::i.vał. mctodil
\\')'dłiJności
se Tex ureSi-,geS ~ t? pn1:m.:ra ,v rtn .c typu ~. w. r:1ośc 1i; nald:.y poddać 'k~nY.rusji
d t)'pll
DIDTSS_MAXMIPLEVEL
17M stan fazy 1JS ,a.-,.-,.·ia rnaks)TI14lny po;nom mi[Pm2lp do ,i , Dom. 1~ \\W"tOti.Ć
-orz)· ·ron"
\\f)'DOs1 zer-o. co 021uie1.a, .ż~ unqdzeniie ma do!ilt'.P do v. 7.) ~ich po· 1omÓVi" mrpmap.
1
D3DTSS_MAXANISOTROPY 1
lrn l1ln identyfikuje:: miak ynt tny :pn2.iom a_11~zolropli do zasm~wlUli w . p~•,rpadku1
ki f wląc-.umo lillrowanic łlllimtropo"'C. M~~11łną. w ~ dla tego usr.&1-'Ylfm1fli IIIOŻIH!!
StanY faz teksłtlr, a mechanizmy sliadet
· 1 lur •~t obc-(.fl i ~i,n)th pc,o,;~dn tv- i!ffl
f ·zm;• p ~I ~h d!! 1 r, l?OCmt ·
. h--Diem tćks~ur ~dxii: ig 0,
ycll 1; my m h: iitmre
11?1 od " · m •n ,
ć. me-W m3Ją . C . eon. \.\-1':i;"V,
i\' ·hadi:r lub 11 i~ d "e
\V p~'-11 v. Je
. łl~dcr. sta~ O"" TSS
\\i'~O()trzc.411C' te- Ul}' ...,.[,,,.,... ~..,Mi: d • mc,,;hil11izmu :"'......-
• - ',d)l '
Kod
Ponu:\\ wi ,i.pe tó ,\ 1 tu po~wii.:ccmo "'t le jeJSta ~ · ....,._,..,,
l.J. .icłt. w l)On· np • sir: n;:1 a ·pe ·wch fil ow. Lil :!!Z 'lli
rĄ-d.ny ~ur. Cr,ytd · . · s~ G tnU„'f"t:.SO\\ n I n.i ...•!" dntl.:ni:irn t
metody 1tt-ev~ ' S ~ ll1 d, apli·. j1 i\U·C C ln~1jJu
fi tD po7.W f:1 11' '1-"~r'u'-mentowa tł · . wido IW •n'k1m
wan fldu wy or'lJ go do ich ,, gi: l."fO'I.\ llnia. K1t.·-d, r~:c
ffl«hM1zmów pi ~, ·~ 'SL~ npj~ bę-d,-j , ·.J nwl! o SOCl,SOIKJ
r. Tymaascm b rdl'i j imi. e J ·si LrO u~, iua1 s6
,1i póf~dn _"Cl 't pt..1fl1 ny ti; o )dują o p,os -.t,.ic te
h:tllt.7.Dl w h.. d~r.
ry unkt J raz.:i11 płtk, J\!' \\. d11at uu. Pro ra l "~ "' it!'Lł
1'.00\li I Wa ru w róm)·ch 1ryb.a.,;h Jd ~ wani I fi hr~w. ia.
R PlalJa.•~-._.,
LFOCA!C „ TO
J.
Jcruprr.yjn.yjmy sit .z;awa_ności pliku .AplixacjaSlmlJ•1: 1t1r.~pp·
5 U
,.
1 k xwv ·ft d r~e Jest 7.311'1JCJo".a zmi n . ~ ry tł przyp dku iniCJuJm\>· U\
\l'arto. I . co powinno ozn cz.·tć pop ~·ae try }" dla wit1c zości tjrpó, pr.cęru •
t
C;JfS n.; 1 ~ .- • n. ·tJ S.a11j - , st-u O
{
,
\.HC&n_
.O_ O. O),
OO . .O).
Ci(f(3~ Of.~ OF)).
„ rzadZe c0-'.30->SetTransfo to.JOTS ~,Ew, _ ter2~100 ul:
CT P. ·
QtCl ,e „yt. &P atm:nd) .
OOO · t 'łeFa'll.H( c e""zllzutu.
l"GD>. Pl I ~.
\ ·10110 CPreis - •.-, 9:11. ~ P-ros.t a nłl 1ft • i
: .. .j,j.t H Prost bou.oo ~ ,? rost o llt"!: .o L
lOłl O ).
-"Urz~i:łzen et.łZ - --se- ra '5 to. _P1l:IJJ; CTIO!~.
c:1 er-,t,z.utJ) .
•
.,. rzi1d2e::n1eOW • -Se ~eri.1~•·St ate D~ C .t ·r. 03illl.M.L • J.
PonJUZY koci us11awia 11Yb fi [tnJ dla ~~ićh 1rzeefll Opc-~c~i. W ni~~
bch. ~ 11yby mogą byc po~i'e dJa _J ~:c~ Of>ffllCJi I nLCpopq..,_ ~
Aby poebpczy1J1.:01ó\l·n.ć 2 rómynu kombi 111ąeJam1 trybów~ rnotna d ~ ila lllilJit
sujil(Y po$iCZe,84'ln~_operag ~..do rn~yd} ,kombinacjj . ,tar"·~ey. w wię~ ~
ro dx, .Dń.M 08,Ófn~ roze.zoanu= \ ~ 1.a:la mu fJ)'bów. NJt:'ktbR C&7.en'!plarzc ~
(]bshlpj,t pewnych try~ ~. W takt m prqrp~dku,_ ab~ obcjmef ~al~i~
\\' pnakl)·tc. ~· dahzym .Cl~II mO!IŁJJ lll'UChOllllĆ {I.J)lJikilGJr; dJa ll:~dz-enia REf:61,
""'Ili
- 54! e· t1re.s~.~UlelO. DltffSS_ I FJL ER.
,l,;!{1Zeme0'3&-
(COOTE EFJL 'Pf) _81ezi1C::y r l l;
_ Urzt!dzen1eoc.8- Set e;.-turtiS ageS a NO. DTSS_ J c1 TDI.
{DJl.łT0:11.l~Efll E PE) _e1e~ C.yT ybf1 i tru):
rzJdzen1.eO.:: ->SetTPA St S e(O, D3DT~S ~JGF-~L R
tDJDJE 'TllfflL1'ERfW>E JUez~r.)' rjbf ł J; •
or111g--uruJU~1ddz 11e(>.
:.tr~~ Ut ~zr gurt().
z szczf1gyre( ).
r 1,:1i" f " $[,
-1.0 ze [O t - O o:
• l
] o
l
.1 - •! - l'.Chol '{2] y • 0.(11.
lc[2) z• •
~ełl01k[3] . • • - O O.
r-z [l].z .. -
;re } • • - •• •r"zcnol { Jy - i O,
erz [4] l • -
Lct ] ~ • 1. erze11o1 ~(5] y • O:
e-r.l [5] i. • -
oc..C ).
C2.yS,zcu.~ i ebantt
C..- 11 • A¼JL...., Jll Ilira•. . .
dl.enteOJO-~ I itScMe( J,
·-
Ponittj majdujt ·'i Ł\\ _ 9n t«I .rmderowania btJ~~ł'd wimchwków. l)'tl, Ptlw.... w
m,(k-roj,cffly c;ztcl)' p«)'fflit)'W)' - dW3 dla „podłoga oraz dwa dta ,$a:utf..; · -.. ~
vc,1<1 • 11 c,CJlS Jn)IT .r J()
(
o. s t,ll"JS.Z~C ~).
"'•( _ fA (!iffilP. 11. o; )~
o ~ zt.
r Ladle,1 eOO!I„ >Ge
1 {!(Hc-2 ie,.-. a
'SSd~BQ~(
b ,s." - : e
;;;,s .)
- ' ~-
1 .. ,, ~l Tt fi f Jn
t '"(I~ o
'5 Sqge5:)
.. -
1 (
u:n
u .• ...,........ 2:1.1
rG1i11Ss1 IC))
~ rÓtii t.. SS.a
. - .
ł
v.r zalL~°"i od mn,u 5P~ ru. wiele SJ)OŚr-ód '"Ym~n.ionycb trybów f11ltrow11nia mol(' ni~
b>ł ~fp~yt~- Podobnie~zakltldntny, ~ jr:teli ~ One dastw:mc d~ operacji powięks:ca~
tu3, ro , · ro" m~ d~ępni: dfa ws~kich opcmi:J11, ,.ie m ~ to b>•ć dobtt zsJ~i~. al1
fl,Ulkc,tę 1..: lmk:on (11111 up~~rn:J. Tilk czy mac:u:j, fi1h'owani punkmwc OTWl (Wo~
powinno b,~ dos•ęprie. Z u ~ w.~.,j aki ~-pfyw mlłj te: lYtPf filll'f,1wani aa dan
opi:w re-~s.::h. Po~talr=_fihry dz1111_3J podobme do filtru 1;niow~go. w tym knsie. ie:
1
t,i~iaj · or1c- (zar.;1eraJ "'ill10Śc1 1ehdi. Ró~foa IG:_ey w pcmomie eienmta oru.
\\ rym. ile ~sgól , pomffl!jc.
♦ Pr~iJni~ u: Z.
• Zcrcw,-aruc bufom glljbi.
+ est pn~rOC1,} :-;losc1 pik eli.
+ TwaraJ11i: pn;c,:l[{l,CZ~'stych ,r:kstur.
ł f i:sl . m1-łu a~rs dl :,;1hs:1.~go I.IZ)' 31113 pJ"J".C7-l'DCZY 'L foi ·
ł lmy-pikscłi - probli:111)• \ ,•d::11J11r:i ei.
Tastewanie głębi
RpllMk 14.1.
s«-~oraz
O!tipokrui/o W
,e1 :alł rto!t lw(a.ra
~ r
W mu - · "_ ·.kr.. : 'l~ia kołe-jnyd, paksdi n. r rr.im,., urząi.łiT ;nic- ~tuje w _głębi
piksellłl ~ wartosci· 7.T1 Jdująi;ą sit: tu. Jm~ \\ buJ◄ tr.tt.: głęh1 k cli piŁ~el I'
te{J l p0ł1I
•
·łni1: • buł' r i;~·\ bi j I U kmual.nian • 110\\ '"\
!ł wartości ~, Ir .arto.śe \lt, buflYlt 1:1
r w }CS" ianueraiana lu mie. Nl z ,, urh,śc 1ą kot ru no\i;c,co pi l!f . \! spomnlłlł)
J~ Jednym z fon cji P4'r'Óv. nań 1. a,1. ionych w lilhę,: Ii 14. 1
\\' prl!,·pooku • •~tow.an~ ! :łb,, ,~ rtl)Ś(! i odmi;sienia j ·1 bie.i'.ąca w,a rt~ dla 'Ul
ip,ksda v. bufo zi.: 1 łł«br FunkcJ · t 1uji\1 ą mo.in:1 u 1 ,., ie. okreśJ:ij c tnM ~
r~ndi:nngu:
• 030CM
..---
~~ Ił
~
~----:::Yi,-:f)'D,:,;:k:le:::m:-:~==ll :C:-:n:e:g.1:l)"A:::;ny=-.---""""""!'--------------- -- - - - -
"'')'11 k ~t-_,11!_ ~'Wił:,', mdl DOINUI wnni>st Jl!'a l'ffl IC u 00 ~ odm6i~Ul
\\ 'Jl k ,c I\I JIO~'l)'Vw1l)', Jr:tdL llfl'.\ "' no-U- e$'1 r6wn:i ,..,~ości odruoaenu
BuforW
J b)'C [TI(tŻC z.:lU'tl{alyl j i:'I~), \;I; "ł.
it ru, ke' ę: t~ lU i;l~bi llo fWikcjc ,
' I jb. rtlłl_,.11~j
popdam}'fll rndzaji:ał bllfot.t gł~ .;t bufor 7... ak bufo ~-n JM iS-OOffll 'i.li~- ~ w.2glę,du
nit ~pt,sÓ obbczt'lci· v.•an~i \' buforze Z. warto. ~i tie- :s.ą rnz~~ane: niL"fÓ".vnoon.11:rnie.
~ to, że i '. obL<: ·1; mejdUJ CC srię bł~ 5ą ~ W J l l C puprawrw , t pl"".ey-
obiL'łLów pęt,ożf'ln~rch da.lc:J mogą 'i-Y)l'Sl.ępow~ problemy riektó~~ !'07.\\"1r\Zll,ą ,e
pr 'M m•• w,-ikw-L i:;1,~ c hufor \~'-
OI<M' W m01,e bi.,i bard.la prfydatn oo te$tCM1aniB gtvbi, nw.ze tala być
boó5em proolemfr • w ~ ,lii"_p-:on~nia · 6,;~h typó"iN m 1)(11', Io s.ze~
nc:go ( CtJOe ~111} onu ..,.,....,.l"'\I, ętelt.16-H_ Pomimo O f / ~ bufor 'Z~ bardnej
wersaln:,m rozv..- Qł31"1 dla b.Jfo:a &J.eł}ł.
w spo 6b b;mlri _._j lin·O\\ •. ~o możi: pomoc „r v. ~limioo\li n;u ~wnych s..zci.~c y h
w lflyoh f,: tów, iii!!' ""'" ft"t.lS. _ffl ł:L •u wys:1'1ipł,1ją ogr.'.ltf c:1.cn1 ~dziclc::zcset u a~
gkbi. O xfatkowo buforoi,,·._11i · v.· mote.: h~ć □ieiompal biLM , ,ii k:tórylill N)dz.aJa:rnr
nlJ!)OW:mi3 środo't~ t koVi ego, [)fa la( llo~ 8n1U. ~nosci. \\ tej i;\2.:C 1111: ~~y W!o'~
!m}~y,,i.a butoroiwJma V,l. pam1~C;ijrn~r. i J~;,.c-h nil ~anl; ln..l ~) 1 CJ'ti'., w_któ~J
lkifo l ~ i ( ri,e:\, r:1~/lłiJ~Y, mot.c nl)' wl~zyć b I fQr ,v
ttt ipomocą nas•~uJ c-go
1,1. olun,. me~OO}' i:; •tRPoc r'.::i!.a. "''
L o.'.WZB USE ).
-
zerowanie bufoni g1,bi
\ . ~nfoh \\')'Vtroł- nm. h ll'itCod r Ciea JJS.I_ wib. my W3~0biĆ zerowani bllfDfł
11 r'o. o
.ronic\liai J cime.cza a ~" iększą głębt . ~ ro_ r g.~b~ motna ;r;,1p· · do,,.
pikselr:m najdującyrn ,.~ ~ potu Wldz~nia. J~żd1 ZJ1ik1chs ~l"Z~:ryn n~· kl
dzfał;im., 0 j:u:: c- a:im dt0d1-i. możeffl)' ust wti: ' rtość z _rowlł1;113 na rnni
Przyklu.dowo, j '-t.'\11 usmwim c wartoM: rui O.O. ted test g.J~b1 dlm \1i ~~
nych ptks ·li O P'Ol •~e ię i ni,: bf.,dą rendc-rm ne t.adnc rnowr: piksel~ \\' '11\1·--..""-'
przypadł-ów Yi-atro ć •~ nafcfy mtawiic n I ,O.
Przezroczystość
~tl:ijąt", żł=' l~l glę-b1 dla nm\'i.: o p11,;;~1. d.81 \ 'll ik po,)11.yYti-n•• mołJ'l3 ._,~ 1u.,.,.11:
bufor or rut,,.t. \ pop17.edJ11ch J :r.did. łach w zystkn: w1do · ty oraz t('ksttLI')'~
·owicie nicpll4:UOU}" tł!', 31~ d.7.1~ ·i k::m ,łowi lfa mlYLl iwcJl!~I rctl&ro\ a.Jl. ńłll,Olł'or·
p r z ~ t ·dl fub, pólpr.t~zroc7.)~h. Kiedy kor.r... stam · 7 3 •brtowej palciy
o UlUI it: b11i)w :kl da :się a:i kan~I Iri)~ co umoiJiwi_n. 7dcfi njowanie 2$6 'J\óri.n}
7.ion,ó\\• przezmc:,ys.to 'ci. ~ 'artośc alfa ru'"' nc1. o.u 07fł:.lCL" C ikowitą p ~
aatomi~ t ~ar1oł.ć- I .O odpowt. da obiekll)JT] cal ·<N1c11.:: 1,il.'.'pr.l~zroc • tym \llano· ·
nogą b lt C_l.(Śc;1ą oloru 1r,iencholkó,ll lub koloru kk!itury. DndR.tkow ~ j ·
smy w osl'.8111im r,o,.a2iale:. w r1 ci ~Jfa mog pod1od:t.1ć 7. Ol acji lfa d
k lir• mo•, być funkcjąl,;-oloru \ ic-ncholku i k,lku r znyth tek tur.
mwianu; 'WilrtO. - 1n„ dl. " it."r7.Choi ów JC,q fU Sh:-. W ~•st. fCZ}' ustawie k:3n3t
_Yhrancg.o koforu nil ądan1:4 warto ć. tawiam I!' w:.:irto \;i aU-a dta tek fi.IT)' i.TiON' •
Jlct.-co b..1rdzkj kfoj1011 i~ c.
Jddi Il' ~ edytor ~ lll □i,: ohsl:ugujt.!! ~ rnm1ów b~t-0~ ')'eh, moicmr SKO?'Z)'.SU
~ na~d~1 obroblia t~f(.')łl.Jr .1'V(~~ i:go w k~d SOK - D i ~ T. (Ul"t' Tom. N'illz~
wt ~ po ..,,-rahl n· \\ac-zytnruic łut1111Ap,y. ,vczywt11.: a_n.nłLJ .aJfa ; . [Pls;lJ'lic pliku fitiś, in ry
~ z ła~-o ią m tadow z.a pomoc. ffflik ji lbi'blioti:kii D3DX. t)m «lu nalcxy
,,n1Jd11.1m'l· program i '"'')ibń ~ pDlt:ormioe Op,.,rn · mi=nu Ffłt•. OLwi-crnmy plik lici;zny,
~ dzie shd:)'Ć j ko ~z~ t ~tW}' 0p1:rując: olor. ~p,iic • menu FJte 'Pi!'ybic-
rom;· pałr: ~Jllt Opi•,r ,>m ,D „u,,1~
Clwmtd (] lhl ~ ,,,r~ i Ol\\. it~f'll},' phk gmfie;ucy.
c ja . p ~ ..,, 1 bie poczL mów "':t _ 1 teso no"',:g(, ph u sh1ży jak,o l:ana1 ]fa
dfa rlasz'Cj ł~ •. PrQgmm ~ SO\VUj kolory w " . . i~a :j bim1api~. tak a;by itwa-
n)' · 1e;p~zicnt.a,;ji: 1..- bi•o~ j t~'ks1u • . ~dnr DJreerJ( l't! rr,r 1ool pokaumo m'i
f}'SJJnku l4 .... ,
- -- - -
~•r.N.2, X 0..11d)l inill„r _f:-!. - ~ .. ~
f 111I.r..,tn
l2· . ~~~ ,r ~~
,:i.; 'q
~,r r-ain~ rao.r
Po u.tVi Q1U:ni1,1 pH • m ~a r.aladuw, · OO\ ce ~ U.~ \ Ol'yrn .k..anał- Il'! Lf:i, poslu11-
i'J.RC' i~ funkcju.rm dosL~-pnyn'n \\ ł'iLbho-1 c-c DlDX.
..
W1a1Czanie przeaocąstośei
......... ~~c ~ nll!izycl1 •ek 1ur.LC-łi lub ,viefilo'hnu,,......i..
Kredy Jul ust.w,un ' ~"'"'""'"'"-' --~....._
1 .,., • ~~cości
. fun11.i..' \11 uf7_,.qdzimru: --.i
wł•Z)'(' .J~ r - - ...., ........, -
_idJr zem · •Sctlł :rde ate(~_Al. E'. ~ l·
Po wl~'DIU funkcJi pr~ Z({)( ·_t(J 'ti lll3IC~}' us.ta,vi_· tryby~ Lenia dl SiiolOĄJ~
"'"'go i dck."'CJow~go. ryby ł1 ·zen 1.a d • ·duJll o tYMd .. • J~. t ~ ~ "_ ~ k?!or,,. _
I
kol ni irodiO\'lo'~'"!W tno\~ ego prks.cla) oraz kolt'lru docc_l?~:i:go (prk~1e bi~I
JXlP'' kuniej :i'lC' ~ tn,wi,.rnia tryból 1,.'łpre.z-e-11,0\ a.no P nLXC"J •
~ n~eOOO :>~ L"11Clc ate( s_SRC:Bt!:. • D)D:llt ...W...ALP!,;.,.
• ~ l„c1zet'l1e03D---..Aie't ~rState(03Cf!SS_otSTP.tE • 030 ( ,D_I '5Jłl"-ALP. •
kst to najpopul iej<S_~ ustinnc:nic, ponj~w-.Ji.. pmvoduj~ Ujjl wit.-rui: pro t_ tf.
f ' ~ ~osci. Dta pf7.}'fdadu w~rann_i . obL ~ I re n:ndcn:j~my bru:mi: ~ 7.1
~ rro~ 1 '1lfa 0.1 . co oZJW.C-.l.3 wys"ki topren prlt' zys1osc1. pos6b obhC1.en
df.t takiej sytv cji ~ J e poniż.bzy wzór.
W = 0:.9 • D O.I • 2
\\r \.vi~ Z}'fflstopniu na kolor \\:')'Dtkowy 1i1.1Jfyy,,,a. koror docc Im.fi_. • porut!\' nOYt)'
j t w "' 1m ~topniu pr~~'Sl)'. W dokumi:n1acji op1~,o v. ii:le i.Dn:, tr, ·
lj\C'.zenill Tryb, li: mogą_ by · przyda1m,.: w opcrncJach r.;nderingu w1 lopm · Ci
, prostych przyp, dkat'h pncnoczi ·ro ci W)'~taftL}' ?.btos.o" an ie tryb6w opi ,
,11 n.inie; rrn podro~ziali:.
Podcz .,. \ ' ( lliil ohr,ekl \V pr1..czroe;ey-s1yi:h n Je.z) J}"Jm l~Lat. ;/;I! wno flU
~·stosć. j k t t0<w:inie gJ bi majit wpływ n wynik. \'ir)'obrażm~ sob~ . że .. ~
~('Z okno. Ji!'h!1i najpiern~rendi:rujl.!mf wn"t :t.c:. :1 pule-Ml ukno, , s.r:ys~o l:ięwie p,:i,
tlądk'lJ. 1~.t:di 11~~pien ~ d~rujemy okno. a potem wn\"trl'-C', wynik te"SCu gl~-bi w.r..;ttn
ni p(m icdzic: si" i wn~ · nie: będzfo r..:t1di:-rowan ·, Bi;i.17.tt=~. p·Hrzoc pr~l'"', o D
k l ~ 11ic nie .m 1~, kifka spo_ol,ó\,· mzw1 w:ni tego problem • ałe- myl~· · ~~
una~mc. :tV.T. C-:łj m a i; ml kolc:Jno.' rendCHl\\ a n1ai <ibick1ó~.
Test alfa
Rmdd„14. • TNlawłlnlti lltbl ł ~
\\'~,:ttłi: ce:_tl.1 lfoi ~bejm~ 117.}' CZ)'[l~•- . 1 IC!!y li ·ty,.t..rn-ć. ie~~- k ~li.ć run~
poró\,......,....,...TI,,:1 ,lgodmi: 1, op~rn i. 1..~l I I • l }. :i ~~pn· c ustnVIĆ' WilI1 · ' fai ie-ai
Pooi . kod powoduje ·k figwm.i..ooie lłCS{u ·11 l :iug.norowrmi~ ·~zys:tlóch pi.b,cli,
dJI kit~ h w:m(r.ii: ;i.i ~ si O:
1 ..:~ a e~
Se „t~, .
•Se t.at~{
Do1i1'01ny p1~el o wMJMCi alf róv. ac-j :zrro Jcs• rt t)'C'hrniA1s, i~~ooą. .ll'l)' rzc-czywi•
~i w pr06JYch p.f'"l.}ipad ..ich , ogóle- mi: •P
ba w t,1 7..a:. funkcJl f -zęl'!fa.
PN)blemy wydajności
_a1_d • x op1 nyc-b Cr:..1dów cz.asu. Jic:1-d 1"'Y ·onu;cm · pros.te opt:r.1 jt: 1 me pO
'a,V)'l1'1i !l':!
trzd n~jc:lll}· r tu gł :.bł. \\-'f I r; PO)' go. JQ.,:l i r1k koCZ)•s.la.m)' z. ·fe' ·tu p 1. --n, •
n' ~łąt::atjrny 11:l'CJ; ni::. k~IIJ ,Ll fa. h.o:ż.di f)i my tylkCI 11ka ame ·,o-.. przczrocz.y. tyt.: .
v, I c-zm)' pra:zrocZ} ~t0$.Ć dfo 1) h ob1tkt Ó\"t., a le ~ 1· -✓. n,)' dla w-s.zy~rl ich po~ch.
l.. dn., icJ lJOril lt.'St ul f- 1nQic: b~·t 113!\7.}'TI:1 s pr,.ryrn1c:rzi:i'K! n 1 \j ykon::- wami: L• •u alł3
~ macm.i 1'1 nic-j ..,ko~:-fl4'1\.\ 11..::·· ni,: lą 7~mc ;,, l :makm .,lfa, lałem ;m "''1~j pik!i-eLi
l"ZJC1my ~ ~) "nlku tt"'~1u. 1ym lep,1,:j . 0.Czyv" j(,.;i,.i.;, je-7.c:h n n,y pewne~ ·, n:. y, 1 i · 1~ t11
d'3i s-zystkfcl1 Qbic:k1ów ~-d1ie poz~ ~•w11y. b"'t!)•.t. me m·•n }' ~d□ p:h obJl!'k~óv. prz~
w.ystyclJ, pan'lię t:ijmy. Jby wył4czyĆ' t...-!:11-
~ pł}'\1t na wyd...1Jn~ ~1..-s1ó· \" o p s.u1 h w t}'m rozd i. le. 2'11:t'" -c-zuj ,.,, "'S.tarcz.
1:.11rrinu;,w- sii; 7-4irm 1'rn NI. ~1d ·iem 1\ mtęt:1j 1 ·• .>~ ~ to pro::,l . oprCi cjc-, .ll · one W)'•
konyv. ru: dl v. 7:)'slk ich pik"\Ch, a w pnypJiJ u skomplikr.H.\ ny t ~en ci.. ~ m, kil ·
mz;y la j ~ p1 La. r \1wct c-zi:li prncuy:;ny ,,, ronl7.i.: zoict 640 4tś0, I icm'.I "" c-j L
~ si kilku m1liooo•o.1i . \V pr,0-p:trl.bch. kied_ t :st)· , .. S.1 nam poollJ(.7 Ju:LJr.11 ■n~ Jt·.
Jeże-li nit? n rn potn.cbne. p.:11n1,;tJJm •. :iby JC- "''Ylą zy ,
Kod
Qll6d m• ~ ~ r .
R,tuMk 14.3,
•Ptwdn · 'U'kmlm
(r~Jq. (l]/,J
m,-a „f),·lr. ..
•
~' fl1ru !4.4 pokm.ńn ap]tlaąę w dzaiiłuniu "-' kn · ., :znajdujij się ~
dwooh p~leb\tó"'-'• r'1i0 ~i,;:ąt o,-zmiczo□y ~Lykie4 &1t:k {Tyl) 7.roJdlJ~~,.,.lci:::ti!!t,..,,
odfe~rok-1 od IXl (:1'!,\•:m:wa nitŻ prost~ ozT1aczooy c1yk11:tą From Pnód ~
l ff'a -~ sp:!nion · dla wsz ~- ich pi · Ji opróc.i: 'I.)' • t re: c,a,lto w1cii: pl:'7.czro-
~-Z powod.u łiltro amm mi,::które pik~k b)'"fy półp1Zi:u ~:t~. Pik~I.: u~ pclni.~·
' :1ilfl i bla ·ow )' ty1n proscok;i• . [JU'\'CK(u a ~77.11 łrie m r kl:tdnosc1. ~ •· ki m
paypadku. \\ celu unikni~i f.10'\'slrlwBni.a ni dv I dllosc1. moiemy d~o.,,Qwać \lo.it\O. ·
odn. icnia dl c t I U' cm u 1„1\\ u:nm liLLru
'ran}' kod. Pomc-wai. pli ll.'L J6\, ·ow} J , l 11rd.1.o podobny do pck~-g<.1 v. po-
przcrlnim rozdrial . uczy nuJ~ z ,~~o nma" 1:1.ma (,;l,n<;tal J se on Ot; w·s ii: dos.t~ ry
'el( D ). Jl'lłłyn}'ln . ,., ;11n=- fak.ti:m. na łil,ÓI}' n.dll!'L)' ·,'łJ. rcM.: ie uwt1;g j t to. ze postu•
,UJCT11()' s" d~inm.'l obu: t.am i •1,;l,..:mJr. Przcana.h.-1,1Jmy p l1k ~plr l'J T. ~\t)•.t:pf ZM3JdLJJ
4
Pooobni~ j \\ pop 7 ·dnich r~ zdi.mi, eh. apli k.;i·-ji ". kor0 lUJr: prost}' foifmaL w11:r.l•
ch.(IIJrow z joon:\ lc~sturą:
JE [ ·'S :\ ro ,F 1' 7
[,'
loat y. z.
1 t u, v.
l.
X.od k Ostru il I d S4ru t~..i 4 pcrosłQje niemu.I fl • 7Jn · i;n ·ony:
Te~ {)
AAol llt:łCJt . ~ll~~J.1l6t
f zniµctf19',,lrf(1.
~ AAol1 a,:J Te:. ~ Pola ,.. ej
( 1 C~ILE Ut ~~ •~1 rtteł
P3QC E,AT[_.. cn.r..o~llllHo
F. SE.
jtt,1 O:
• f 'lit eU)
FAfSE:
....
d a.r"'owc .. ~rut1 urządl,('1Jltt ~,l.;.Lffi)' tryb ~czerti ~ ttlh ~
o,by 7.ffi:.I \ fflo.sć .,.,._. . . ~
•
1
vwJteiltrim dlill t'cSIU :a.If'tii lłSla,, ' ooo 110i ~ 'lfll!J ...-
217
1
W 05lnlaLd'1 kiHru v. i~ h uiG m nil:' P~g,óln-c:go. Po JL w sprav.rd7Jllll'I_ • <: • . u:
ubt1.!J~l mstitiy zwolnionc-.
I · k4 J ~ if!5," Oilili • Pr' 7 'I :5.:Clell 0
C •
t
fiit)n.ibzy od oowoduJ • u1worle1n111: bufora v..•ir.'Tl(; otk,0\1; d . 1.ice mi,e du.że o, amr
ii d'L',ra pros~ fy. z kc6ryth ka.2dy _lcl' ~ ~ ~ cnettc-h tplll'lkffi\ • Aioglibytmy
ys:Lywać j '.dcn p i.'lokąt , ,i,;;o,kicj mudyfikoW!I . lrnms:formu,1ł 'i,,ii;L1 • 3łe w ty1n
1-'rŁ!~!IJ(U ba.Jidziej ~pra ri. - it"r ;ru,. flli~ \ ę«',l pmu~i i ;(AIIJC!i ~ M ·oszcic· abli-
l"lffli~ ż."11ą7;mym c:1. ·sry111 w-.~a\J. iariii!·rn '!>t~i mae,i~I'?.}' iwbta:
J esc :cl rzt, U'~Cł
s _TEKS 'I'),
Y.
,H S.~t.
,;il • )U
re-tur11 SE.
_,.,.n,., ....., ....... ,.-
1er l'!cłl -~ fO.C &:T* S.1-Ho ł
- J ....,. ..........
OlH
.ar.
• J • l.S:
- U: 51. • 15 •
, - - . .5.
- •choi , [1 1 • -O 5..-:
-
C
e C.0 f.
" • ! Of ,
• LO:
- o.-O :;
1d'.c11~csJ . - o.o~.
l c· .
.zcl\ol ( l O.. ,
l '
Ruddat JA. • T•lde.ila ....._. 1 ....,.,..J~
'01,:, 11 •C'j Mt n1 )
.. f;?'~1 ">{ -
• Ol
1•• '.
' f . (l.i:)0,
1erz );
O:
P. il, 2L
l.
l);J
s ·~]P . ~. 2J.
l.
O 1H L
rz'iw1 1tł) .
• O. 11 .
' • 2.
Pflł"p;tilku 1nb:~ $~r'l~pbrzo (I 'N,,")' duLll)• na rysunku ~14~4) n'tO!emy bsc;m ov.
poł i.ony ,e-f~lct dzi<1~JJ1i.1 k:stu głębi ruz •~stu J_, .. Tie • 11 a Jt=S1 1 t; .n ,
P.-.i!:it~c ob ry pr~ m..::~o ~ok nie ry. a" ńc. ~d)~ my ..7-BJ
bufi gł bi po n:-nckt w11nm 'Prudnie:t}C p:r,astok ta. u ) 'IL'Stl))l pOl1 1 ~ ;ru
do bufo o1ó1Ó\\ . T •lłi:o ..,............... :1 niir•pr.l.e7.ruc~i:: 211 ~ w bl.łfor~ 11- g bi. \
Cl"'6••· ~
esl łęt,i ~zy 511 nicpowodZCT1k!m d~ "'D:n&.:.....
wanP l)'ltaqO p~ok~t.a • :,. llttl'nr.zro,c:zysl)' ~ C'c'SCm
~ . gdilC ,pacdru prosto~ f.11,wtdłov. 1: ~jq.tłil1L'ffl 1A•lż:Unłn)·~h f i ~ ~
obml'Ó"" Erctcil w~. ~Y~~ dziabOi ~'SbJJr:n'!)' '6wtlic-ż r»CQO Iii._-~
~ v. ddu.1t!~ D:tłr$ . licf.Cń qt(ttn. dla pm:zroczysty~h
pan.i""'"a i ur'Zi\dnfllC ru~ w)'Mll1UJ4:
~ob.U pr,r.tdł,1egc>,
•...&<.
Dzi"i•'
•K"fflll .uwł,
~
· dla 1/t,~
iu w
.
l:'laSl;)'ffl p~rbic IEf"b)~
plKPOC •
pnyt,:i~ :
t 1,;ai_w w
C ~ ile
\\ ww;.,
J eśl to \Ul•YI ~ r(lł1i''l~!C
_..._.
·Ul.il UYt
c s,ę :t l'n
·-li ,.
..
- • in
~• S
.... , ,._,
~
i ~
JCS1!®c p .,.., ...,.,,,.....,~
:-,• ,
).
. ' o. 2} .
■ ~I 2, •
O:slntn.i mplan j~_>1lle de , rruj c- dzia._bnir: Ł cuni:1
sposób, w ~• s ~c ffi I I zen th:rn a. 3n
kładrii: oolrczam)' ) rt "'"'"''""., ~ctodę b,sml&S,J Ile-z ' \'
\li z poqdancg,a . nu: " u il. .
do I.J5f!aV.U.~iai ""'~łltX"1111UCt}W tcl3rur}, d la I.ITZąWJl!fl
1
·
11: mom ~ ko111~1 modrfi
htb wmo i w btlfm2c Jl!'n! bot Ili. ust.'l'\Vl11.:n· 1: '1Aad1
i.1,,ydajr:ic- nit „ bł ow" ie t ·1wy lub ibufora "' it:rJ:C . y
i-edftich rJm:iych.
awil!"lliiu "'' pófcZ)'llmka t1;; u,;· modyfi ·ujc;!my opc;r-,M;J, alf8 dl p,mi.
fl11j•. ~tępni4: us am J ł a~ pólc:xynnd( ti:kstury 4ffll
~tcczny c-~ t jc:s.1 ~ 4k': "''est}'.
\V \\ ięluzoścc h: · •le m zrch d\ ·
i;Jl.kowi ni~~lfl~k (2 .S lu · c..al ~w cie prze:uQC . ,te (O) Pom MU
1~ .
z i111Łqom mudyfilw · ,,, s l"Z)"llnik ,~ury. ÓI) dodnj1.·n1 du v,-artok1 al&. war: .
d p, ~ li en.I ·o,,,,i-t;"c ci" Jlll7.<:m>C'Z) y tnilJlC do 1 .S i po~uj ·· ·
pn:e-1~~. ~ . Wm1Q ·i dla pi la p~ltOC'Z},:;ty ~ zwii;J; 1m11:. eo ,·Ot:lu
l, m111cJ prze ~ ~ie. \\r ~r~ ii: prcllni pros1ok' t n p~ •~11iiu~ bł J11· t.: i 1,;e·1mu~,
-~ lor,
Io . l • },
t~
li!
;zJ.
z:wifl1 ~limy iyln, plOS"Et)ł( il lłc~tawimy WSp{,~
Mi'}'kr1 ·
-a~ o. Spo,. •od\JjLt 10 "')'J e m~(!! ti:s.1.q alla który • ąrnaik ~ -UJY z powrlfllem rm
~311,: \ cnu;~ :lllffllctcw:mi11 dv.-och piC11'1.\· ~b JGtt
Ił."',.,,..
:!1mJaf6wJ_. Jest t dzillbiti.e
~gzę._.~any koai:jllię) ram1,;•~
J
..ur a.z -~ at
•
pedsumowanie
Jest ce;~ mi rozdzi I pos 1~oon. POd~,o.WtOm, Opisali my pm i ~-i · lkmly się.
j 11weiy two~. pr.a.1.:szmk„ t i °'""'tL~1 "ier.&ietilolki, o fidać IC"b-tury. Zf!ffl·1:nin.t
· l"'l.Choiki m piksck I llR · ni~.., ~~towa_c pikseli:-, :1hy zd$e)',~ • f. ttón": z c( h ~- 'i\1·
• iłlO d<rnni11,:. PQshh~ Sił.; ~"l-!l,'11 metatorn i po\l, Jml, że po~\lrrmm ceytdn•km :Z 1
I
"'·i i _póZ\vt>lę oo wyc:1a~Ie wf..'ISri~ i;;:b w a ~• (lub ro · n:mt."f0\li7aru(: w19.Slly~b
'i\mfo XÓ\ }.
ak: więc. PQC~WS7.}' od 11as ··pnej c~•. będzicm)..- ~bf wd 3!} i uji.:mn~
~ sb derów. 2:anim si\; t:lm m{ljd;,jcmy. !kom I uujmy 11 ~ ~ d)'e:j~ po1,,'tir.'-Jlflfa
* 1
wcó□ych ~głl.dn1 , 1:
• Te.!I gfębL j s, d 01::, lait: ą~ZtlllJ . dzi ,- czemw ~ys u,~m_ ptl'l!M~ •
't>t
~ obiekt rria · ~adHiJ ącc s1i; na s_icb:Jc bł;dlą re-ndt \1,v • 1.)Qprnwme.
f 2:m.1 o.r1ośt bufor~ gł~i j,e l full j plnm1 b]i łCfO i del~~o. Ci . • rzu~
(linu bitu g~1ybokośc1 53mc n0 bu fora 'W !Z)'p3dku zbyt 1111.s&;,;e:J roz421el~•
fbr f\"'b i n 02~ d~i11la · nią)ru~•idlow.ri.
......
~u: angic lbm ,:wryci• , '!4"DIM ·1'" to ~.d "'' cooofu M-. z.:,la oo lolM'lbE, ,J) Oli, a._1.: '"''fi
~i't)p. rł'.km.
~••llcrlllu•__, ...... 4W
..
. all maf)'WII, teclanikę buforowania głębi ż ~
ł =:"-':~i dębi, W ni~klÓl)'<h pl2YPOOk eh "1ok Io bye~~~~I
"" inn.>~11 .aictOl'7.)= me.
• "' ...---.dud,.. gdy . ~rosow~c bufom ~tębi prow-adzi do blędn)'Ch ~ -
~ . .., r-::
~.,"..c ws...l..J-c·nmn 1k ptU$11Ma c;m Z.
O'IOnt.J J.l.Sfmow..u. yv -v ··
- --...
,f \\ r C1lll511: Kfó~,-unr{L bllf-0 gli;:bi u-z,eb,31 prun1 ęl':IĆ, ~ ll'tOŚCt v, bt.1fon,,: .
. . od o,A d"" 1 o ntc u na.tomt::t.lil 1'"1.C 'Wl!i"l)"OU Wiln·i-: . . .
9
\ !J'ł ~iC: .v ""' • • - - •u
oplSUfllC::)'Tlli od[~gło,Śt.
'a \\')'stawie , IGO.RAP H •99 od~y_Ja ~•ę dy~kusJa pahclowa na temat przyszfo · i przęru
graficznego. I re1.cn rcrzy o~aw,_ah kcerunk.1 rnz,-.·a;u pi:-~ ·tu i od.po,,·iadaU n pytania
sluchac~· dotycz;t~e fur~kCJl, ~tore b lyby przyd<łlnt:. Jednym z l'lajbanlziej in1emują
cych. Jedn0<:tcsnie mtJCZłrŚCU.!J powtarLanych fyczcn b 1ło umożlhvienie pmgramisc;~
większej kontroli nad tym. co d:1.icJe sir; Wt:\\'Tlątrz k:uty. 7._ czcniom tyn1 IO\var1.;·s.zvto
zgodne mwu~rdlenii.:-~że w.,;dłtJ~ niektórych trendów odchodzi się od trad)lcyjnego ,odej-
·cia do rcndr,;,ringu i o ~,,.rietJc11ia" kierunku t ·chnik mni ":.I fottlr~atist}'CZil}fCh. a bardziej
styłb-tycznych, takich Jak np. r~ndering po. t.ąci kres ~ówko'9\') )1 ang. canoo11 rendenng
0
oraz nowy\.'. h fonn o · \\'iedi:nia. \\ ) c1ągni.;to ,,·spóln \ mo 1,,il, te: możliwości sprL4thl
są wy ·tarcz-,1qcc do wykonywama funk..:ji rendcrin ńl tegt1 cypu. Jeż ·li tył ·o programi ta
zdol:i dolrlt."Ć do wnętrza k.1r1y 1 UJ'.} ska dtl!>.ti.;p do sprz:ęro na nic-co niższym pozimruc.
1
a pocz· tku 200 I roku firma nVidia -.,. yprodukowała układ gef!'orcc3. który był pierw-
szym układ~m z.a.r,cwmaHCym doslt;p na tukim po.zimnu: z.a pośn"Cinict\~.rem OirecLX JO
lub odpowiednich m1~Li.;rzc~i OpcnGI... Vil lem1inologii DirectX taki d~•tcP odbywał~ iQ
za po red 11ict\l,'Cm mei; h:-m1zmbw \'Cr:tex s:hadcr. f 1rma \ hero ·oft Aci ·1c współpracow ła
kilkoma innymi proou~1..·nlami l "r.:hnolo ii, ~by wypo a. c st~ro\.\'llik, kan niczaw~c-
1
• iszc~emc ~ad-e-r w.
• Proste prz~k~ ztuloeniu " mcchanmruich ·c:r1 .sh.ider.
• riC'.rw za aplikacja z \\ korzysr:mii:m m«haniz ,u vertl'.'x bad r .
Słowo .,,J\:ld~r ' tdo łO\\'Ylte m1:chan1zm 1.:icniująr.:yJ m :t.i,; byc mc..:n myr~x.. Mec~·
1
PamfitlBJmy. że najnow~~ gt!nt'rncj c proi.;t: ' o,ów ~raficzi 1ych ;,.awicr-.t1.p\ wi~j trnll)'•
storó~ nit wi ~·.zo ·ć proce orów głównych. Mcch.:mizn) 'ltt!r1c bad1;r p,o1.walaj P.fO'
grami tom na\\ korzyst::inic caf~so h;~o k.r7tmu. \1,' spoinniakm W 74:--~Ui~J, i ~' ~ 'l •
:tośr:i moich progrdmów prawi~ ni~d nii.: bfokuj~ buforów wi ~nchołkóu . kiedy od
~ lł.:u ~,)'Pdoionc tl. ymi. Czt5eiowo jffi to spowodclWJll ·tym.te n,l'łCrerzt prX _
ten o_ i!RJJ •lak du:i mo riwo i, h,; takLc rym, ie me hani7.Tl1} vert~. h de r po 1
nro liwośc1 wykonyw i niem I ,,·s.ey· t rch operacji n \\·i1.:r1.chołkarh. Pra.1W~1
danych O W1cm:hoflrocl'a RU karc re gratkm -j pom1Jp, zw 11rk.o.;ze.niu \11 d.'IJOO r z d\\
po odów · P~ me~· ~ dimi rtuje: koni lin ~ prz s 1t.mfa danych z pro ·ro gJÓ\,mgo
: k~rty _grutr~ ~cJ! po dr\J •ie pm,1 duje kol"l)'S{Y'\':in ie do te •a z.adJDii pr<)(tsól'3.
""Y~~b~ie:J 1
-~n tego nad11je. , kfffd g raficzny jest p~ ja~me ~ ~• so\\•an~ .
dC> ·ko ., ~-mcJ• na Wt.10o , b Jak pmkonamy 1 ' dałsii ~ cz .-: •• Jest ~n zdo1?'~
~ nyv.,an1 złoton,rch oblic~q 'li\' pojedynczym c lu prnc.e.sm11. \\l w•~ "-~ ~ -
1
---Hrftw
" : . ~--
oznacza
.
ro. te karta o-uu-..,'"'
-'=r........ .
Jest zna.c .
CIJUU'uw'. J>?ffl•~o lego. le c 7..ęstolliwość ze . m1c szybua w PITJCtWI.IZIIIW.
niż czę.stotbwośt proctsora głównego. 8ill8 układów graficlnych mote byc :
ii)i81'1k15._~
,rtjkia, "'J.~era
i,tc}KJniUlfJ4 \'łfrtr.x
,"lradtr
Meichanmn vcr\f:x shader Jest ~m.1du1mim,y mz dla kaidego "' i~"ilcholka i j go podstawm"ą
dao , ·r,;j:Ś LO\\ą Jest w1er1~hołr..'k . Formaty,. •ierzchołków omowi bardziej . zególowo,
kiedy dojdzi ·my Jo momi:nru twor✓.c1lta mcchanizmó•111i• sh:nkr~al na rmc .1~ajm)'.
że dane o wierlcholkach ni(.· maią s.ciś lc o ·n:ś.lon 'gn l)'JIU, PonLc,,•ai mamy ~ ~kO"\\'tlą
kon1rolł; nad SpOSobcm pr.1etv. ar.1.11,ia "1er7.chotków. moźemy zorg,a111ZO\\ dane o ·it.:ri-
chołkac:h W dcnvnlny spi., ... óh. Pr1yktadowo, jc-.żcH pr7t:-~yłamy wierzch łki prlttZ pot •
funkcji whudowan,•t.:fl \\ celu 1d1 o~" iclh!nia. normt1ln.ą wierzchołka oraz j ego kolor
musim umi ddć ~ odp,-.wii.:tlmch c1ęścisch danych opisu ,...,i rzcholkt'iw. Gd ,by ·my
tego nie zmbm, spr1ęr prli::tworly~by tbm: w zł ·j koh:jnoM.:i ; ll.Z)'Skal1b ·~m) nie 1ą•
dan ,, yniki. \\ przypadku mc,ehnnizmó~ • cr1e. "hadcr d=inc u wi.:rzcholkacłt moi n\
pr.a:::.ylać w do, ołnym formaci~. o ile tylko p 111i~r nl}' o tym, w J ki sposób b tuz: ć
1
le dane M;\ nątr.r. mcchamznm s-hader. \\'ykon}""~mc- Lakich. ztucrek jedym d~a 1.aba\ ,
nie je t dobrym pmnystcm, l)Onic, aż nas.z kod sraj.i.; ii: nii;czy_w_lny. ale ~ niektó~·ch
k.-chnikach , ykorzy ·mjcm t •n ~posnb. a.by , ykor7.)'S.tać le cl c1 >1?lS\1 w u.:r~holkó\ \
które w innym przypadku nic byłyby V-')'korzy~tnm;. ~ y prz,et\\/~rz.m__ w•~- ch~1ek
mo~ · być okre.~1ony p17.ei 16 wi;k1orów wcj cio, eh op1san eh przez 4 hczb zrm.en~
nopr,;eeinkowc .
Rejeab'Y stalYcli .
. ,·erte.\ ·hade:r posiadaj~ d stęp do zbmru lalych, do których w
fechmtim h· de~ mają ttwaly dostęp z ~ra\\P·c:m od Y.)'tlł. .. aJpoJ:>u,larnitj~Z)~
me ~~•zmY-c~ iltalych j.:s• u wwi~nie ma 1t'r.Lv prze~!il1..i.lc n lub mnych d;io)'(h~
SO\tJamem _I) • . holków. Pamięt.ajmy. że m"hamzmy ve.rte :i.had , są uruc1.~~,-
c.,.•JG1tt:h wrełu " ,erze_ . dl 1,,. . ...~r . ''114Ul~
~ J - e wu:ncliolka. Je:żdi operncju J~l p o ~n a ~l.'g,O w1~holka, llzv.
dJa _k:lżd gO L., \ •n i pl'".l ka a j cJ ,,,y1uk JWCO stal . Pn:ykładowo t.am 1·
aaJ warto wy,..0001,; J... . . . • . ł k-.1-· • . Pl?'t-
. ,.·11.........111cjerZ"' 1 1ch pózmeJszego ąc.ze na w :U\I.Lr mcchar11zmu 1......L
k3Z}'\\'alll3 r..hfl.U [■IW ~I '
1·.,,-.; r a7 i nn..ekaza'Ć \.\''r'nlk
M a~yma
L . ' 1· b
na ICZ a dnstennvc.h
·~
motna po IllL:Z)"C. m..... al'. IH ł - ,, .. "El' •
tllll,,
--,
• l'VljU Verte.xShade --co st t rukt\H)' '30CltPSS.
1ecs1 zapisana " J",...
Rejestr adresowy
ReJe.Str admowy je. t pecjafn., .m r ~esr~m ,po7~,·ałaj~ ·_m. na_i~dekso~~ie st3ł) .
Prz, ·łsdowo mc:,i'~my u„ 1aw1ć kllkai stał): ~· a n.,u,t pnrt.: .r..a~•-ac ind ks \\ ruc~l.DeJ
• ~.,. dnnvch opisu wr~f'lChoł ów. \\' maari; pr.1-1.:t,, arz~ma kolcJnyc h ,, iCJ'?.(h •
zi;'"" 1 ., d ,.. .
,,i • k .
u {3\1.'fflffl.Y r-cjestr 3dresowy na "'1lrtOS.Ć odpo\.'-'Jeuniego IR Cl'\..'iU I ~ l.ljt"ffl) ~1IO)Ć
ze w obliczenmch ~dzie \'i ·ko.rr.y ·tana wla ciwa ,talc1. RejcsLr adr~ ·owy mól't b)ć .
~ z em, k1ór daje wielkie możli\i.'o ·c1. ał1.: j~-st ro pr'l\..,dopod bnie tac~ · ~ · •
u
rtóra n uoard~ '"''Prow-~ w błftd. Z pdn m obJasn1cniem tcJCSl.rU adreso, ego ~-stn'i -
mwn i~ do ·z ~u. kicd f będę omawiał tc.-chn1 \ po :uującą w korzystanie~ ie-
.so\lft:go ,,. praktyce.
~ępne 1nslrukcJc zestawmno ,,, t.1hel 15.l. Wykonanie katdej insirukcj.~ zajniuje jtderi
cykl - nawel " 1 prLypadku. bilt&icj złołonych operacji~ ja.k np. iloczyn .skalamv lub obii.-
czenia odle~ło~ .... i. "
Każda z p0kazanycł, ,i.·y;,cj instrukcji wykonuje. ię p dczas jednego cylclu. Ozmacza to.
że szybko ć działania ant.-chani.zmó,..,, sharl~r jest wprost pr1.1porcjonafoa do liczby z:isto•
sowanycb inslrukcji. T iłJ i1 gtlz•c to możł iwe starajmy sir.a; minimahz.owat c~ liczbę. Sieie-
góln i~ uiytc.."Cz.ne mo~ą oka~, się ta:kic mrutN cje jak mad.
Dla lllr...."Chanjzrnóv. ven~x shader 1stmcją 1akże zdefini,;>wooe :makra. Ma ·ra ,~ konają
,Popularne zadan3a w posLac1 zbioru instrukcji podstawowych. Do wykoof\:i..'3Jlia ]:'.M)Jlll•
lamych zadań mogą si przydać makra mnożenia ma.ei(..1'7)'. zęsEo są one optymalizo-
wane programowo, w przypadku progrnniO\l'e:so przetwarzania. ~had.erów. ln.ne mnm
mogą być nm i~j przyd'atnc. pon it:·waż kcme:cntrują się na zadanmch z:wię1c zone}_ doklad-
Dości której z.wykJe nie polratf:mj~my. Wad l makr ji.!St to. 1e mog· on.e przeslomc neczy:
Wistą liczbę ms'trukcj ~ wchodz ·cą w sklacl mechanizrrn.1 shadcr. Przykł11t1o_wo. makro ll\4_AA
wykorzystuje czterv in~h1.lkeje. Je.żeli zdecydujemy .stę na wykort: st~me mal:..r. parmitę
tajrny o tym~ ze nal~ży zwracać baczn uwagę na hc~bę insttukc:ji oraz~ makr.i Z't\'~kle
wykon-ystują więci,;j niż jedną in trukcj~ podstawową. Do tępne m9krn 7..esiawumo
w labeli IS , •
.....-Fonnat Opił
Przesyła waność zJcdne,g~ ~jcstru do drugietJ,O, hlslrukc:ja t.i FZ)'dajc~
:;s~~~ • do przekazywania wartości. jak np. W$~.ędnc ~ksł\&ry ~ tr*i ~
do mirszani.a (:ang. ~1,·i;:łiłtg), Ta ostalnta opc-13CJll 7. tanie opl.Słna,.,., ~
~i.
w ~ j c ma •ym Iną wartość ka,;dego 2: kompo11rn1ó-w i Pt"T.Ckalujc
.JX }"tl ·•
~Js.;; eo. jt d'o wcllitom \li)'fllkóW •
JSCl~l
\\')'ml.kuj,: munmainą \\':u10.ŚC. katdi=go k.omponel\lM\• i P ~ j t
111
Ją do i~cktom 'IJ. ymik.ów.
dp4 lri)'Ol • Ob1k7..a ilocxyo ·karamy dwóch "ck1or6w. \' · ko :r.~· tuJi\C " szystl:.ie ~1)
J~ eO. kompem nty.
eJseje
($(1 rsq 1k. Oblie-1 odwrotnoś pi1;rni stk lcwadrntowi1:go wJJ1f'IS:Ci ~-kalęmcj.
ri JSC1 0 · yłmnysty\1i a.ny j • t komp nent , wclctorn W('J c im, go. o ik me jest
on poddany operuj i mieszanie ang, •1,-i==li11g). \Vyni · jes,11apis)""-" n '
\\ e ws.zy ll:.rch komponentach wełctora -.i ynlkowcgn.
«st Wyn •
jStleD.
Obi it"m v.·ek1cu odłegłości n pod.i.ta.wie: d\ -OiCh "' drtorow w~J c1owych.
11 JSCU!ll Wi:ktor l,,,eJSCl eOm postać . A. d d. d d~ A). na,orniasLw ~sc,el m p(I.
. ~-. t/,d. A, mld ln$truk,cj ui mote by _nic..--co m ••I e cUatąw pn)irz),11D)
sti; JCJ W' dał z.ej C.t\'"Ści. lt1tdy bc;.-dzi~my obs -rw wać j "'j &i hulit' w P ·I)«
e~ n
~ JS.CleO
logp n1 .
Jsc1eO
-M11W Format
-3x2
Opis
L(Jn • Wył;ormje mn0łt11ie vc tom we·śc·
~ mwcg_o pr.re.1. ml il""~ 3:i.:
l-«aClf i.O
n113 'rljt")l k . cirO. W)•kor1 uje rru1otenie w.e-l..1:ci -1. _ •
wq~~Lowcgo rprzie7 m ;er7. 3x3.
Kdc1erzO
:4 ~m . •~h to11ł. W;,kanuje: mno~1~ir: wck10n1 weikiGWL'11n
.,,
"- •m ,,
· ._;,~ li"' ....z ma 1 -,x4 .
Mac1erzO
~ c 1 • ~~~to·O. W~komiic
~ fllDO-ii!'mc ·w·t„wm
1~-
wtJŚCfO\\"CS,O
•
pr.lC lt'IIL ie,rz 4 l .
Hd~terzO
l yrnk. t orO. W,-konuJc mno:z.emc Wi!ktom Wj:j iowcgQ pr1_..ez l'r'lil.t11.~,1; 4 4.
c,erzO
~Kp ftJn • ~JSC e O dpowiednik insuuk~ji expp da.Ją.cy wyn;k o zwi~.011tj dokL-idaoki.
log „J ,, , ""1Stle Odpowit.•d111k mstrukcji 1og.;, ooj~y, ;nik u l'IJ. iłtksZ-Olli:j dokł~i.
frr frc ,.y 1 ·. Ir: JSC l e Ohl1c-:rB C:t:\'-sć ulam ·ową komJ'l(lm"lltów mu)'-
Pn.ed utwom.'llr~rn shad rn nmsim)' st · OF)CWTllĆ. c-.r.y nast. sprzęt jl.!.~ w stanie go absh,r;h·
Do 111worz~ni11 shmkra poco:<1;bn Jt= t jego dd.Jara a oraz la,d Poclobn ie: j dekil~µ
fu11kcJr, de ·lamcja shad TLJ d Jinmj~ fonm11 par~m1drc,w ,, ~jściow 'C h. Pa stwol'Mt...J
dckJ.ar.lcj i naJdy go ~ ornpiJown • .a na konie pi,infonm.h•,:ąi.; ur;-.ad.zc,nii:.:. ab. u :orz)
.sh dt."'1". powoduje to l\lh~·oTzen i~ \1,r ka:i.-nika (Ućh \\ ,. llł • do sl~td f'1, który tmoim pmb~
do funki.;jr Sc ertexShade•. próbuj1n: zn:cgófcw.o przeanllliluw. ć kazd z ,mie-
niony h etilf'Ó\1.'.
Shadery a urządzenie
Jeitdi o~i; ~ limy urz dzt."11 ie H. otrzymamy u, oiJ iwo 1 • pr.1~·1u , Jeżeli n:nSl sprz ·t 11
obsługll c
ro 3 ha · ;.. • ....T •
mec nt mvw ~..::>. sha-der, możemy m.wor.zyc urLądzenu:. ,,. kor1.)'StUJ
p gramowe p~1w917"'ta i I! w ier-.r.c'.hołków.
_.
Utworzeni• deldaracjl
l)ekJlll'ltjm służy_ w msadzie. ~ ~mym a:ło'!1 co format fVF Wć ~R.{rucj~ pny-
klldach. ~n~UJC ~da. ~Ju_1m1 ~ I lb3 do 'Cź}'n.icmia on.z~~ teh .mibć.
DelJ;mi;J.a Jcsl mbhci} Wari~ , ut'!NoqłlJlliĄ za pomocą_ strli nmkr. w :s.u.rm~ Lun1eje
~~\\' itć makr, eh: sko□c~rt'lnlJt sa~ .Przede ~Lkirn na lrze<tb.
P~"KC makro dcfini'UC 111n.1mic:ń. który ~zie d~arczal dan~h. W,.; wn:ystki fi po.
pmdrlicb ~b~ kron: ~l;o~wly poł(ik. ~j~ wbudo-..,•anych. za.i:.lO!sow-.11iśmy
zmy vcrtex !ilt det, mogą JM}b,l!mć daru: z ~il"lu ruumiau.
strullllll!ft O. Jednak mcdml'I
Dzitki ,emu m~0_ :taprsy-wać wicl'e danych \ w,e~u h1111nitni3i;IJ i ,~i:..--z)i F, kii:Jy
sytua.e-ja ~ c ·i; zm •i:niać. U5.mwm~nfo tÓD\)•ch :tródtl $b'uJaii:ni ni,c j ope-ra.tją Lał:
kositO\vnąjak zmima :t.awanośc.i lburforow. iOpiij~ Nooi: mnkro ma na,~tępu_j c:-..ąponaf~
.·so_s B c1 ~t ..
Mak!ioynlillńą1 it.tźb,: d'ostępl!lycb S'l:rumieni mma miilrlć \\ł'CVt11, trz sL1'Ukrwy 03.tlCAPS8,
Drugie mteR:sująi;e DIIS tmakro definiuje reje-sery v.·cl ci-ti,..,.-e dl 'kM!dcgo r. dt!:Mkn.tó w
wieacbolJ.:a R;jt: ny w .są "8alogiczri~ do makrockfo1icji fammtu FV - opi.syv. .myc-0
kiJb ro~d.zi,al6w wcze ·t'ljej. Postał makrajtsl nast4;pując :
. ,SO_REG4ReJestr, Typ}
hlam.tt/ re~
I.W', .at.
(llf.'St€_81..EN 1 [CES
QD~_
,fal _PSllE
~•SOC_DJ FFlJS( „s
{Sfl_5ffC1.: ,
000','SOE_TI:ar.romo
4l3m'SC(_n:c~
i.00'1~_ :te
CG: -TO:COORDJ vl
-iE:(( l
- TE:ro:no.D5
~...ltX~.06
~_1[[ 1
C-661Y•........,.,__,
tl~~so STP.EA~, O)
llJmS.O)BicDJO'!SOC_POSI fON , Dli)•,so- FL 1) .
' •'SO_P.EG fO""~Snf_OI AISE. 030' OT 00.oeot.OR>.
[l:itJ•SD_S,T I (1) , -
~,ll!'SO_REG(OO SOE_1EiCOORO. OOO~DT rL r2J,
· -~o- E''iO( ,I -
J:
~blacja1shadera
1
Po u~niu -..I
®kJaracji
.• ·
nadszedł czar._~ :.tb • doL-... L1 . •· ... , . .J
"'Vt"l'o\; tt.:1ł::ffl11,ąCJI S,lfrucra.
ft.Q~ ,,.~
Z)'TIRO C ta
pGfeg.o., l'H!.• flmceytruuu
r. . kodl:I• ~embkra
• z. plkku . lnb ...,.,
,.i:-,.,..., · k ·1
uu1w" • s OIIJtlfll ov.;.uma~ go do wyko,- ·
orwJ1ic.neJ
.
,o-rmy
•
bm:eimeJ.
• ~. ••
.
':!I
aJprostszym
. _.
:snos.obem
..-
na '''"'1.1'1._ - - , •
.,. _. rwil:JDJt:· llii:J CZ'," nnosm JC5,1.
\lii')-ll.-orzystame b1bJLOteki D:SDX. Dw1it:. potrzebne fun'kt:J'c to OJO "isSedl\~",...r.n
OODXAss@rnb 1eShat1erF r le: .::.:ioaut: r ona
Jak v idlimy. t O\\i1c funkcje są do s teblc ~u-w•_ę podobm:. J~yn:t rot.nic:, pol~ , ,ma tyrA.
~ pieNo':iZa funk.cJ::s pobu.,r..1 kod s.h dcm Jako parami;Lr, ejśc~o~')'.. nntomiit."1 druga wczy•
ruje koo shadc.rn z phllu.1 . Dla" yJ..unic:niil op1s,-ę funkcj~ OlDXA~sem e5hdtltr. Jej ps.ra-
rnetl")' zesrawiono ,,, uibcli l S.6.
Ulwarzanie .shadera
JeteH wykorimnie fwtki;ji DJOXAsserb eS,hader :2-.akoiicry s;ę sukci.;sem„ para.me-li w.,SkOffl•
pll<r,i•anyShader bę---dzj.,; 1..awreni.ć wdtai:nik do skompilowanego kodu sh d'--ra· ~lal11iią
czynnok:1ą j i!St pm kaz.'!me skompilow;;inego shild~'<'.ł do urJlld~'!m . ~ ut1,,,on,,n,i uth\\~:
który meŻlt1~ przekazać dn funkcji Se \lertexSMder. W;konuJ~ się 1n 2 fłQlfllOCą funkcji
Creat~~erte~Shader:
E'Stlli Dlr« JOOe· 1ce-8 Cre-:iteVerteA.5-łlłlder
r
T 1" ~ode,.
o a. ?as. os Hanie).
T 511
der
..e1ea,
11
---
Fu: kcjll 1n poh;.,,, "'a ·.,&,ik do deklaracji sh3de..,, ~r-.u: wsliafuik dO s"'1h,IIJJo~;
bxJ1.1 duidern i ri.vo~y uchwyt sharlC:"ra. Aby un oreyt $hader Prul.W'an.;any p r ~
RI.Qma wykorzy$1tt ~ I r Zdstos .-,i}n,e,
W,kor-zystanie .ałlade,a
cllrutizmu ~crtex shtlder, jeżeli T.ajtllie taka polnl:ba. \V 1ym ~lu wy, o!ujelll)I
S@ "" e.sri.ioo ·, ale za1t,iast fMIIIIIU l'VF wykonystujemJ· uchwyt do shadera. ~
jak format l'VF iniom.owal •Jlrąl o spci obie pr,-.,1,vauania wierzchołków IJl2tZ ~
funlo::ji wbudcwan ·eh, Clk uch11,)'1 do shadern in formuje
Pr.ietw~ć wleracłto!ki we\\~ą•rz :ihac:krn.
spnęt.
w j aki Spo<ól, JUld)
,viękno&:; Pl"-O'PS,dkó" fcfy r.a~ 115tawić rude shad~ra. lałe !<! naJefy USII.-
W ~ff
~ "Y\VOlani~mi fuolccji renderingu, klńry,:h shłlder nu, dó!yczyć. Wllrulśei ll"ffll!;
, ' "'Oey", dop,il6 nic >Ostaaą jawnie 2roodytiko1•ai,~, p ,niewat shodcr nie 1111l.k id:
modyf,lrowat. Stale mech~ni nu ~<:,t.,x shadcr usta"•• się, wywołuj e m,,'IOd . ~ ',e •
eXShader-CcnstJo;
-ESU. r ro1 r'et t JOO,Mcee .Set ,e, >Slrade c..,"l an ( •• 3RD R~;es tr.
00'1'S vo1d "'.00 neSt il l.>t .
L ClbiłSta bt:n J .
~ są
l'ar-omtD" Re-J~S t okrdfo lale, ~tóre nal~y u 1aw1f, notom i I bufor zawie,a wblci0<
~ !,ę
dali·.
13 ~JJilll,lt.lJmy, sralc wektomn,; kiadaj cymi si~ z zterecl, wattoki typ~ ' ·
1
są Prn·kładowe.
~ - 0, , paramu1r
00 1 Cl~Std ye definiuje lic ,vektorów. Jet.di lic,!,;a ,mi,,ch j<!I
O 1 SIJII•
,. ' . ~s.ti.1, ·eh, loolojne
w,~l'lJa 2· :., wektory. · - J
w-lawian.: 11 kolein w CitJl,l wt:1•
c • C • c I cJ. lliJ~C2}' zast.o.sować n stępujące w wohtnic:
~r·
- r, tlze en:io.,5e krte..s...i . r<ons t1n ro. , a , e, llane. 4) •
Niaaenie sllad,e ra
Po w konysbniu hadern (7UwycuJ prry kolicu propnu) n:Llc-zy g-0 ustm\Ć:
fStlL w, -ce 3DfJe.\ 1cea -oe e en1?...sha1.te• _ • SMoe-ra l.
y..woranic ,te~ metod>• powoduje usunięde sh.ader.a. ;i:woloienie 2B3,0m\-.i • lk1óre shadc1
""''YkorzystuJe I f>OZ\li/ala na ;pr.zejscic do następnych c.eynnuś-ci.
Zastosowanie shade1
1
rów
do figur tworzo:nych za pomocą obliczeń
\\t nicklórych przyklad~ch rwt,r..:yliMn:.-· bufory wLerzchołków dl~ figur i '"~i11liśrny
je wiell'zcholk.1m i o określonym formac;c t FVF). Wi ~rzcnollci ti.: m0-ina wykorzytnał
z mechanizmem \t.:rte:r-.. !ihader. Jeżeli forrnl.'łt FVF odpowiaoa formato,,·i opisantmu
w dcklaracj i ~ hadc-ra. \iVysla.n: ,_y usttwić verte shadt.'f i re-ndcrowa~ hufor ,ui!rachdlkóv-•
~ wykorzyst.arn~m metody I.JranP -n t· i.ie lub Draw ooe· erl nm1tl1le.
~.nci,m; transponowana jt.-st gotQ\Y".i do przclc:uania do ih, d~m Jnko 1.b" , stafyd1. UJtl·
WU}ffl)' kde >d Odo C3 jako Wit:r.iZC ll'li.!Ctt!l'Z)':
Po 11· ta~ icmru s:t~fych shadcr mote Je wykor.zys1ać w celu pr;;4!tw~nia witM7,dlołkOV.·
Te-.-a_z m • n .P ;,,e.an__ruizo\VcH.llic kodu ,•'-.'.Ttex ~h, dera. K y z kompon"'ntów ~~' •
Cllniy h WJcrzchufkó""· możQ znałexć. obliciąjąe Uo zyn "łmł11my p ey Ji v.n •o.ieho1
oraz k.ai-d ·go z 11 iersey m cierzy trans,pono anej. \\' rozdl1 Je 3. do,11•rt■dz"eJi. my
1 O O
.V O 1 O
O 0- I
[
lO 20 ~
i;IJ ( , O O, 10.
~1 • C'O. 1, O 2c:1) Oll'o•!r ~"'r=O
c:2 • (O o. 1 :M'.I) CfJotr •c1
c:3 • (O Cl, a, , • oPolz ·..cJ•c::!
oP w •~ • -c3
• oOO. ·15
Ten wi~rsz po",.•odujl'. prz ·k:!:1..arue kolnm wu::rxchołk3 poprz 1 shadcr bel modyfikacji.
Pom~mo t 80 'ie nie" modyfikujemy dlłnych, \\ d l rym ciągu r usirny npiowac dao_i;
z rejestru ,vcjśe;.iQ\',,'L'go do ,~jes.tru V'I ynikow~o PL!łn hJdcr omów;m podc.l an11h•
lO\ anfa przykł~dc)weJ ap l ikacj1. NHJpicrw jednak om wi z11gadn1t~1a zw iąlJlile 'I. ~'Y-
dajnokmą,
Problemy wydajności
Pamiętamy, :i.e vt:rt-C shader Jest uruch mm.n ra1. dla każdego w1t!F2ch ,ka. Z u:go po-
wodu jakakolwiek op ~racJll dolyczą; wieiu " ' ·rldml Ó" puwmna by " komin . raz.1
a jeJ wynik powinien być pri:ebzany Jako stnła \\r' przykt, dz.1 · prosL,:go s'had m mogl •· my
250 Cą-U IV • Mech~,- ałlachtr
f'Z) tUJi:;111
Kod
Koo doł ny do t...-go roał7.r łu jest prosty i konccntruji; si"' prze wsi:) Dl
\\ "eruu pm'tesa vr:ne, ba:dcra, Pmwócimy do aplikm.::ji z rozdzi lu 9., ,n
r.re.k zw ·nia ~dą odb} ~ ały !i:i~ "~½ nąt 'L shad f"J. Powinoo 10 n m
ml "' córyth ~~icmy1 J>lltr.teoo\, ać do Impknk:mo\\ a.n la praw l\l, h ~
w o!cjnycłl rozdżj t eh. ~ rysunku I -_4 pokazano mu1 kranu dzjafaJ e-ej h
pli ~a ~ozd.z.iału 9. pok~'WiJł _(:zt lj' ró~m; widoki t.·m~u. n tomiast J} •.
~~ r„ m ro7..tU1.1le- W) korz)'SIUJC Cylko Jl!dcn 7. nich Z punkcu wrct-:c-n,a bn ra 'li ·
,e anu te idcn ycm
Ay_s:ur,ck 1.s.4,
lJ.ordrxJ p,rwa
trp//Jacja
ior.:y,ngqro
shado
Ponjiiej xnajtflllje . ię kaci irn;pleme:ntacj i nowej kl~y. kst 1A:I ol«o zmotlyul«ńvrut wmj(ł
llrodu 2 m~ału 9.~ dl.a.tL~n omó,viii tylko uowe elementy. (2ylel□ik6"\ ktÓJ"ty n1(! ~11
opjsu kodu 2 rowia.tu 9„1.11ch~t m~aby to zrobili:
nclvoe ·.t,,ph arJ,if'rost,"ler e.i:~hadi:r "
W dalszym ci~-u twc)FŁ)'fhY fOtmiH FVf. pomimo tego, 1J: 11ir; p-r~emy go do funk(ji
Set'ierte . de-r. Fom,:at FVF jest w d:i.lszym t i @ ,V)'kaf'1YS-l}'Wmlj' w i.e tw~el'l;a
bufom wrer1...ehołków~
-
~fme D:m! F' FHOS Mi rnZCH C0'? ~1/F ), Vl
- OJOFl.'F _Dl FFUS.. >
'
ne l CZBA_,. tER7CH) O: 20
-~ to 1e KOOlk - 1JLL:
aa
-ant u()
EYTYPł:_REf: . zł l,
e z,IIQ' o
tUC28A WlEIIZ
S"'lleOf( -
OOOOS.ł!GE
030F.~F_P Ctl.
~_Dti:.JJL .
-"' ~1~rLct-iol )))
re rr1 FALS{~
@ :.u:ho1 ,
s,1tt,J <Fr.OST <_ IERZOO.ttn:
pel n JR.:J o er7r.hol O.
return ROE.
PfiOSTY_MlERlQO. K ~~1erzcMolk:
· 1 ·l l........
- ·«s] .kolor - Oit ff
r •
-::-Un l «x:k C) :
riN rn
~ ztafoone ,,·,e.rzcholki :r. d<łłnvmi o kolm.r./'r "ho.tłt:nJ 1pro tszy shader mQ~. c
• .:1 zapn:zenlowa.n~ w dal ,h
ro.zdziałaeh Zl!łłlcro i i: b:udz1ej skomplikowan :
• a .,. • -·
• n:> c
cons clla~ 0 rost ·S ~der[] -
~vs i \n-
- ' oPos :.:. •O, cO \n·
oPos y. ' O, Cl \ 1•
• ,., • oPos 2. ·18 . c2' \:r·
"c'?4 oPos ~ vO. c2 \ •
~ , 000. 5 \ ••
Poniż j znsjdujc ~ii; dekfara :.1a haocn1.. O re."la ona t.,:. "1crachotki.,, , orL vwant
przez hadr.:r powimiy z:lw1i.:rać wek lur pozycji oraz koloru. \ i,,;rnh(IH:.i będą pob1trane
ze trumienia numer O. Jc.r,eli " ·st~•ą ni ·1godnoś.ci pornii;&)· dekJ rn ją shadi.:ra a or-
lJlłłtem Yii ie u-holków. s:h:idc-r ~-,ędzfC ł' orz. ·I nieprawidłowe d~nc lub nJStąp~ · o w1u,a..
1
ajpicrv.1 dokQnu'em}r as4:n,blacji ł1 dera. ,rykorzy tują,: bufor ma.kov„'Y ~a\\'te ~llC)'
kod :shadera. W tej ap1·km::j i kontro] ~ęrl ' w jest mmim lna, le w ~ • v ·• ·eh za.st~
sowaniach by mcńe trtt.-ba by było sprawdzać zawarto ~ bufora bt xiów. sd)•b}~ ~mbłm:Jlł
. . r(
->'iet ().
St-ade ~. On)
...-.n,r-n E_F.:Oll ~
Podsumowanie
W lym rozd21 fe zall-dwic .dolknęh~my„ poosta ,. dorycz.ą ych h dcró\\•. J , root)'
Wiltn . że .nar żafo ob}aśrtił poj~-c1a taki~, jak im,rrukcj - t::1.y rodzajt: rej~. IJÓ\\ ..
j _ t ioritntow ć Siii w f'll!C?:-Y"' j tych możl'iwr1:sci.1 h ·haderów. dopó i nie pnca? '~
2\IJemy technik w kolejnych roLdziaPa h. Jt=żeli ,,::-i.1 jeszcr.i.: nic wjc:my, j kje mot•
Jiwq 'ci sh.•d'erów. nie priujmujn) si~ .• famy na to du.t cZJ:su 1 a razi~ za)Nłmi ~Ji}
kilka ważnych rn formacji;
• h.a , "r/ pobierają d m: z r.;je~trów \r.'t:JŚ 10 ,i. ych i r~pi. 11ją do reJ trów
-w _mikowych. Po drodze mogą ·or.cysta .l'C tały-.:b oraz r'CJ esuów ., ~z:iso,Vt. dl
w c łu ,rykon, , rui ia n.(!(;zy'\\ rs1 h oblk-Zi.;D.
• Rejes.tr d1eśowy ( (1ress) może tuży<: JB ·o ind~k do reje. tró,i.• 13~)' h.
ł Liczba jnstrukcji, jakie mo c zawi ro had r. j I n 3n iczom1 do 1... .
• .Podstaw<J11 e tn trukc-je \\'lkmz-y·tyw ne \.li' ~had ·r-Ach sini d4 wy on) '~~
pr - ~h ~ racji ~ ekto~ h. ln lrlJkcje ,i. -;, <:go rz du możemy onf"-X,
gr\JpUJąc m tn1 1 pod I \\10,vi:.
• Maiera dostępne w m e c ~b \'crtcx shada,~,
wytonyst)'Wanycl] właściWó~i, 1111t: stosu· ·e
aby nit- przekroczyć liczby dogwolonych ~ :~2>'
~llslcr616wdo~
t.achować oarotnołć.
ł Mieszanie, ncgac,3 Ot"ai! Z'Qpisyw.•anic ll'tUdc 'fa hie_twy-Jd .
s~one .,dl,lflnO"Wlf" - rnje wj ~ię z k.O!ilł~n, -Lr . C' PDŻ}'ttt:tne operacje.
l'l:.zemowyrn.
'i/V
w 1.en:cho-tków.
na kolorach dla fazy tekstury dają programiście niezwykJ kmurolę mad proce e~ l~czema,
ale nie oferują zbyt w~elkich możliwości. M..:chanizmy p1x l shru.ier~ podobnu! Jak me-
chanizmy ve:rtex shader. poZ\va łają na o wiele doldarl niej sz~ k:ontrol~ nad posob~tn
pn_etwaimmia danych prlii,;z urządzicnic. w preypadku mechnn1zmó, p.ncel shader dane,
0 których mowa, to pi ksr;lr.:. Shader d2iała. z każdym pikselem„ któf)~Je~ ~nde~any
na ekranie. Zwróćmy uwag~.. ze nie je l to każdy pi I ~kranu. a rac?eJ kaidy P1_ksel
wehodizą,cy w skład p:irymrrywu rendęrowanego na ekmni Na rysunku 16.1 pra1;:dstarwmno
RyHnek2.&~1.
.\tił!js~~ ~yl1ani..~
patl sJ,,atkr
wpDtoku
~kJVłaftle Kdi:NY
(~tur liińel\il~
I ~"°
Raat<Jryz.aqe
inne· ~jr%eillic na dol~ etapy ~nderowooia ~kaz.anc Il~ ry:sun~u S, ]. fak widzimy,
shader IDll wp~· nil ko~orow~mt: daoi;go prym1ty,.,.'U, iłh: . pr2et\\ ~ ~)' pne:z sha..j
pibel~UTilim trafi .na ekmn. :nad3l musj być PQddany h!!>tOWI alfa, gJ~b11 matrycy,
Pra\.1,/(Jopooobnie j dną z najwi ęk~zych 7..alt:t mt! chanizmów pixl! I :shadt."f jc:st la. i;; UJ)lil&Z·
~ą one pr.t~tHwianit:: z~oi.on c'h o,pcracj L i zi.:nia rd::c.1ur. ~'bJ.1~ faz tekstur Vij'ffl3gaj,l
l.l:Stlł!,,,;ani operacji na tcbturach. a11,rum~ntb\\ , ,., spólczynmków łączcnm oraz lallru inn~
5"1.wów. tany te pozostają „w mocy·', dopóki nic zo tanąj~wnic zmicniont.:. )N wynikJJ
h:go składnia je:St c;,o.:asarn i n1e'.f.gT3bna, :':I C.1".J1St1mi tmd11c, konlrnlowac: "'szystkie IIJS1J-..
wienia. Medu~nizmy pi cl sha.der zamieniają,, )'\Hlbrtta metod Set Te --u eS ageS ate
t:rią sto5unkowo [PIOStych in.,;•mkcji arytmetycznych z pnxjrz:y~cic zdd1r11owanym1 .!ifgll-
mcncami. Kit.-dy jut zapoznamy si 7. mcch.m 11mami p1xc I shadcr, z pc,'ITlOSC-ią ~ Sił
one bardzo przycbuie.
~k18.ł,
,tJd1,~tłhift1
jUIJ:il
-rd~
P,zetwarzan1e we~ttz
mechanizmu pixet shaoer
Poni1ej umi~zczono opis ka2'clego '/. komponentÓ\\' mechan~zmu pi. e1 hadel:'. W tym
romziale umieszc:l tyłku 7.\vir;zty apis. Pozostali; infoifflt1Cj znajdą się w ro~dzialacb
n.as.tępnyeb.
RejeatlY statycll
Stałe me•ćL..,...,, •-u pi el hadcr rna,i doki ad.ni~ la.ką ~arną po błĆ i dzfa-hmie jak S1alt
r1a.nl.c;11u " , • • · -Ć •
rnt(:hanizmłiw venex shMie-r poza tym. że i "h wa~oścL powlnny ~ 1es.cc się w ukRłit
od - I.O do to. ~•-. ·~tu przypłldkach SpC>t~my _aę z dcfimowan1~ r:d;:ch_' i l , " f ~
m iłlwu2nm pixel sbllder. \V wi zośti tc,:hm k zWl:µan_.. eh :i mt~ ~ '. pixel sbader
wanoścm lllle są ra1:. ZJl",'isde stałe, co oznaczt1, że mgdy się n u: zrnn.maaJą. Zniody,fi.
kowane wru1ośc~ fflfYlOO _pl"'lekazat do n1r.:ehilt\i:lmu plXel shader La pomocą median.izm
m hader. Jeślj j~ t tl.k:1 potnooba.. to wmc,: i ~ralych moma także p~kazać do
cbanjz1mi pi:-:~t h.adei- :r.s pomocą -.-.•ywołan A.fll.
Rejestry tekstur
ReJestry tr;kstur 00&1a.l"tzaj de mechrufrzrnu pixcl shader infonn cji o•~~- Z
nicznego punktu wid?.i::nia reJ~ rek, rur zn,,1er-~ją " . półrzędile tek!ruJ r, ale "iękslmci
przypadkó""' inform.a.ej,: te są natychnua. r .1..amicniane :rl.d. dane o kolorach iw· miarę po-
bier.miJ danych o tckstlll'"Le. shaderac-h ""''c Ji ocl l 1 do l 4 reje try tekstur moSA:
odczytywane jak wspó+~ ·dn~, a n:;ist ·pm e Lap1syi.,1i.•a11e CWn}rn1i o kołur-.toh . W wersji 1,4,
mogą być jedynie ooc~y,i,..anc i są, ykorzyst 'il.'a.nc jako p::ir.łm ·tr)· słutące do Z3l'a(ll>-
wanra danyclt o JroJorach do in□yr.:h rc1i.;strów, Dokładne pnC?..rH1c:zenie tych nJesaóv.
stlni(: sfę hardz"ej j ne Po omówicmu instmkcJi tfoMępnych dta had~ra. l iczb rej~
tel(srur zakży od liczb. faz teks tur.
ko1oru \1,l)'koi7ysty'-\ ne· J ' o współnędne tek tury \\ in n '"1 lek- ,.....- p , ..H
. · »•--·-•1. d •J ~•=, · f"Z} p:raw,wowym
\l,Vkorzy ·1anm operacje W4JJ lUlll(O\V ·go o Czyt}•,1,•ania t,ekstur fflQb· 5,tu ,... ć pod
:, .. fu k ' ~ L"' vriy Staw4t
do impkmcncacJ1 .
ru
..
eJ1.
mat'
·m8itycmyr:h, które ofuru111
. :rt
:t.nacznie ·
w ;,~1·-z• ,. •.
, , ~ "' rnoi~twos.c,
W' ll]conyi,,,•iuua. operncJ 1, niż " przypadku zasto owama stanów faz ....1.,.,,,... \1 r .
~1 • • , 1_ • "'~""ur. ,.., naslępnyn:tt
~ i a k posw1ęcoaym I flstrnKCJ am opisano to w sposób tianJz.iei.., szae ~V10Wf,
...--~·
.u
instrukcje dostępne
w111echaniimach pixel shader
Instrukcje pixcl hadcra działają na wartościach ~jr.: ·tr6w wej:do,, eh I tymczasov.-ych
w podobny sposób j k instrukcje \'ertcx sh.adera. L tnit?je jednak ki~ka istolnycb ró1Trk.
Pierwsza .różniC'.a polega na t ·m, źc pi t:I . hadcry obsłu~uJą znacznie mniejszą liC"'lbę
i.nstntkcj1. Ogranicza to możh wo ~ci shaderów. a1e w praktyce j~ ensm1i ne. ze Y/.~zgl du
rm c~todiwość zas·w 'owarna mcd10inizmu pi cl shadcr. PomiJaJąC rnożliwośt• sprzę-tu.
p~ie długich sbaderow~które: m,a~ by prlt:l~anac mihon~· pik...e1i w pojedynczej ramce.
wydaje się beicelowe. Inna r<:~1mc:i polcg.1 na tastosa,, aniu modyfikatorów instrukcji.
Modyfikatory in. trukcji stano\\ i~ cenny dodatek do lestawu 1nstrukcJ1 shsd~ra. odyR
fikatory omówimy w nasti;p11ym pod rozdziak
iew)'godne j~t to• .ź~ ró1-n~ ,vcrsJc mechanirn,ó" pixcl hader ,, pewnym stopn•u obsłu~
~ją.różny ~ta\"'' instrukcji.\\' objasnienin~h zamieszcion. eh poł'liżej d1a kaidej ins.m.1_k~
C~l wymieniam e 1.a" wersJi shad1.:rów. kt6r~ ją obsluguJą. V.' prl} ad~u braku takicJ
lury ~temy mog~ i prlj'jąć. ż~ in trukc;ja jcs, obsługi"ana, ·e ,, szy dncb dostępnych
O~Le wersjach.
_P rypadk u iirulrukcji drcso'II ·ani tek hu- czc;s to trndno zrozum~((:. -ied' · V."j · Il)·
lUJC.'Dł)'' parame•~ (n) do pnecho vania dUJ'lych opisu wspbhzłtdn_ycb te~ f)' .a ·
pammcu- le~ 1.3Men-t dane o kolurach. Dla wyjaśnieniu ponitcj podałem k lklł przyl:bdo-°"
lego, ~ Jało spo'.lt6b \\/ -półnędne tek tury odpo,vi dm 'ą wurto i m opisuj m
oraz rcJ lrom wynikowym opisu h:k~'illlr.
Odejmuje jedną \lAUll.ość l'CJl.'$U'U od mu ie· i, .
",ynik-.OW)!m. P ixd -sh:rdery ubi.ługują j~ 5
~rmt Ztta ~,k. w rejn1r2e
ff'rioh'l:I Y.')'M~ i11stn..tJ.ie' lacJ~ r~es.1rów. a Utcm
. Jt: 1 z mlli(:gG\\,'fl.!l)m ~ Wi:J~.
Mno_2}•Jcdn W••"~ li"eJ 1T1J pttu dru • umieszcza"' ·ni.k w
~iko':':'Yffl:.· ~obmc JB \ i="t1~ st.ad.ery' pix.ct . rud 1>me o ~JC'Um:
m.1tł"llkcJ1 dzllC'11tn1111. Jcżeh ch~m ()Odl;,e1,e Licibt, ~ . łulJ.1~
do sb dfflł jej od.wrotn . · pGWlnnLiffl}' prn:ł:azaf
P~bni~ J:lk in 1i:3kcJa r,d d~t~-pna cll!I vcn~l'l: madeT>6\\•. In. lMmlkc'
v. ~nUJt: mnoże-~1c 1 ~da 1c w ~JOO)'AC-1 j •mtruk,;j1 ,la.
aJp1cr. .wyk.On}~ nr: JC l ~o!cnuc plnuneeru J$.C eQ pne;t lSC
1
.. nm.~pn•~ do obhc-zoncgo doczym.1 doda m· je wmtość _,c. 2. •
~ ymk um,c.sU:iany Jest w 'f('J~'b'Zc wynikowym.
ó?l ,qm . Ta i1~truk.Gj v. k~nUJC' IIóJc:lł:mcnww~ opcracj-Q iloczynu
e..]$C ł!~. pomLędZ}•. w~c1111m, .i.ap~yn,1 · o p~i: .).Stte: ~ .,i:;c1e •
f,
" j ~)e: Z:dJud_a sLę. _~e wan~ 1 ci: . .._,e _ romi. choei t P'lob'!a wyb)l'Z) . ~
operneJ~ do Inn go c~ lu. fo UlJ C:Jt; tę ,,.iykor:zystano w rozdzrale 3L
~ W:Jntk:. [ostruk.(ja taka Fi k p3 , z romicą, ~i! dotycey C''ZCC'c«b e1t:rndU •W.
_JS<'.le~ , ln::;crukcja Jt~t do 1.ą,n3 w wen.j i I .:? i w , ~~Jam \\')m~•ch.
„eJsc ei \\' ,.._ CrSij ~Ch I ~ orox I J h t.Z)' ~i jąjuo dw,c iru.1rukeje ( L'l, 1.3, 1.4),
o'\1 ...,1i1 . Ta instru:kcJ ~ ;mmkow. LJ .w.a wan~• w rc,t~ "'~;._oy.1i·m l!.ł
'JSC1e0. podstawie mego. czy w.BJ1~L komponen•óu• ą w 1ęm.,,:: r,;:z QS.
eJs!ie • W wc:rsJ• I .4 ta mslfU ja m..i.d d l::ll ·u-dc:go kompontn"1 oddzw:tn·e.
li j 'St 1!2 Jc:i c h •tory--ohd ck L mpom::ntó parametru „PJ se. et. jest ""i'!rk57}'
nit 0,5. odp(I'" 1adu_J • mu ompoment rc-Jestn.J WYJ11kov..~n ~ usaw,aa '
rm w:utu:,ć ·on,ponen-u paramctnL ' se 1; w pn .oc1wayrn \li'YP l'U
c
warto J • t pobic ar,:;9 z ~ metru ~,eJ~C f!l, JCS1 mo2fo,.-c zw:cm, że wyn
jest we~o rodzaj u kompoZ)'cją warto c1 µanm,etru •~)• H~l 1 j s-; ~2.
Wt'. ws1}·stkich ,-.t:rsJach wc1.~s.mc:j szyrh ni;)- l.4, wanośc porl)v.A~a,ia
JC:~l ogran,czona do jL·d, ej "artoki - r:J a ( I •. 1 2. L3. • A
z ograniczcmJJ1n opi " ) m i (K'IYi"}'żcj).
Opc-racj podobna. do cri(! . ale ł) n1 raz.em kompommty wejściow~ s
porbH n}"" ar. c 1. "ai f'Ści. O.O. kfd• są w1,;kszr: lub 'l'i°t,\'ńe O.O.
\i ~•bii;rnnJ JCit w art"śc pocł1ocl;,_;ąc,.. 1. par-amemi ..,,,.J ~- e1. w mnym.
q. Ta in oukcj.o J~ "t dos't\"pna ~ lko '\.\' wr:~ji ' -~ .Oblk:z111 s, nnifowrui~ ,..,,~ ,
rodo,,11-skowego odw oro nia nierówno · 1 n pocbl.3w ~ us""'La".,, iema 1
ttmu rnac,efZ)' mer wno:-!- i f: • \.; · ~rur)'
Ta anstn,.kcjd m(! \\ •koottie dn ·eh dziu.ł!ll'I.
_!l!N!...._:!C~lf!!f!_l!~IV~•!,.M~:acll~•~=•~•~lf~..~_,.,~!....,-------- ----....__.....,~
_,.s.,,...~ h pittl 6katkr
~~~~~~~~~~~'21'~"1~ -~
ko,a..
~;,w~d,J4.~'Jf ,pM~~w:,;f l:,:;in,.nu-•=========---
~~ .
NJlnltnllU:Ja
:~ll~l~a.1~~~~----~ ----~;;:;;~:;;;~~~~~~;;.~;;
Fonnat
.bBUUt . ładuje z v,}'brane., faZ)' l&twy 113 ~
wa~MC
~ (fi) . ~ n,,ct, U:k$tlltY d~ tej FMy••P'o ds.ta~ ~
~ ·i 'im p0biei'8111r:
tcJ mnstrl.l~Cj .J
~ m do Pr:-ktwarzatiia, ~~
•. I 4 W WCl'SJ. ~ I 4 s l i ~ . ~ 'L
llit!j~ doslWM w Wen.J l . . • . --,7 ----.,~-.u.
i11s~ajf texlu ,1 I. I.Z, 13)
r ~ a łal1.1jc wmośt ~ołDl'\I z t&tulj• ~o rcj~tri.a ~..........
JrzypadklJ 11:jęlltr td{$1.Wy Cr'I) z.B-WIC'IU WSJ)ÓI~~
:dd r(n) . CM
W .
J\lł::!t rejisrr re l 2tt"tic-m dme ~lk -!llY• Z lt:,go 90l'fam,::,.
(ł},J!l~ rt. opo'bien W,S~II~ 'kbtury l f:ftż.lJ o~ 'W)t_~Jt
wcdi,m oosiidmni~ ~ok• koloru.~ ttbłUJU fny2 Wat10Jci~
:mpis.ywar:ii= do RJ jru r2 (l)'lko 1.4.)
:ęcrd wYn,l. UM w 'WCrS:j• l. iosoukcj e i<e_ lópmjc_danc D ~ : t . a : ' l i i ~
icł.};•ury i rejt: ffll t ·n} oo n~J4:sttu ~ymlmwego. Jako dlnc ~
kotor. W dil\lgim c:tapn!: dziAltw1:'.I pl.Kei shadcm. mo~ " ' ) ~
rtjcs.u \\!)'llikowy j!J.ko iródfo w wyv.·o1anfo mstrukc:j~ r:e, ~ _
w t1api,c 2 (t)•lb, t.4) •
~ ~ l t pu~I
ldt8lll'dótlfl1M W ,,._f'.A"',_,.._. $,...,.--. cjqi dnl--
?-Y
.,...._ s&3. l""1łtl!!ffe lllftlÓ...... ----..._
Opił
~ FOlrlllllł ·IIJIIUktj■ ol,licm infonnatje dol~e ~go~~
te~ tf }• t ( n} Tu
--~aa . .J.----'••j za pomocą
. ruenrwnvi,o. -
m.a_c:.erzy n1crównoł(i
('.
;~~
..-,,-~-- U1V1.1,·olania funkcji Se lP tu Q!.J a e-. w~
za pornoc:11 ~ ~ ., ·
. t'n) 511 rnnozooe przez: mac,cn u:· · tury, ;J \l,)n ~
:;!:-" rywan}' jako ,nddcs te ry"' f.t1Z1e m (U. J 2, 1..3,t
te•
l te )• t(n} JMtn&ką& sW10\\'l uzupcł11iemc ~rru c.J1 e' . W~~onuje r.ę ~
fUJ!kCj(. lłle clodll wo uwzgl~ct,ua le re ,; lununa.nc11 lć: Uaów fil
ac-ks.tur-.
e ~ 11 r(11> Tej ,n trukcJ' mołna u:.ty j . nie drugim t ~':1f "' _
~
wer.sji r .4 w pierv. 5,zym c1np•e ru et.y \l. ·~ • . ompo.nenty r,
ll.łderłd)
'cslliU "4.'lfflOC w.f.U't • ~• 1 w In tro J I obhe wnna
!!ej r- . ·- ,~ -: f. t L.•
1 mŁIJ.Oi;;-ita tf wart d 7.Sstosowam_a .....o Willi..,.,,.. g ęwa dl.3 tego
p ef.'l ( I .4 _ •lko \\ ctru im rtap1cJ
lnstrul«.'ja oblil-1.a trójdc:mtnto'!i\'}' iloczyn :Skal my d.3aycłi · ,di
"'-' ~i: tm; r1 or.ax ,.., spółr~~ych fe-ks,~ zapas mych w rcjfflll:c
l J. U7.;, w '"l'" ru \1t dość skalama.J ;i kop,o.._,'Ulladov.~ft'i.4
CZl(':rt h komponi!'ntów r-i::jcstru .. •m, l 2. l l ).
c.~ p3tex T:1 insm..ib:Jll obite.za i loc~'TI skalarny tnk jak mstl'Uk.cJa poincdn'
ale UZ} k.'łn) " \\)niku skal3rjc:st ut.) 1, .ll1} Jako ;n.de ·do..,..,...-....,....
danych v. tek.'illJnt ftlZ)' , ln; ~ a w 1,.vyn ik1-1 \"I JJ'tOx :ko]oru
1.apis w:1n:1 do rer IN (m) 1.2, 1.3).
h:idel'Ó\\· "''CT-C nicj zych ni~ I A n:j es try (n} mogą ~rć ~
\Ve. w ?5tkic~ \J 'r.:.r'$Jac~
~eyt) wane. Ja I z.ap1sywanl!. W p.rzyp dku od zyru uzyskrma drum J t interpn.1 m
J ko wspóbz~ lil;k.stury. przyp:idku Uip1su wano ć rnnżc zawierać prookov.
"an.o ~ kolo~ _h:·.ksluiy lub na pr--,eyklad interpretuwan w pól~dną h:kstury (,, pn}
p..1.dku • mru.kc;, .: {~~ ). W „ rsj i I ·• rejestry tekstury mogą b · lko odc-Z>~"'~-
0
AfOdJfikatory dost9pa8
dla 111ecllaniz•ów pixel Shacler
w pixel sh~ćh:mcb można SlOSo\vać niektóre SJ}Osród d . . .
O0 11
dh:a v~n:e ooderów. tl:lkich jak nC>gacjil. czy maski . . •k~\\'Y~~ fiunktji doslępnydl
(ikaw_rów an.s~kcji, które gwar~ntują dodamkoWt: ::;~~si~ ~stn1cJe ~c zbiór mody-
dłi teJe.st1,ó Ti1ti' zrodlowych ~taw,000 w raheli . _ osci. Dostępne modyfikatory
16 4
,_.. 18,4 . •~todyjlkal(W)' ,~jestm,w irll(flo,..,yct, dosr.ępnc tJ/o pixd .'lhaikrlm
~L-ladnfa
~ s t o r ...... On.is
...
Pr;USUlli1w:-ci~ ro_ l~$
Od~jmuje O.~ oo v. S2Jslkich c-:.ztef'(cb kompoll!tl'Jlów r,ej~_ Ten Jood)'fi
możno :!>tosować dł::a dewom go rejfiłru irócU!l')wego, k.uor
1(}dv.TÓCC11ił' 1- ~{l
Przi"d wykon.a.n i4,; n. 211.s.tnJl:ccrj I na.s•~~ie odJ•ciJ"ic.: .,_,. . , ....~.r.- - • ...L .11
• ·
od l •O• Zawanosc I. ~ 1:.., <U IUX:\ •.!j~RJ 1,,UJ\UO,\VcgQ
l\l!JCS1ru .tródm""-·ego ni„ 2Jr!jcaia si~.
-ro
1,ali',,•.i.rtość
~~tja. O~!i za ~~gacJ~ 1-.om~nt:n~ów pl'Zed "'"''}-kO'Dil.Iltem , ~ cji. Znów
ll!Jt.•stru acldlowt:go me 21mcnia srę,
ro_x2
T,eq mod,)rfik Lor pt..i!:t.-rl \')'konill'licm ins.tnlkł'ji mnofy J«:ifl!lponL'tlt}' pac:~ 2 o.
~oj mje
Je t tlo.sh;pny tylko w wer-.;ji 1.4 •
SWau ro_~x2 Ten mod fi kator odi;.:jmuje w3f't0ść 05. a naslępmc IIIOOZ)' uz;-skany '"'')'nik
makiem prLt:-7 :Z .O. \ł(l(jyfikator szcz.r.:gć,]ni~ przyda.je się do\\ •1-:orr}''l\,.mi koawcl'5ji
1.akri.; IIJI kolom od O,U ck, I.O na zakre:i. od - l .Odei I.O.
W pixel shaueracb jest lak.z(; do~lępna ograniczona fonna operncji mieszania. Pl"T.~
'-'•'}•kornmicm inslrukcji 1110 cmy dokortac rep likacji jt:dncgo kanah.t na w eycsdue '.koi?ry.
Podobnre Jak w prLypadku or,crni:ji m,e. z=in•a dosh;pnej verte shaclcracb odpov.•1ed-
nje rejestry danych ni~ u~egaJą anianie. Odpo,viednie ·ctcklory rl!:j~trów źródłowych
:zeslawiono w 1abeli [6.5.
Moona takżt:' sto 'uwać maski .l„1p1su. Vli.: ws~y·tkjch wersjach naderów moźna ,_,.,•;bm~:
czy będziemy zapisywać \\ · }!>I ie kanały. tylko kanał al'fa; i:zy t _lke_ kolory. W ,,.-~~J~
I.4 do zapis~ mocna ,, · brac do\ •olne kanały.• kladnia masek 1..ap1su JCs: tak.a s3ma Jak
·-
w przypadku mcchan17mÓ\\' Vt:l!'tcJ, sI1auer.
.J z~ lą lf,ó·~· · "··
Ll"IIIC'.J\. Mo' zamia.~ t etrvk1el
',I' ..MW
- stosu-
jemy etykiety .,-g/4,. co pokaz.a.n w labeh 16.5.
. . . • k · · o działaniu tych modyfikatorów
Osr.atnrą gruną modyfi k:Uot'O\~ są modyfikatory 111 tru CJI • • • ~... Ń- - "iku Tel.To
~ taw1cmcm Wau _.1 ..., t
'l'll\.fflo
moremy my'it:ć ja o~ o~ra ~m wy~onywam.:J pn. kł udach o łuzono sii instrnł:.cją add.
r,, ·• : c, 11 •
addJ4
„6
Ten modu1tibtor mnoż>· "41ymk i□:łfflllkc:ji pr~
7•
sprawdzani! do:'1ępności
mecbanizmow p1xel shader
Podobnie j 1;1k ~\,' p~dku mcch,n izm6w vene _shader, moma spraw&c~t, c:ey nas'.r.
sp~• obsługuJe ptx:d ha.dery. popnez wywołanie metod SetDe\l ceCi1ps. Struktura
Ho zaw~era pok typu n'ORO - Pixe S dder'Jers o . \I artość zawi-ero :7JłróWll!Q numer
~crsji głównej. jak numery -,.1-•ersJ i pomcx:niczych. 'ajlcpicj arn1l1zować znaczenie ~j
\\iartt')S.Ci 2a pomocą makra DJDPS_ ERSL ' ;
D30CAPS8 ltlz 1•
:iGetDev ceCaps 'oon;.o:iPJER_DEF I\., . D300t . PE_ " . z ).
41mł .P1;,;eiSł'Jii~f er's o - OJOPS_ ĘRSTcr, , 1. ~)
Vąskany numer wersji lO wersja mak yrnalna . Urządzenia obsługujące daną '"'ersję
madera poWii1tll. także obsługi \vać w ·rsjc wczesmcj. 1.e. .Jcżeh urząd7enic 11ie obsługuje
m«hanizmów pixcl słittd~r. być mo:i.c korm:clm~ b'-!dz1e opracowanie technik~ :z.aStęp
cuj wyl~tującej operacje ląc1,enia tcks,ut lub wylącz~n•e niektórych efektów. Ji:itdi
mtt~anifflly pixd shader są dostiypnc, możr.:rny zrobić krok napr7.ód i przysLą:pić do
ut\\,orzenii ~adcra.
W \}m ruzdzi le wykonys,t y p~ty Vt:~X hill:łcr do obi iczi.:ni21 wart~• ii: r.
wt-go _ ietft.'ll i dla k:.aidego ,i rjeu.clJolka \\t.sp6ł ;eynni ~1 ośwlet le!11ia i□l~rJKI
113
J)D erzchm pro!>l,:J p)bxc;ey wy. Paxel ~had r h zy mck~Lu rę 7 wmofoią · i lit-Il 1
ale.""!' ;o~\JJC I że rnma tekstu!( W c lu 7.d',: finiOMLnJ obsz:iru cek tur)' odbijaj i; •
• - , ~mu 'l \\' Cf"5J• US\\' •Ie'EICfU~
rrmteJ ~Ul.tła Jt' .• ~ up,T ę,,.. .,
" ' '1!11 "
:,. ]1.. o• 1, i.r,c) rut
. łlQ pozmmLt.; pn;Sct' li'"
1 1
nab!~ ~ 1: Wler~hoQk6w oblic21a ,~ nc. h:td ir. ale t ni ~1 sh.adt.~r ·om1jc 4a,ru
O H:'.lffl krcsl:u!'M'I ' • . r . pl'
Wtuto oswu!dema dla . llJ:Lfcgo p1k$t=I • Je ekt dzi11huua a ~ J
1
re , "..
po '17...aAQ oo I} sunku 16,4.
~mi.my pf7.eksztaknnt: poz) CJC V\' żadnyn, stopn;u nie m3 to wplY\1-'U na P•· ~1
wde.
~ o?o$ X, • O. CO
oPos y, •O. Ci
4
oPM.Z, •10, c2
~ ;,i. v(J, c3
„
Otilicza,t,y iloczyn skalamy nomialncj icrz.cholka oraz ,. ·ckrorn oś~,·•etlenii dla świa~
ua k~kc ego. Wartosć iloc~ynu skalam ·go to ko ious ką•a pomiędzy .dw~ma c~- „
tora~~- ~ tym łconh::kście ilocz;n skal my koreystywany J st do o~slcma stopma
od 1.t1a ~iatJa od pow1crzc hm v. prO$itym modelu OŚ'-' tetlenia ~"pra..~Jąctgo. \V~ktor
clen,11 P1%CK.aZf\\ any Jei;l do vcrtex shadcra jako c4. egu;,.;m~• o. ab . wykon.
1
Ry511rek 16.S.
K.1-mfig-Jr,;1 'J(1
purtlH~•rrr.."+ prx1..•I
slto&.•ro pr:,.-z
, 'J"o'.J· r .<lułffer -cA"lil P\Xuł ShadiY
o01
Y1 7
Pn:
Pva.Arilł
00 ~-000-r'•1
t1TO c.,.__ _ __.
~U\~,•aż~. że kanąl alfa ~t11oowi wysnd111e miejsce. td:zi~ można pt?.~0 11"'1 nil
alefy
noki, ktore nie zaw z..; ą wid czne, al - : pclr'1:cbne d obtic:zeń, Jetd I J3"' ,e
wyfu,n, lhjcm kanału :;alf, dJ~ obic:ktaw pnczroc~)' tych, możeii,y ,vylrorZ) S"
UJlłYCh «Jow. W ~ pr~dku wy~or-zy5tu_k kanał aJfa 00 Pt'ZeCh .
"spólczynndca kalowama dla wartosci oświeth:nia k. ~---- owyy.,~m 8-buo..
"'-ego . • .. ia. - l I.. ~ . • i.enu1.~-vwcSQ. Pon
. ..adtta zn&JduJe Lt; w p ;:u ,mp e.p.s,,. Pierw zy w1euz mfonnu. . . -.
'k... .ł
ey uu
~~ wmję hadc-m w lol7.)'stujemy~ te asembł~r sliadua.
ps. l
W p,ee'\\szy.m wit: zu ładujemy wartość 1,ekstury do pi:td shadcm K-.1
• . . r, T\H '!11CO" m ....-,...,c ·. u rc::nA'- ,._,,_ • i. U\l te-l'l mo~my
iotetPfdó'W.C oll,")-1.ęr--..LJ..., • ..,, =. ~. .. "~ u b-~'uuCJ t~111. tUJ)• rejestn.c Yt'}'k0
0
•
li ro. r1). to
· rysunku 16.7 pob7.ano powięk~1cni~ osbtecznego wyniku dliatooia aphkacji. Zwrocmy
UYw-ag na to. ~ ciemniejs1.a plama odp )Wtada k 7.tałtow, zdcfimowanffilu dlt1 kanału
3
ifavokazanemu na rysunku 16.6.
U.7.
..a--' pn,sie. Pozo,taje opracowanie aplibcji. która 1'ciy
s ~ "w zatad.Zae ~r- catośt. ~
kic op,san~ ~remealY w Jedn•
Prosta aplikacja
z wykorzystaniem pixel shadera
w·1 brosć "l1J~suj:icycii dzialan naszej aphJracj1 wyk~nują, zapre~sntowene WCUG;:.:
~ Gi~wn)'ID zadanmoo1 ąp~ikacjj j~-s• dosmrcz~111c do shiideróv.· danyc;h 0~~
t:~-. n~runia wlaścii~')'ch shade1ów i uak() vnienie ich w odpovtiedl"lim
3
~ M-:l,.~
pewn1cme u: • • Bk fimk · -~
'Y,' z:1pn:ffn©wan)'m :nit.ej kodi1c ~azuJ.; f)' o nowe CJ r.: . Pelo le-Od ttodJG.,..
majd' 11je si~ na płycie · D ( 1Kad'1l~dt,ol l 6). 1
Po'b1enm S?ll'Uklurę
opisu moiliwmd Lsprnwd7..amy, czy kana obsługuj,: ffl<.'tbanlmf)
v,c:rtcx Mdtr oraz p · cl shadc-r. poshtgują.c si'i makr:mu opisu w·crsj1. \ e , ZJ · _
1
/ _...,;.0~1,•:t.cll8Uł!(),
- ' ":Jfclit-,rt&uforPl ,nzczyzny( >>l
tf (~urn F'ALSE.
1
r( 1L roto30 t?ate e)llturef 1 11 ee _,. rractze, eooo.
• \ 1u\\T1ie s·.
&m_•,.Tc ~tur:-a)))
tt:.urn
J
FunkcJtt Ut rzShadery tworzy shadcry \', kor"l}•St) " 1.anc w c"Msic rcnderov.•:mia scen .
Poo-itsZ)I kod je!!t ~obn)' do kodu p rczcntowan ·go w popr~dnich rozdzfałach~
.Sui.I h ~acJ1ieun n, u r. Snade... 0
{
sOJOJBuffe 111au orSJlade a.
1030YS,Jf ert S1ed:;Sha;dera.
re rn [_ A.Il:
- -
., $ ade l • n Hl 11 3 j 1 • 0) } )
Z1h-alniamy bufor Khade~ al_ m1.1:i..na go h} k1 W) korL)'Slac pon \\ni,: do uf\ rorzcnfa. pi:s.el
~era.. Zwalnianie bt1fora błędów ni~ J~Sl p 1tr7.eb11c, połl1C\'-'tL/ jc,eli JC tc '=l'n r w tym
IJIJtJsou oznacza to. .e bufor l>łi;dow ni • 1.ostal utwur1.on} :
rr:. a~r~- Rel~s,o,
WYlVOlan. .
• do nt\, '1'7en;a pi. e! hadc:rJ je I d •lru.hii1,; lak~c same. J• ~~')'~
tie W)'kQnystane
WOlanic ~ lllWOi.«nia ertcx ·hadet3. As.:mbler wy korzy ruje p;cr,\'Slą insm.tkCJ~ op~~u"'
.Rq 'Wer1Ję "' celu u.zy kruria in form c ·i o 1.ypi . h dera oraz o Sl)O bu; j go as~mbl acJ1:
ror~~ra-;i,,R~leasefl:
r turri s_ :
m_ 1, d JHKh
[
b pomocą funkcji Del @ti!?Ve rtex.5 ad~r ~raz Oe le~ePD:e} Sh3dt: r za~"'lłiall!ly U&Jn:
:$'1aduó,.v. o-żemy ut..-.·OT7.yć t>111foey Y.'lc-rz~hółkow . które ~ł~gaJą au,o.ma;. l".
ootworuniu w cz.a ie (N:ih-varzania urządzt:l'lia, ale o LL'iumę.c1e I l)OOCJwne vt'n·o~
. hadcrów mus1my zadba :s.:unodx.celni •·:
~NMZemeO~•">Delete ertł"'5 -!der(rn_S acter 1,on 1 u•· tJ1 >~
eP1 ,e1Shader(m Pr styP,~el'Shader,.
re urnt~d7.eJ11efJJO-?Oele
-
TP. p; -
1'<.'fllZ bZeba ustawić ve.rtcx heder. \\r' n zej pro. t.:j ap likacjt mogliśmy nsla~ić ven~
~der ,i ćZaS'.ie I.Worzenia ~hadera, W 11as:.cym przyk~łłtlzie j1.-dnak umj :szczam t i~ -
~ę w,ewną,trz funkcji renderującej elfa 1t•..,sz ·go zih.1sh1-\wania "_ kot1) an ,' fi dzi kii:
_ r?ild~erneD31J.-.:.~t•e e~hader( _Shaaer oM ~"iCJ •
u~wia.mY piixc:1 snader. Ten shadcr "-'}'lll&g;;! rp,nekaz_m:i1a kilku cek. rur wejsciowycb araz
wa,tośti z l'erta shadera. Możria by było '""·ykorzyst.,ć. piJ,lc:-1 b1,uier z ;nnym "'ertex shadt."-
ttm i rekstttr\. ale \"'Yfl1ki rnogł_. by b)fĆ nLt:pt7.ev.,i.dywalrie LpmvHiopodobnie bł~dnt:
c1dzen1eON>->setP 1 o:e S,nr1.~r(m_P ~os ; ?1 (e łSntóer }.
Teraz~ wytonaU ·roy w~b-tkie c~)Fffllośt1 pr-ągotowav.·czc..\ moźcmy \\'Y ..,ii sia1.kę,.
wnaszym preypadku jest to p,asiczylna z g,rostą tcksmrą. Siatk.t za, iera współrl~fiM
~ . któn= infoffllują ptxel śhadcr. w jaki spo, ób mdc .• próbkowi]Ć te1ksn.trę. Podobnie
j.at w przypadku mJtych pojęć d-0tycząc)1Ch tekslur bl~dne- współt2~dpe tekstury powo-
dujł iu;y kiwan~e błr..:dnych wyników :
11'.lr~GZemeroD->SetS rea ~1rc:1?(0. m „ aszc-?1z•i.3B:,1 or .-. 1~ zcnolL
- s zeor ERZC: IE-. SlATY..l ) ,
-_. ~ 1eO::JJ-;.DftJ. Pr mHl'/;' 030P _lRl/l!mSTilP.-0. 2l:
Zatwyu,aj} jeteli nic wykol:'Z-ysluJem~ pi d shadcra.. dobrym pomysłem j~t jego wylil,•
cienie. W cym przypadku cały czas lonrstamy 'I pi;,;el shadera~ le dodałem ponii.Sią
imtrukc~ po to. aby podkreślić 10, jak "' a.zni: JC-St \?M')'~ączamc shadera. Podtobi'lic jak ·~y
futekstur. pixei :mader je t stosowany dl~ kat.dcgo pikse~a do t.:hwiU kiedy z.ostamc
]a-A-nic Z1nLen1on)·. Inaczej t,iż w prz.-vpadlJrn stanów f~:, tekstur , I czenie shadera j~cst
zmcmi, łatwiejs.z niż. osobne ,., ~,1ą~7.an LC ka:tdi.: go v:, stanÓ\\' t.eksnm.ry:
t -~rz~zeme03ll->S~ t>D1~~Shader(0)
Wynik działania apUkacji już pokazano nil rysunkach ~6. i i6.6. _Ten P?-}'klad jest 't\it..'CO
~ a procedury oświetlenia ni q najwyż.s•.ej jalmści, ole 11\l•llllJC podsl " MO•
fl.Ulia mc~hanizmów pi el slrlader. zasil nia ich danymi. pr1)ez cn,.:x sbruiery or3Z wy-
~wania do oddziaływania na wynik pacbicgu reodt=ringu •
.. Clli661V•..........,·--
•
Podsunaowan••
. - . "dli czytelnik po lektw'Ze powyższych rDzd%iaha Die
Nii= ma w tym 111c dzi~ocgo~szy t.c prezentowany materiał jest nowy ~~
się jeszcze zbyt~:.:: poj~i~. kiedy ię ach U2}'W.1. W lym mMzial~ ~
u~•atam. ie ł.a~CJ
mi3n':in b)•lo k11utowe om
ówienie podstawo",ych poj~ć oraz definitji in5ttukcji
, . . t-t dó\
52),'('h ro.wzialm"b utrw:dint}' ,OJ\."CtB Ził pomocĄ przy,- a
· dał.
:4.
• - L •...: ~-,...,.;a.łów kom;cm1n1jc si na en~ htidcrac:h. auczymy si~ , lt1.....
, •.
Kolę,1ny1.il 11 "-11IYJ , , ~ . . , h te h 'k Z
01'3.7. wietu poj C RU tł~
•
inleresujących I C~t:
• ka
• łnsttukcj~ _drr.: owania t~k.~tur oferuj najwi~~ze możliwo c:i. D~cydują one:..
0
~o!obre 1ntc~n:towarua danych wej ~ 1owych op1 ujących ·tekstury. blstrukł:J~
l)'Cb ~7.rw UjCy~ do załadowania wartośd opisu koloró\; oraz do wykof\)~1llll8
op rag 11 na ruac1el!'Zach i wcklnrnch na podsta, ie współn:ędny h t k tur.
część V • • •
y,chn•k• wykorzystu111ce
111
,chanizmy vertex shader
łcm k~ ill'lilc,cp, k~ był ~Yfflłlrl~ ~
\\i ~ h t 0 1 ~ . 111\\~bdi IICJ ~ i,ę.ł; optylNl-:7.;w.~ 1ła:iny. · - ~ •łk
~~ • 'I/fi kofeJ~ ~ ~ i . I śl~ ~IVJ UIA I DII •.7-S~• apł~ ~
P'auk :a.~a•:b 1:'-',\W1ff!IJI ~ ' •11 · ,J,x, 1 lio&);unUI ,.tes:4 nH!l,I, laki\lt)' Ilf-Il ~ łt ~
~,~~ ~ 1 c nurJW - I ~ \!i lu,clbc: 11 p1 cji zlłfl'ljno ~ l y ~ - C:O~
'°
i:roblł.. ilb)' zmte'lllt. htl:r, ZMJll,f~)'. m k pqJJI nie- b)l'o lO, cm pci~IDI) · ~ ~
lmllo,,ił'UC. W ~ ! d i ~1)7.dbłłall'b,. pu),JrtllJI •
I
♦ ~ 19.• ...Bill if:!.' J mocłwl~:!i' '\",tl'WJ'. "h.11k1" opimji:,. _w j __- po1.6b ~ •.,.
, --"- .ł~
J101,1, ICP- !IUf 4.1'. J iPtP1
kłt.11 ,... jd,,i:.nia ,_if""
••ftJPklllw111k.L . by ll,..,,-or.i:p: di r btll ~u
- ~wlliltS t 2mros.a·... 1mr1 P3lc1~ n~..:icrz) .._"' onuJem~ ~n,•m~ p:ilec l.-ł poiDOq
~ iz:móout· ,.~ńc;< di der
ł \'' roqdzi k ll.. . ,Prostt •r.qc 'ł kolur.um... pel...., iem>"· 1,1, I k I Sfl(t:illłi mom.1. : p ~
.,,.ffl.O!ki •r~~ oo_"' ~ i k.ofloroy. 1V dl>itO.~'" :,v.. rir~~ ·t~ "' edu ,u~
,rf(- w phłrn M!lll X.
♦ Kiedy m-em1mi)' ..., ~ I}'...., mf('h. ru;am :sh.J.dc • ~Lnu: im) m•:l/ l•"'-~Ć ' Orzyi'WIUI
ze ',l'Y)'Sl,i:idi 'llii'J.kLV.'l)Ś( J p,lt1K\J hmk,;J1 \Ir booowat1~·i:h, ..,, I. :;ro 7. f\JnkCjJffl,_i ~~ •
W roz&iale<2 , ..\\J. e M"V. 11CUm1ę- "I v.'}'kor7)i!i11111Cm ..:en,::i,; ~-•den", OIIW>' ·i ~
ilhpli:mcn.lllcji ""-.~• m;:b ~jo,,,.- ,, "' etl("n1J Jm,~~ '11 \'i,' O" rc..:t."( z pomoc
!Dtthlnt · \.rmx h.:idtr.
ł R.oMłi IM.,." ~nl0\\',in11: krc-słu,,... r. -01,1i-e", uuJi: ~._ b I mp m nu Ji t(' b:liti
rJmsr \I, poja,ly,1eeym pr.r..(! ~gli :,,_ '\J,) k0f'.l)1>\IJ1'11 m 'flC" -.'.Jl \ o:\.~uro\, '.!,cli d"" "
1NJC1n t;H,lmc:slGlu lna,g.. /O(jj;:J IL~,1r1.rc),
• Ted,n1 i:i OO<i•" 1!';kowe~u ~ l:a 1.~hu;k,11m I oJhtJ n 11.? 1 ,t....,u.a
ffli.lJM)'UI oj,: ,'A
Ro.ztłmrl~..•Odbici'-! j Z.11a:mlni(' 1111 -. OPL fi: po ~i,L ~ty~ tC' ~p ~.cinln) h
(:m-g, c..,b.f 0 ~ 'W)'J«m..) tJII~ ..,l\łdtrti"' do odv. 1ein:iY1.'.?lf'llłl i,;11 lll po,...,·1ertchni
.nmps'
ł C~ie- lo "~~ -er. r,•"' i.: 'i'.·~'-~Jdl h. W ro.1,cl:n:ll,.. lJ,, •.Cte111(' - I
C tnier.11 pl -tK~zn cli··. pu.uJC"my Lc-m.1l>"1::U1r'.: J'.if~~1 Z\łiii+'Aflt- 1 114~~-
Poj,cia podstawowe
ht.mtją pewne nic-porozumien iII dotyczące s.posobu <lziałanitt obiektów w posta i sratek
bibhoteki DJO.- • rmektórzy m, aiają. z · s,otld 1Jkry\',' Ją wiele szc egółów 1mpl ·-
nim~cyjnych oraz te d :;Lęp do d nych wchl dząe eh w •eh kła.d Jt:St utrudnion .
Wrtt ~ i to ci nit: je l to prawi.Ja. \W wi ·k 10s i pr,yp:uJkćn\· obiekcy sil:!tek D"'O '
~ byc niew1d~zni: dk, u~.,1ko,1.·nika, o ile :mamy zasady ~eh działania. Jezeh przc-
r~~li{my pop17.e--Onic rozdzi~łyr tn :zagłębieni i.: s1 • w ·1.czl!gól ' dotya.ąci.; , iat ·k nit
po11,wio być trudne.
1 1
· probowali ·roy anabzowac plik, 1 obie •tarni snil unue ze om: n . pł Clt:' 0 ~b~'.~
mott.~ · li my. źi.: ,,.,S:t.}. tkii.: p'ikJ .X mają format t ·k. tO\\ , PO\ oduJe lu Z\~' 1.'\(sz~mC'
rtl~~ płików oraz dfuźszy 2.as ich tadow nifł. al~ dzięki remu (l~ożem łal''-'lŁJ 10n~n-
to~ ę w zawartości pliku. Pliki zaw 1ersją (inne opi ujące !J)OZ}'CjC, wcklory norrnałm: ·
. Plaki i;awimją, n,wnid cz~ść. k•ón:j ~
półrzędne (dcsrut)' oraz i:n11 re::ty, czególne ścian_ . Kiedy mbli~ OlD)( .
~ octwzorowu,ą« ma•~aly ~śla format wien.cholków odpow111dajllCY ~
plik zawiertj~Y siatki;. JP•~rw \:ic:rzchołk6w . Twonony jest również bufor ~
00
a nastqnic Induje dWJe do_butb~ - N~ koni«_tworrona jl-st tablica ~ 6 - . 1
- 't\-,.•-łmanv ~'lnynU. .1 •• • ..,_ ,, 5łllGó
a nucepmc: Jcs& ~ n-- . .• . ~orowur1ia ,JCIJ~ uu J u11ego matenaJ6w na fiii-._
onz bufor trybu~\\' :ow ~ .: ~ rwane w cz h: wyk.re. la.n ia figur. zgodnie ~~
1
i. •
Ekil'Of
Sc C§l Na~
B
uyl>Ul6W
EJ
F e_i ~ • 'INWJOlilG z.a p,0fflOO\ mal0dy
On:mSuo Lłub za IXlfflOCĄ ~~10 lfocu
p,0 7.aładoW4!Biu buforów móm11 j t: w • or.r ·~UJ. · dokbth1ic \\, 1~ ki sarn ~posób j.ak do¼lllni:
b łfury '1.-vicrzchołków ~ mde · ·w.
Na razi~ ~-,;zys4ko Jest Ji3 ne. alt:: jt:sl pewien prnhlcm. ró) by;,? n;c ~-ykorz, :t}'\\111
shadcrów., mog li by.;an .fXJ pn:~tu '"')"'·oła.ć funkcJ1t Ol'a ...,Su s.et. ~ Lalka byłaby pop ~
n:nd~tm\ a.11::i pr.M:Z p-olo funkc::j i whl owany h.
Teraz ku.:dy " ~korzy rujcm) shadt: ·, j~s• bardzo prawdopodobnt:, YC forma.i Fl f
pjerwo1nej iill ~, m1,; będzie pa owac- Jo fummtu op,s.ancgo \\ dt.:klani.;ji ·bad~r.1. J
wu?~e porobó\,i na roll, 1ązJ11ic tego pcubkm1.1. l'1c-rw~:1.f pul ·g na utworz~'Diu takiej
de kJam Ji shad ·ra. kturn pasuJt: Lfo forrnalu ~i:11Jci. 1c J l'!'i.L 10 naj li.:ps.zy posi1b. poniewa1
rno~e zmusza· do 1wor21:ni~ sh· derÓ\\ . które nic opl) amii nc. \V prrzypa_d ...u mod~ ' i;Ji
fom,atu &iłLkJ mo:a: rÓ"'Die1. pl}\\Ol'lować k mc<.:roośl.'.; ponmvn •go pisania luh oo najmniej
modyfikacj~ .shiecfera,
Parnię aJmy. ze operacja k ono~ arna nle orzy no ,'l'}'ch dan~ch. Maz.na skLonorł~
format s atki w celu dodana we toró ormalnyc: w ł rzcht.Hk •1• ale ekto'Y
rna n nie oęd,ą v.ygenerawane łl lómalycznie. Klonowanie spowoduje UtwLJIWL!ul
doel'alłio-,r,m slotów• na dane, ale ech Nypełtlleme Jest ńaszym .zadaniem.
Lr;,:p z-y~. pc,,sohcm jcs.t modJ fik cjH formatu ·iatk, w t.1ki ~P _ób. b odpow111d
de~rarac11 h:idera. ~ ykonuje .tiJę tn z.a pornc,~ą metod klono" :mm opi nych \\ rot·
dzmf IS ~!~t~y tt" powoduj ucwont:-11Jie nowej milo, która pa uje do ,, b ~0
formatu~Dzn;k, ~mu h~dc:r mote dzril~~ć~ i.11 • nic s.ą r mctod;r d · n1Jłe. Jeż.:li 1~·
wolna,· ,atka za\.\'tera "' •e~-ej danych, n·ż pocrzel!ntjem d I.a rmw,,;:go formatu. to nad_
nua•
towt!' drui~ h\:dą u1rncone i ni • l>ęd( m, zgf Adnf ont.1' w nowej i11tce. Jet.di jedri · statb
._.,..,11. • z.tao..... er:,11,,._1·e I
talle• . . . . . . . .
icf\'tOfllł zawiera mniej danych. to brakujtce dailC trzeba
~ l\'}'kOfl}'Wlllia takiej ope1aeji pokazano w ~IIZUpelnić ~ ~ kodu.
~o ,oidziału. ~ kodzie cJol\czonYc:n do
nu,e nie omówilt!m z„ dn~J z metod optymali ji fakk. zatem z.oto.tym , <'. bufor
atrybtitów o~ bufor ind~ksów ą odwzorowane łio~owo. Prz;· takim zato:1..eniu mc»:.emy
ptUgl da· bułor :itrybu1ow , odwzoro\\ywa o'kte~lon ma11:nafy na okr-e ·lonc _'cilfl)'.
Ptteanalizupny t" t«hnik -rok po kroku. PIZ}jmiJm;. k mówimy tyłku o"' ·dobywamu
k-01.ooJ rozpras2ając.c-go matenahl ta'k. ab; m,k wypełni kolor rozprosz.aj- y wieu.chołka.
Pieiv, 'Z'i fn,gment kodu pokazuje- spo. ób dostępu do ·oloru rozpraszają_cego ~1an~ ,,a
pośri:-dliictw rn bufora at ,• butów:
u~y.
a "kJ..t ~ (O'~ Atr bU y) •
Sc ir. a < ,. • ~~o. Scia ,.a••>
ł ~
lnD •Cll. RGLprosze:i c •
~XCar:JP... tf'" alyS·at 1[ ~tribuS[Sc ank )1 D fu~.
} -
_'6·aa •~loc i;ttnbt.l'·eBuf""e c).
Pęcla um.otuwia indck.~wanic bufora at[) butów. a otrzynt na wano ~ · z koki po1w;.1J~
indebow11J1ie tablicy m1neri aJó,.. . Po pobraniu okrc~·1on go maceri hi możi:my pobrn-c
kotor 1W.praS111.jący. Jeżeli inter sują na1i dod:nkm e wlaściw ci materiałów, mól.\! 1l1_ :
Je pobQ róv. nie łatwo. Drugi fragment kodu pokBZUje. w jaki po ób mo~~ ua mafruc
or_wimcholków. wprowadzając do ni go mforma je o kolol'"l.t. \V ponta:z)m frag-
ncir odu założono, że 1.aró" •no bufor wierlchol ·ów. jak i bufor 1nde ow zo:.-.tał)
~:
iS1a •,41 ~ y( .. 3 • on. :,o1or • R,nprcsz n e.
t :S111 sy[S - 3 r ll olor • Rcwroszeine.
· ł Sla lf looe}!ij( .., -. 2]) ~o Or' .. Roi ;osr~ 1 .
Od kolorów wierzcbolków
do danycll opisu wierzc,hoł1ków
\\' _pop~dnif:j proc-'l-.d~rzc opiS!lnO. w ja · ób motna odwzm:ow \,.
ri.nłów Wł koJ _ wiera:hmków, kt..ch jcdn Jt"Ste'Śm_ odr-0bm - pon,) ł~j~ i -"".:.u.i
r.1t1WllŻ)'fflY kpsz~ ,POSoby. \\' \\ iclu rLyp(.t&"h , li1k1\t,,y olor Yi i~h
2b 'tnio in~uj'l(:)\ gdp: m.-czy jsty l!'N! t WtZUJlny pochodzi od L Ul)'. yi.r.llr"l".iJr,:'"ftL
kom w daisz-ym ci~u można n d3w ć kolory n pnrnucą o.\~ "ttl:u1w i cj,;1tiov, ·
7.,g1pisany kolor figury mot. mi e,c nic;-wjdki \\ pływ na osiatl!cm1-· '"'_·n ik. K<,łm tł'l1
natomfas• być bard1."o pnyd hl) do ł'Wór71,mra naszej figut) z;1 pomocą nanędzi do
ddowani .
\'V\ elu ro~1ałach po~wi 00n1•r;;h sha~krom efowi~ ny si~.,, jilk, sposób~ 1
dl:. kud go ,;\'1t:r2 ho•ka poma}r Ją okn.~lil i:f kty m1i1 nucj1 . .tnie !iltałceń oraz innFL
1
• ,L~
te,chni \Vit;kszoś~ dan)·ch tego ~ pu mo~n zalcodo\\ nu et pjc ti.,•orlen o ·
Je7,eli po~ftmy sprav.rnic postugiw.et ,;i't 1111a dztilmi 1ak1mi j ak JD 1'.t ·X.to .
w J«ir.ey itać J~ykj byptowr: lub dod:it I w edu b vit:J1>Z~go kodowwna dan}'cll \\ n»-
detu. Dl wię 'OCl~j lliytkow m ów lą1w iej jedni! , po -lug1wa · 1~ kolorami. Możcml
z di:cyctow i, z ·· rółoe olocy odpc"'·i:.idaJą rómym "' r10 :ciom lub p ram )~
r2Y. tyw:mym P zez i,·~rtt:X :ha:<lcr. Eli:m~'TI!Y te motem_ ~ liuw ścią ,..,-cy oVt,a do
obi~ u ~ pum~ na~zi d modeloi a._11 iłl, a n si •pni ~ w korzys,a te il'1fi
do 1m1t.--go .cetu Jiu po zakidoi aniu obri:k tu. Pr.tykładowo, w pupra-dnim frallff)I~
od~ mo lJśmy po~m · oJo, z m l(Tiafów, 11 na t~pnic w)" ·orz)'. ui te~ ,do 1pł·
flLema wspófczyru,1kó~, ł czeni dl:1 wie--rzchol ów. Właściw olor móglb) n~ :
1
,i;
1
stl'.\!Ct WlERl00.9'_SIA f
t
float . }', l ;
•Joat J\~ . ny. nt.
olor:
L
~ 1lk,ac3 Tech 1 1: ! ~ h CJl Ted!n 0
{
„
-
111s1
.a a9u orW1erzchol k
t kil 8u Lf'lf1ek.S
lyS dt ,
e 1a ł
dera
}
{
.OOOCAJISB ł1bl l ;
,:w " lO.~tDev1ceCclpS(OJlll\O:ip7fR Off: • D300E l'Pf_l~l\1..
1- C .d . 1/ert~ re s1on - OJO••s_ ERSI !C .1 H
Poni:!.sz-y kod stanie Si{ >tandanlową prored~l11 tworzenia urz dzenia e w~ki
rozdziała.eh poświ~onyc,h shaderorn:
oo '91Jl'IJJUrz dlffl1ec l;
Ld i:.1JS1~ eO;
PobJerz~neZEJu OfOW(}.
Ut r zS cterc ).
r-e. rn TRUE:
}
0 d 1J dCJ1Techn1 l: Rence,,,,J()
'
!:->'todbllfdzO
konfi8Uracji shadem
prostY
skopiow11DO z hU'.dzialu IS W
shadtr. zatem motany skupie się~ ~~ wybrq,- 1
TRJ x Hac e„zs.naoora • _lllai:u!nSwlata •
~ _ c ertM1 u•
~ Ndc1,erzR4lltU.
~ u~'l@.l~iona w przykładzie nie posiada tego san11ego fonnatu '' iem=hołk w• zaI~m
~ ~I~ ją skkmować. - od powoduje lonowanie fotki do innej ia~i w p~i~i
YJDCJ z u"rzględnieniem nowego ormaru wn:rzcbolkó,1.•. rw puJe wohu me
· h przez obtekt siatki ~~ wytorzystanr
.Al....
zasobów DJ~an>:<=......_, . dla zachowania komplcmosc, kodu. leżela fonliily tle-,_
....
tywę uwzslqdnaono ł~.:nie icrwotnt i kontynuujemy działanie: "'-
puujłl. ustawinmY s1ałAę na P
" (DJC:ttł
lil ,c:.,,
.,,.., ._.11!11,~,...-.h
. . c.......... )(i i
,if.HAAAGEO.
Iii! RlOiSIAT l .
_lfllt1rudzen1e030, _ltt~la a):
L:
fbl,unek11.4.
/(WM ';t,'01tl-t! J rtt:Jd
Slufof w1ea.C:ihOI łM
Bufor~
P:ami\-"Ulj my. Ż<: objc:kl siatlu mote mieć powtąz..ania 1. bufor.ami~ a zatem wywołanie ~'J)
Rel e-ase dlll tego obj~ictu nt~k nie znie musi ozna za . zni i.cZ4:nite tych obiektów, ObdT.i
ukgają :znjszcxcniu. kiedy n ie za ie-raj 1adnych odwot n;
1 • (m ..61d -~s.:, o 1encho 1-,
t -
erze lk-~l~seo:
1erzcho „
.....-:' - ;,01.'I. • Zr toeclWIMII l'Yd116w a •dala•• WPGtłro'dii'llk
7Jlie rnoghśm}' zwolni · za b•. 7..3Jmowane pna m~tm11ty iatki Jut \a.f 7rln..
~ ly nie były U-tyw311< w progmm,e (Jl(> us, wicniu ""'iencholków): < IA:J,
,r ( - t 1alySBt .1)
I 11
l .o u.
T OO, 5-0 0. OO).
I (O.O. Oo~. OOf).
TOO(O O, • O, O O )l.
c e zS,-,1 a)
st..;irt "":.[nOekS,)',
~ ~lrt ty.
}:
toJD.1.Su fi?r... .,. orSJl .3de a:
[DJO s,,i~ er'" 8 e,:tySlla e a:
{f;_]tEOtD3:>lAS se--b •!!S a er{ rrost,SMde .
1 s zeo:<Pro5~ys aoer) - 1,
o. '1 L. 3, ...eu ro"·~ha.der • ,,. R1ed,'Sii dera n l
retur E_Fti.ll.
, (F~I eon„ urzad1en eron-:.-crea--e1 ere:-S -acerCDe l3r~cJa.
- (cr~\QRD )~6uforSh~dera-~ BJ er~o,nt~r ).
~_uc.h-Pi,tSh!de a. O}))
return E_FA1L,
Pod111•wanie
w Jak• ~ b dotn« do danych, krórr z.awieraJil ~ wykonywać na nich ...._
byta tutaj wt~ pl'"l)'da i~ nam w d11lsZ)'ch ro.zd21ała,c,b. Do tego cqsg ~
~I.BIWwać Io. eugo s i~ n:iuc;zyla 'my: ,-;
• Oc-kllł cjc lladera I fomłaty w1e1?.Cholków mu zą do skbic Pl,Sow:at,
w inlł)'m pr2)~dku hlldłT będzie: mill:Ć złe wyniki tub jego cb!1alanie ~ .
si niepowodzcmem. ~
Picrv.izy h3der kaluje każdy z wkr...: holkó,. · wzdh1 · jego wt=klor.1 nOTlrurlnego. J.;1.c-1;
ska1owanie odb:ywa si,.: rc1, LLOmL,.;mic:. t.•fek1 ten pn),p0Mim1 rwlmu n,wanit: balo1m. Drugi
z m~h:imzmów shadcll' jest bard✓,ieJ złożony. Jego dzfolame Po,~ga na znit= ztał<:amu
modelu z wykorzysiu11icm foh ~inu"°' 1y. Pui..:dslawion) tu ogółny pomyd może był
podsr.a."'ą do 1wop-cma "'-'iclLL e&ektow. l:łlrn~h J, k fi.tle na wodz;e. nk'f"L\wrmśet terenu lub
moe e~ . znickSltatcają c p<1Wt,.;rzchmc. \\1 w1.<ll'1.ai · \)qtl pokró1ce wyjas.niona ró'ti\111cż.
j a.prok !J'rto,i. ać funk je; .; 1LlU~ 1 ·os.inut,, w mcch1u.•zmach ~tiadi;r. f unkeje 1-t- nrożna
v.y C'Z)'Sl3C w wielu ll'Ó.tn)•Ch programach. ?uka1A•H one równLl!Ż~ ie za. ~mocą ogra-
nic-;.orw:go zbmm insLmkc:j1 możhv..e 1t· ·1 ,reah;_,,;ow:.mit: l)C""·nych dz.tafan matematyki
\\'}1.s?..eg_o rĄ-du.
Przemieszczanie wierzchołków
1
Zdluż we'ktorów normalnych
A~ 11. k l.8.1.
Ob, · iłń.lt>1~ur.e
v.'Z.(J?u; ic:Jr K'('kfOf"Ó'l\
Normalnych
Podczas ogląd11nia rlee'i:yw•stej ::intmai.;j i mo,..11;1 do$tf'"li:1.:. Jak ob1ckl ,, k1i.nn1ci ct'~u
roz ZC'r.l'..a si i kurcz~• wzdłuż wi~~nci;o \.\'t!klorn nom1,tlni..:go Jedn.!kt.e o 1tkt
cre pud łka 7.;-1choH uj,. :>ię 1updmi:; m11c1c;J. \\ moml'ucic rozszerzania \\ldłui. ',
nonnaln :go jegu sc1anki ro2d71 ·laJą si\ Powodem Jc.:-s, brak ciil&foki pomiędz)•
ra.mi normafnyrni ka1dcJ ze ~lab. fr<'•rna z ~t p11dctlrn przesuwa ~i dog ·,
dulo11 i, na1om1as1 boczr,e ~112da " ,,,.,i,n kt ·mnku. Ca!usc rozpad• i·. \I' P '1.
obi ktu ,, ksn:.dcii.: cięż rłm jc.-:c;;t in,1 ~ J, gd} z "cktury m-,m,alm: witru •
polo"an.- z \I idu pcw1e,,-,,hni. Ni, pomalll' nawet fak1. ze obickl_ · ladowono z.t • •
pre;, łych imeń~Jsó1, siatki DJnx \\'}'kor.ey·sn~.\ zb,ol) lrojkąló"-"''• kr re ,n• " ldii
ll'ier-,cholk6w. Jet.cli pod,ial nie jn tym efi:krem. kt,lrego st~ spodz1cwal>śm • ~m .
Io, ii; fen 'Yf' mcch3nfamu shader nic sprąwd:1.i ię w r, :t..)~dku ~•~re z os mi
n ik:;imi. Jednak.że w nic f órych przyp dka h ta ·i podział mo~ uko..ać ~i !11)
efck~cm. a koń
1J ~ego rozd7ialu. "Prowadzając jcd nie kilka zmian do be n
ch:mt~u sh3d!:r. "-"l'tc"""''!.I · przykllldo"y f asme111 kodu, kr· ry 1WOIZ)' efekt !ł'
Ale untm do tego przeJdziemy. •pójr-..:my uu na z b«n~ h der.
\Va.'101'" r11 ~il.a, j ak daleko ~ w któl)'m ikii!runl,a li1ilE b)t _ .
isp6łrzędae w-ierzcholka w przettr'leni obielnów twon P~ruęiy Wlm.cholck. 10\VC
~ a.1Ul.lA~ poł'ożelillia ,.,1e.rzeholka. ...o:a~ są p:rzci dodanie wc'klan r{l
:-0. rł. -.o
l\~tepnif tak okn."ślonc położeni..: , ienchQUro,,1jsst ·paeksaak-A .
... ~doc ekranu. :u 1a:wirm.y jest kolor
.....~.. -..,: •
, iaifa. "-m.""""';f' ~~ 'P~ ~ar.::i,en
......, ___ _ ~~o 'l cca,; mech
7 fl.'il"""":nm.- •
il.adna
j~ gotowy. R1sum:k I ..2 przed taw1a. cały n:n Proót: - aruZ'AJ Su er
~ PO::; ,r;, ro. co
• Pos :/. ro . cl
oPOS 2.. rO. r;:2
oJIOS_ • rO. c3
' GOO. Y:l
~
~,, .
U •.2,
."r~
~
~ltrcy:,o
•
1
CztU V • Teclriłd WJk~tM meohanlmJJ wrtu .,_._
~
W takim pn ypadku mt: zoo.sz~d:z;iUby ?1>' j~nak na l ig.bi~ instrukcjL Po
n~u się .z bardziej :mawt111sowlln)'mi u,;hmkam1. zaden,onst_NJICII})'. w j a k i ~
k3cj11 wykOTZY$tujc ml1'lh:1nbm1 shader. Powy~ zy ~tdian1zm rnoma ZDlleiE _.
,\ led la nuders. a le-Nf)IVnal. -.~rlr oo doł~ncJ plye,e CD,. "-
Zniekształcani:•
w,i erzllholków
z wykorzystaniem ai1nusoidy
Zanim p~dzictny dD Sll1ne:go rn~~~7mu śhader. ~pm-.1w1.1~y s.1~ z l ~ la.ćq ~
rzystuji: kolcjoo prezeoEO\ a na. Le.t:hmk~. Dla tyc~. kto~ znaJą algttrę lub ni:.~,.
~ ' teoria ta bidzii: ~· dutej m~erze l)O\"!Ó~mem. Dla po-1.0Stały(!h bęthit ro ~
7.3".po~ani ~ srę ze wspan1aJy1rn Ś"-1l.lt~TTl obhcZCII.
1:
-l
4elernen~
sinus pO\\!blza i1t co każde 2n mdian6w. D'.i:i~ki temu do,voJnej wanośc.1 x moma :ta.M'O
pl"L)-p~ć jej odpOWieooik znajduj.Lcy si. blisko począlłrn ukfadu współraędnycl]. Kied~•
jtd m8fflY wanos:ć x 200jdując:ą się blisko pocz..,~u układu, "' pf · , posób mottmy
obliczyć aproksymację funkcji s ,ntx). NajLcpLej Y.:tpremntujem 1en~na pr'l)i\dad.1,ie.
~ · sha.c:kr 1.bu.do"'ano \\' opan: i Ll o kod ,..awarty , pHku ripple.~ :h, kt6ry j~ C'ZęŚci
~wego DirectX OK. Zmieniono go nieznacznie~ usw.,-aj k11Jra instrukcji. lee
ogolna idea po~ostala u, .. arna. ln1p!em'-"rttowan. n1.eehan.izrn hllder pos;ada 1.mienne
~ "ki~~ identyczne jat w picn szym przypadku plus lny ckidnlktw.: stale. · talą poja-
·iaj11:ą i po raz pierv.·s.zy j ~.st c..:. ktfo-a okrc:Ja · 1-mh faH sinu oid&lnej , Te trz}' war-
t~i 10 f.3Z.'li długość foh i amphtuda liak pokazano na rJ ooku l .4).
P~oy określające· t~ i długość f8Jli op1sujri sposób odw.lOro, .. runa polo ni w 'PfZ,e-
S1mni modelu na punkt 1..un1r.:js-co"ljti1,.my ,vzdluż fi li inusoidalnej (w ry_m f)l'Z}1>f1~11
Wl~tmy je.si 1kJadnik pcdoż~nia ,vicr?J:hołka). Jcieli okrc tono JUf położeni~
~tli. amplimda rnó'"'i o ~'% ,kości fal~. O tam1 skłłldnik c4 nie jesc pamrru?tI"em ameJ
~l, Wptyil m, llfl ostateczny kolor , yj kiowy.
~now,fi.t.nkcjl
=e~aowe
~b\ji!Sl c6. ~ ykorz.ys1ywW1il j~• ona w rów,,ani~ kt~ ~ ~-wart śei
~ 1n< x) do przedziału (- :rr. 1 l- za.,
~rtc ,, c6 " artoscI 'SkahIJ,(t ~ prJJesu~
wanołe tak. aby preyp~~ać jej odpowiednią wru1ość na~eżącą do, ogm1'1iu::toncgQ
esu,
Rnunik.18..4.
l'tłl'rlllf(:t,,, fe/i
., rm,.rroidrJlit,ej
I na ·onie · c.aht. c, , któr-c1 zawii.:ra pi~rn-~ cztccy " pókl}'ruliki :l~rc:gll Ta)•lora ~1b-
~ty\\·am: pay apl'tJlsymacJ~ funkcJi mu!i \\1.LJ1Qk1 ,e apmk~ymuj t'hl i n ~,
wyko Z)'stujł\C ognuriczoną hczhi; m:-i;lrukcji. Pomżs.zy kod przeo--tawj3 neC'Z)~f
rnechan.zrn -h::idi=r.
s„l l
Rejestr rO J !\I .i; ykor:zysl \1111,y jaku ost:m„"C;-!111 " ' ·b.1or wyni ·o,,,..y dl11 Yt ieti.ltoołkJ. .
modyfakujcm jedynie ładową tego wdóorn. Cdcm poniż.szej instruktjiJ~ IISU"A
pozo tałych skłar.fowycb
ro. o
Pon~ i~truk j~ gcmm1Je fuAACję fuli ix,k u:;mą nu f)'.~1.mku ~ • Umotli-w a. tov.· ~
posób muani; ks:ztahu fali lub 1; czru.em ammc w:;ime J~j pop zez dop35owywu.n1t [~
~dr ,v ,., , . • c·.x
[)rU" ~SłBW instrnkCJ1 obl tC7.a wlaśc:h ą waf\OŚć fi.u,~cji s, n (;,:} &Jpłer,,.,
1
~ '
d't\iJ \lltldory wartości , Laki ~ób, ~ k.atd)•.r j str • _1 zawiera . lemru:nt s.'l~~~u. a-
śt t,ic iloc n . al~y tego ,,.e tora J ~ a~ości I sumUJe ryslkiic cztery clemC11t)' do
~c•jednsj w:uto:ś 1 -kalam'J. 1,aón umie l('Z3Daj s.t be2potrednio w fe}eslac t1l:
rl. rl. ci
~ ro y. r • Ct ł
NUtł,f>l11JC
. ) SK1Pf7.t:"Z kałowa.ni koloru :t.ależnie ód \V) ~ei. IJ$,1aw11~my JCSI oto, ·wierz...
cłJOt Prost lQWianie " rto.ści g.:-m.-rujc: ko!or mieszczący si norma1nie " grnnit cb
(- 1.0. LO), f 7. spr~ I U\"''ryża wartos koloru do zakresu .o.o. I.O . ron"i waż tło jest
, pragniemy Jmt.'"łiUD:\Ć Lro h~ w:trto. '· koloru. Wyko nujem. tu. ipoprzez dodanie
~~ni a przcsui]i 1 umi żi.:1.one_go, c-1.w. Ujemną stroną_ l.aJ •il!go ptttsunięcia
tesu jesr e ekt zb~ du~,. o na ·ycCTI m ko,loru. a pr1..yklttd , jt;że,l ~ \1i icl7".cliot,:k mn
QJtość koloru odpowi3.daJ ~l'.ą warto~ci RG a ( .o.
t O.O. OJ)). ckmilń1t: pr.resumi:c•a 0.1
~ -odaje:. n ·
u..·czn kolt.Jr J)J"Z)'.Jnmje w:.trtośt: RGB ( I.O. O. I. O. I). Witr.l bolek, lAlffli;iSt
kolml ~ ,00t.:..•o, stajr,; !ii · ró;,owy. \\' lym k n1m.:myrn preykład:tic nie ma to zb)'t dld.7.Cgo
lll3tU-rua.1~1 warto() ,:yn1 pi~m1rętnc. tworząc inne efekty;
. •, 5. ńl . r:
bi to ~ia in 1nakeja prA"d J...01iro,,· •m przi.:kmalc~niern. kraluj nna waru., ' funkejl
In ,., w.an:ością amp1 irudy , dodaJi.: w 1en sp~lśÓb oto·. mlłin.łł wanośi: do początko\ •ego
sib.dni a 'I określająci;go r,c,fo.tc mi: w,et7.chol k3·
~ r'J • rO. ·• C4 .. , •.r:f}
wje ""' pók c,.-dn.: w,~r.1:cholka ~ą pnckm kan~ nn w półv,t.:'illlt ekranLL '- 1nik
dz.od .. - !~
«uClłllil programu pnk,a"~mo na~ s:unku. 18.5.
Implementacja
Tera.z,. kiedy zobacryliśmy jak IWOJ".7.)' si.; mechaniLTTI)' mader. przyj~jmy •~.jak~-
htda kod _programu. który ,ykonystujc rak.ie mt:chanizmy . .R)'SWiki 18.l i I .s o1b.
zują dv.a rói.ne tryby 1akiEgo progrdltlu Wciskanie przycisku F2 powoduje P'JJ«;wD::e
między iróinymi mei.;bani.mJ:!ffli shadi:r. Możn:, zaUW.lŻ}'C nitwid il 1'i"ll05C łll')'dajooki
Jlfl>' przeląćzaniu się z mechanimu \ii,'Ykorzysn•Jąccgo funktj't simti; na had« ·
Oba b') by ~ idtntycmc. jeżeli chodzi o ilość ,., 1.;-rzchoH,;ó,,· 1 rozk37.ów pmccson {C
leez mtthanizm z funxcj sinus ma ponad ,łw:1 razy ,, i4r"C'4?j instrukcji. PiW,1Órlm) m
jt"Sl'A."2~ - liczb.i. instrukcji ma zna~;,,cnie.
!~s• to K'll fonnet wierJ".cholkó\\. któl') ,., •kor-0·~l) \'a,him~ wi:::zełnicj. Wa.tnc.
s..trn
J4:d□ak, aby pamiętać. ;, ló wfa . nie truci fonn t wicn!chl.Jłków '\\"'t'S- rony JCSI do tdl,-
ninnów sba-der: · ·
.Ol? 1 OJOf ,F_' JER2 C030• 'li ,' l I oJOPl _'. 1 ro YF_o1FFUS!:1
::, rw.t tEAl
)'. l..
':
_. ,._.kodzie inicjowane są wsey11kie standudc,we .
1
11113 iałek llł8ffl)' rulaj jesieze dwa r6bic uchwyty Zlll1:'~·
0pr6cz bufor6w
~~iactl. którY ~hariizm ma b ustawiony dla. - ~..lłbnn_6w thadcr oraz
~~"'9,. ..--.,-,- ~ .,....-..,.,_-g6JneJ ~ -;
łi łTt<hn i'1 • AAP l acJ 1 ee 1( )
:J
~
.. ~r3S111 • o~
erGSlui1 1 - a~
..
~ lT : Ut'tl'0 zShaoel"'y{ ~
~ Oe ldtacJa( 1 •
03D"•'S0 s . . , o~ .
o.10\'SO:RlG(DJO'JSDE_POSl t .ooo~r_Fl..04 3) ,
ootWSD_R!GCD30'/SaE_ I • DJD'iSO JL. lJ.
03tNSD_IN'.GłD łSC _DI FFUSE . 03(J.\1SOT_OOOCOlOtn.
IOOiSO_Eł:Dt 1
19,Iltfł!.lffe-t!IJ QrSMdera.
J{OO) Bi.J~ fet• ~~der'a .
r"Z~i:lz.en eOSO->CreiJtel/,erti:"J:■
ader( De · lciri:IC: a.
• ,111SufcrShde-1 ,3 .. ~~0u fe P"'l ' ~'"{ •
D
IJc. Sh ~raSl~ . 0}))
rl!4.•..irri FA1- .
i&J'c~ihCęra =-P,Tease( l;
1 JFtl EOtttlOXAsS(lr 1~S.t\ader:.. rcr::r: • 1e(@ \ \r. d a\', Sn :11cte1~\ \SC-.1 L to:Tcł l s \'S •.
o. :Ull, a~5~1orSh~t~ łl. 6~0'4!<1.~~acie a)l)
re„urn E-fALL .
w rt · i • ·eh calyeh nie ulegaj ~ mianie. la więc nelczy U.'ll wtić je: w tym
i z.ipomni1: o nich. W · tklffll może być ~yruacj~ kiedy wykór.eys1ł)jet}'Jy iln _
oizmói.1t lt.ilder i każdy uzr.,·a r..:jcs.trow ~• łych dn ~~ oich wlil!;n}'ch c,coló,.i.·. w
P' ramii: sboo r skalują y wykior.eystuje rej~1r c • ~ hadcr z funkćją in~ ·
cb I c /. nnych p~ ipndkach kilka m«hill,lZmów h de-r mott: korzyQ t~di
rui eh. Joonor.uow ust wien,je stalydJ osz.c-'l W-ll troch ~ p~cy ,oda.as w.· rttcia -
r~ndero'L'.'ania, :1lc 1n~oo i~ upc'w·nić, cv nic obróci się to pneciwko mlJn w m me,: ·
gdy program :stan i· i ' ba.rcfaic:j :d owny:
rud?e I eilJO-,Si?: eru„St,a~rCC!ns~l!r c . .!iła' r"'.)'Sti1l· h, n.
:lńtJriafllffi~~D.30->Se J • t d rCtmst t{7 . S1nus . • ).
retum s_
)
v-=,1d „tol1 •·i!C:J 1 ee
[
Oba mt"(;bamzmy sh&di1:1· ,,·ykony~1uj pie::rV1.:szc czkr;· r.;-jcst1;• ra.-ły h v., cd11 prr,eche--
w nia m~ 1e ~)' lrani.polTIO'II .ancj. Poml""'-"37 vr LWor.t< n~m prog_ramic ~'ljartośc1 •
me niooyfikmvanl!' dynarnit.7nte, morną pr~nK~ ten frugmcn• odu do jednej z •
uruch:1mianych na począd,.o. os:z :,'tdl.OJąc " Len ~rosił h trochę pnc . W pMtml-
pny.ldadzil'.' umit· ;,.c.rono ti.:n fr.d.g.m ·1,t koduJcd1-m~ dla L:ichowoni pro;jny ~t
Ta mia ,-.swic pąmrnctry d0ł)lc1- ~ rown:m,a fuli j ,.,,t-l)Ółt 7..)lllnik pnc un• ia. .
_fali inusoidah1_c · u.stawia ·i~. z1jtrnJ c ta_kty ..-c.i;,am. c daJi: pro:>t)' • ~b-ztl.'11!
ID: '
a~__nio ':11~1:tu w_m,ąr,ę upływu C1A'lll, Be· o a\\ mozna ptl\,½ ~-t)'ffltnto\,..J.i.; z ~
'" rt0ŚCB.m1'1 1 . Zmuin:t posobu oblicz:Lil i f,IĄ ,,,\!'.k~za lub zmnir:j!>M efekt 7J1 •
cmia. Zmmn:1 dług~, f; li generuje SZA!r~kic, zbu.rum ah: tub ~· ·,, rnc'i\W
·llf frogrll"rrt ~odu ~ta1i.\ia rm..~jzm ~ffl' Optym nie byłób ,. &d b) ~hanm-n
b\ł ~ ·fm}• j(-d}'lllt:,. mom-t!ln ,e wc1 ru~ul p.rze: ~ kownika kia'"' ·:s F2. Moh!a
róvi'fl;ei zofł)ffl_ lizow,ć kod po~ruz ~ 1.av. · m~ L ~ t)•cb ta~eh. kt{!l't! ą \\)' •
S'f"lDI: pr.r.ez bir;hl_ey sbJ.der. ~e zro~1ono tak P?nrżeJ ze\\ z.gltrdu Ila czyi.dno. kod
paza rym v. ,Jmf"l)~t.ywam~ si.a!..: 1 1· nie "')-ffl3 ąJą zlly1 ~o ope· c:ji: w,
(
J se
0.1.01JI1 krokiem j - t narys wanie: s iatk1 f;>on;hzy kod zbudowano " ' c,µareiu a kl 110-
acie i tlci i oopow1edmi„ t~L'hnik · ri.:mlt.:n,'" anh opis::mą poprz>C<IDirn rozdl1aLe:
1-!-.z ~ l · ,-5e S eM60ur'C ·, (I m .l,~k Elu c ,e łCĄQl k
S1, { E'_S~ Tłl )) .
1eoJ&..::.. • l· ; l(l:!S{m_, ,:!~ka . OL
1 11 • eOJO.>CJ...a-,. Jr,
1
,.etfPr1r.11 • 0,
~ i.:.t -sO. O
ft I :;.()l.
ł
,o J)i~ ~~)' rozdział\ v.· klÓT)'ITI prel 1.; Dlt1Jc:m dwa m ~hanizm}' sba~cr v.: jcdny~
~~kbdiir:. N'.ale-"'q pamj'tt ć. ~h • usunąć n"a m1.iich1mizm. zarówno w po111 ~ fu ·cJ•~
1 w fun ,c:ji Pr ledZm s zcze-,n em:
łe t~a~er S1 l ,
,. ue _ tS.. ta · ~a.1 0.
~ V • JlicMlld~........,MdMIIUNlet
~er~
•
Pomysły na rozszerzenie
przykładowego prolJamu
rstnieJe kilka !J)OS-Obow· na rc,zv,•inię ie przcds w iony<::h w rym 1rozdz1ale ~ " ' .
.tAłoźtfl. Poniżej zarniettezcmo ki~ pomysU1w do wypróbo,.., rti11
1
-
Dtn, .killującc_go mechan i:.mm soodc: p0wid1u111y si,llk~ 1 I.I Ul.Wiaro}' w fonnam,.
zawie~ , ·półn: dne tc:k~tury. N ~ępni:e dllą kll2d~j 7. powie::n:chmi kodt1jil'1?JY
waność postAci \,=pólr~neJ u. Warto. ci •ej nie wykorz,-~tujcmy ~ IWlll
citomi st jt: ·r onH uty\ anB j ko dotfa0co"'1 ~.-:~pók7,-nllik ·ka.lov.•ani11 w l]lfl;t}C~
siw.der. N le~ mera.i: ponowme o. ·or1.yć ·h der UW"I.głędnii.lJ~c ten w~l'imuk ~x-
czas obite; nia k::do1t1.f'311ia. Ji;tcli wsz,•s-1ko ZI.XStafo pop wnit: ust3\ i ~ ·atkn
zmiany kali „.1ox$ypie S-ict n~ s.k).adowc trojkąr~·- DJa ~ ii;k,zi:nia c:f~ktu ino-w.
dm, ć mi.~hn.nizm ~b- der tak~ aby zmni ~s.af ,.,'l!JlO-śc ko.nt1fu am.1 ko1oru ~!j,l, • i& ,.
SZOl'legc, \Y mornl!flcie zwir; ~ZJ11i11 \\' pókz 'llnik sk1dcw,·:tmil. "alezy mwnicż :t. 1
o w~L(niu rrrapo~ ania prze2toC.7.)• tości 4 ng. c•lpha Mcmime ). Powoduje to trę.kl
i:t1ozji wraz re stopniowym osbl.hie-njem intensywno ·e t obiektu.
t flniki do Oł\ d tlenia ll'as~e: o pr.zyłd du. \ ymąga •to ob! i~ ~i11 OO\lt )'(lh "ckt ~
1
rmrm. lnych dla katdeg,o .,. 1cr-.l.'C hPika w mtthit nI zrn.[L'! :shadc.'1' (,, ~J.:azówkl, k,ool(('.
j t obti 1-enie;: wartosci funkcji cos{ J),
RolilllMI S,8. • Praete I dQta k • łllf1 & • i łl:!•ilt lllaGc
...-
ojru~ potrafi~ już sobie "1. tym pomcb.ić ie-które obie cry są 1edn nadal zb,y, zioione.
ib)• moina 'b ło je g~o rowaĆ' c łkowicr~ w 3D. Pommw to pos1adaJ on wlaśc" i,
ktiYr SWłł.'lnii: D dają r~ do gr"~fik.i .,,ń1br"' LrójViymi n,~j (3D). ·tór-q ge11cr1rje ~. V.j'•
~ · c bitnx,ard}r. J~nym ✓• raJoch ob1drtbw jt:. t e~ptozja. twurzertie praY,td1Jwej
płozjj rnum z dy1m.:m I o .:'111i..'fl1 j t,.-st d,,_: ko ' 1JOWN\ O)kracj . 'atomiast b3t'Cho sku-
t«mic można. 1wo17Yc i:.:ksph)7Jfi, w •kony~tuJa_c d,,uw rmi;.iroi,1;1ą artim:11:ję, u~ \\'loną.
· gracza. Kolej n~m obiektem. który fat, o można s.tworz~ z pomoc-ą bUlbo,-
. drzewo. Dn.ć"'a to ctłłkien, skompl 1ko"•ąne obie'kty. a n:mkro 1ranie ~ .,~ l ~ u
m u pmi. ić kłopoty ni~Jednc.:j karcie ~raficzne_,_ Alt~mńl}"'ąje.st 10 ~..-orzenic obram
~ i rw ·ttnderowanrc catego l ~u z ..i. korzystanii.:m b,11~6,,,.
Rysim11k 1.9.1-
0I, ~ JN l'Q7Vl't,C,,I
p/~~"!t.W
~ :pdnrc
.; .. " 'IUrat'IJł łr".1.Tlł!tlat
ob,r"Ma,•~ V ~WJ' u
~ Qf:
by utv.,·onyć tJj1Jb,1fil\l, nak . mwo zyc. dwu'IA ym1ann, _ pro~to .1 i obmcać gov;
runku '1~1'\Va ora, za · Ld)1U rnz1.:m, k.u„'d_ 1c;n .sit; pr.reniick1 ''"' w1 ks2 · ~
oo W.d. rnn1k1r). A by n d 1ym i!t"lll'l~ow~t:. mwt)P'T~ my rnc(hl'll1 ilffl ha.der. ~· dJ-..!-
micznic ~-dZit:' \ orz,•ł lali i'.IJ co.krt" op.._·1_rc.:1u o g ID) , pm,., · , ur bse et
Mocmmm1 ' sb.adt.rr rue są ·onio me dei • wor1.cn i bi 11 bou.rdow. li:~ po-zwalają_ m
mnych p.'ł?"ilłT1i,;tn1w 1U1 p,J7wm te k:1:t<l-...-go z wii:~,bli'I.
m nto'!'l ,;util! \\.. idu N
- lffn'C\
be7po redn,ego mampuJ W;lnia 011nymi ~ knchoł ·ov. przy wcyciu prooeso
fo C7.Ai:"$C k.:;1ą2kl omawi:1 łl'lt"tb:111i..i:my shJdcr, =.1 w, e pc..,wjnniśm. je~ ko~
ii'llllllllllłłl:9.S.,
~'N,·~Jr
~dr
-.. ~ I r
i~ •
X
RpqMk 19.4.
~m ~ktu •f. ·b1
J1n Pf»'ł ,al}'
ie Jt:SI 10 gelłt!'ralna zasada .-1.uso,,·ilfl -.,,,;: ~ z, tkid, hJII ar ~h IOCY w cym ockrd-
n,·m przypatł u po!epsLA ~fck1 Przykt1d t1,;n ohr~•✓ UJ:.' rn\\ nri.::.i:. jak bez d111ego
~xy, z pomocąJt:dm:1 dod.1tko\,cj jn~truk _11 mu~llil 1x,pra\\ i· I.;! i,;kt końcov. .
n,ec dcxl3m. ze- rnc-..:hruu2m sruider '-"'yko 1y:,,.t1.-tjt: w:spuk1.ynnik i.; alcmill\i..1 pm":
\\ ny w 1ę1c l.17.e t7 do ~•emw. l'tia wictko~ciq s. rn -~o ,ilłboardu_ tlzi,i; -i i.emu r
~~ d namicnne -Oł:~ h · ronmar, idu billhc•ar rb,,. u,c.a\,: 1aJ c c~ \ko JtNin !, Tffll
~ed} ~l!fini wahsm)' iu.1 \1.->l;)'~rkic dani,; \.\'i.:j~c1n,, L' prLJjrz)jmy '!>ił; saml!1Tlll
0 1itt10\-\ 1 shader ( .\fedw Sll(uli•r.\ Bil/bt)flrd. uh •:
vs • l
~~ wynik
. ~cowy
• ,( r 2) Jest
• ..
........
,,...
...Ol"Z)'5'yWany do dynamicznej muln)' r02mia-
rb\\' oraz ,otot.ema b1llboaitlu:
~l r2. , J. r.7
Nd~ ctwa wiersze kodu deq-~ą, ~ m:czywiuym u~eniu i ~ , u bmboamu.
pjcl\\'StY witrsz ~~·~ ~e~tc wu:rzdlC>Hca wulłua: Jego wektora prawego i umac:sicza
wynik w rcjeslr'ZC r t . , Ko1CJ~Y- \\'lers~ prze uwa ~ot-en~ prz,ec~~ane_w ; 1 w~łul
wd(tMS górn(-&O- Za~ r-o~rzen1a ~~lov. a~ Je~ wartośc111m~ mtjduJlłC')'ffl• s,ę
w r!. Rejesh' rl ził„ 1era tcroz ~rawson)' , rM;S:ienony w~en:c,bolc'k billboardu. to
~-szrstko~ c.:, jest p0tnebne dla b llboardu ogólnego prtt7.Daeicnia do prl.C''ksz\ałtani11
p ~ i _fllOOt3lu:
0
r . r2. iw;. c~. ·O
1 ~-- r2 Y ) . es. r .
0rnenvione 1rzy ~•apy zobrarowano na rJ unl«,a 19.5. PCJkęu_oo una; , · tkl dzjaJ3nia mc-
cbllimtU nader od nuu dl lneclt wit~olków, c:h()Ciaz w rzeeeywistości mecbanizm
działa w danym momencie 1, 'ko dla J1,."Qllcgo 2. nich.
• • ,alt
poDO""lll,.WI.IHJwi8.'D',O-,
1- ...... .-.
ild'd tł. ·C • I l
..
..
ft;tP9lll. . . . . . . . . . . maall-' M t ~ . . . . .
•
1n1plementacJa
w ~j częki ro:Uizfału Z-filll iesz ~,ono t1mó, ie!n i c przykłaclo_we o program ~ ,.
si~ fe nic omiłwiam, jut plików nagłówko „ eh. S',lyt nLe mn tam nicz:ego · ~-
Pcl~inręte zostały ró",.'llici: 1c funkcje. ktć,r~ b)r ~zegółowo om1wfane w '2ed.!3' ~ ~
" ' lis1ingu pomintęhl funkcje fnic.juj ce. \\f aźną rnformacjąjc:st fa ct. :te ·te stur:1 tb.
ladowWla.j~ t z pHku flare.d&. który znajduje . ię " k:1talogu A'łedia na dol
ktąj.ku D. Plik ten zaw icrn pro„my o ·rąg wypełniony t:;f'",;1,d1cmtowo z "' 1':0l'Z}' :
kanatu a1fa. To bardzo prosty spo ób na zobrłlt'.owanit: pt'"'"''iat„ ł.ródra s\\'i 1 1łt. ~ •
v,• ~m pr-zykładzic jest wpdnce w. ·s.tarczaj ący
r-0
ł
return E_fAI :
~~ ~w,~rlcno ~ ~ L.
ch,1' -~loc' (O, ~ ~,200 ('- i lOQ.fK_BS).
ie ·1coor . 0).
· 1erzrMl • O. ~ • s.1:zeo . ERz.ont.:.-Ba)) .
ltłor światra roY.;proti7.onego Jt mbi:ify, Jednym i prosbc"Z}•ch posobóv zmiany •oloru
~'lecącej lat8nli je.'il zmiana kolurów wiel'"LCbołków. Moma rowruet wygcntrować efekt
bru~ia intens~·no. ci światła poprilc?. ustawieoii: romyeb '"an.ości. alra dla rMnych
'crzdiotków~
1· zchQ1 (OJ d • " i"r.LC lO :r:(.J d
1t LflCruJł [ 2] d •
On:illt"Jeja me hanmnu adL"I' okn.-ś!.a fi rmat _ •ej iowy "'-ier«hofkd\\•. \\fano lau·
te wiktor oorm:,Joy 7.lldeld=wony fiSI tułaJ Ja~o w kto,- dwuslc!adnik°"Y, wL)m
kMnym p~ dku \1, ·p,ółn:1r-xmc iekstlll) ·· bhsko · v,ą7.3Jnc ~ \J ~klotami IO;~,.,,.....
w;~ fli,-t mott wi,no było!\ zmtcnir kod mt:t:bnniJ.111u • wy OTZ)'stlć iedno wtj
d óch a,10 . Je<lnolde i!llpn~zcnto illl}' llllaj ~po b jost ZDIICZllic bardzie; ;
i Pl'Zi?jf7.) }': 1111
f
~SO STRtAA(O).
03011so·REG(OJ()'.~ ?OSnrn :. U30\SOT Ftfl TjJ
oJ0•,sn)!EG(OJlY1so(~ · . rocrsor_n~ 2>:
030~_P. G(03m'SOf_OJFflJS . 03."fl\~- OJt.\."'OL . ) ,
03®50_RtGCD30\SO€_J!XC~o. D.1-! ·,i:,· , ll"l?).
J.
030\'SO iO C>
-
JOJO Eu er ,&rors ~,...
flJJO &J er led,S~ !l(l<a.
orShifaer~. ~
'1P.i.łJ
- .
E AlO.L • L. ~Bu ta ~led/SI ra)))
..
t)fń 1tt011~emrm przykt'ad ~est karra!u alfa 'nie ma ~ u na ogMny tfcł4. Jedna
na on)"k.ład w payp21d u ty.,-orzenla Fasu test \311.i byłt)y ~ n y . aby drz.cwa n tJ)iy
pnt1stoir114,?te ~z przcu0czys e frag n dl'lew pOk,tor,yoh Witej (cr,;11 renderowa-
~'Ch v.a-~m J). s.t tQ Jeden L tcme ~ porusz~ w rnmzJ3'e 14., gdtie l)Okezm'lo.
\e$'t kan :u I mpe.m1a,, t-e W pełni pr:MIJ'OC~/51e fragmg ®łektów są Mprt?~
pnie-zroczystc.-.
Pocklawowa. kontigunicj 1.1 t1r1.ąd2 i11;R je ·t idcntyczn~ k '~ w 1ym. przypadl11 urworLOOO
ro',UUL"'l • •iia1fo punkrm.1s·c. które położone jesl \i\' tym mym mi.cj.sc:u eo po. wiata famp .
To dodałkóWe ~wiacło, poprawnie o~, i~tl'.3ją model blarn;, uzu~łniit niejako łą ill.lZJę
bmpy. · 'il. iallo p~inkm, e ustawi Wł J'- -1 t~ł t o r.ł2 i pómiej nie jr«St jut ?.mieniane. .łcdnaki.c
_poświ~ta lampy „ f) 1'11 pr7ykJad7. 1e pulsuj,c:. Dla ó, icz,cni~ mot.no oicco zmod. fiko\\1 ać
1)$\Yit:ifCPic pu11ktowc , tak• .. ~ób. aby j1!g· inh:fiS}l\mo-ś,ć i 7.a ;~ b ~y z ·yn1;lu-unt-
l:OY.-.at1e z pulsowanil.!nl p~wiaty i;1ta_mi. , ie powmno to spra 'ł: dnej lntdnośc~. t... k
1-\ ·ę.c ])(.'20Stawiam t::, 1..aba\\,: C"zyt~1mkowi:
O.._ .GifT6 'S aL oP m-. Ol'lt! •
.-y( S.1 a· lO?vr , .. -f ...~. .:- .,. ,eo ( ).
i.'pe ~ COOLn
ał 'il.w,..,-:. O· .s~ r • 1)1: us„
O 'il5~ b O,
. 4B Of. 001).
il se -
t efl ~t onl • O 2
te 1e030- ·St: P. r ,, U R ):
_. .urz adze 1eo. €! - ft 1 • o)looi?l2lll ~
eOJO-.-S(!tL
'Ole,} ' '
- dz. eO O- L h ule '
Pn□i~· kod obr-Je-a obś rwator-~ ~ół 1at:m11t R,3;Z ies~zc pncks.zrakenie .
Jest tak. aby popro,,mi Rndero11 ć S1 (kę:. Aby obtjra"e b1\lboam 1. inntgQ~
zmienić porfriszy hgmcnl i,odu: ~
C.11lS • t f GE'tT1~•.Coont (l I 1000 Il ;
At LH( •::te.rt de:' w.
il)JOX , ciouc 100 O „ s (Czas}.
2().lH. -1(10.0f * <:OS.(Cl?~S)).
,03ro'. 'tfCT003{0 Of. 20 'J ·. O.Of>.
o:m ECTORJ u1 o,. 1 o . {I o· H.
r-zad.zet1•iel)JO--:..'Set "3r1$ Cl !030 S_.'(Ul . ... _Mile f i\.. aiu)
s ·arka I tarni posiada l)'lko jooell podzbiór i wykonyswjc \y lko jeden ma.tem1.f •
Drdi,,5ubse usmwiu również m~tum,ZJJI , ,~~rt~ snader dla sialki. f więc nie trz«M
rol»ć bezp(,sr,e<i!lio. N 11e"l}' jednak pamiętać o ponownym ust:Lwieniu mecbanmnu_ \fJln
sh,acfor no rm.-chanizm billboard .sh:.1di=r. kiedy renderowanie po wiaty latmii roaa;x
zak.(Jftt~onc:
"'11-lrlattL.~eOJO·>~ tier1~H _: »~ er ul)''S1ar1.-1rnj),
~-HO):
Ter-~ nateży ,, d2relić tny ektory obsco atora I znunnab2Jow je. v,r inn)dl ~
dach t,Norutcych billboardy poprz z wywołanie funk ~• G:et rans o ~,nu,:e ·
m:t ierz ob$cn, atom. Li:cz możn rowmcż mit.~ bc.~r dni <W$\\'!) oo ~
i;(J'adow eh macit:r.1.y:
000:\~ĘC
~'EC
D3ID;'l[C o.
DJD~~ 1ze( Pra ~. 030, ECTOfi:4( _11.
_21.
<,.U _3l .
Podsumowanie
Pr.w/ w.seysl j r:·'tt~j",ymiiaro,,.~ tJD) w)'korzy!11Uj bi l'l'ocr..irdy. illiO t.e i)it
nie w)m:ig□j:I m1:clu1n izmów· ~hadcr-. fo \J ~nit! ow·c mecrumizmy dają_~ ._
Bad wr~h,ołkafl,i. be l){l_'ł7A.4'y kór.cy·.s1ania z proo~sora_oru b] 0 1.vani.a blit'or,a v,·
i:hóikó~ _ Implcmcntsc '8 blllbom'dów 2a pom~ mechilll l7fflÓW der l)OZ'l1.a rin •
na ck perj1me11:tuwamc z mmi bez wpl i,,·u na kod progr.:1mu. lou 10 ok t.a :s ~
w sytu:1 ~i. gdy ~ ·h:Je 0!-6b pracuJi.: n d jed'.t1ym p.rOJ~ t~m
Układ kartezjański
nne układy współrzędnych
oraz i1
. . . poł ., "' . ,, rze trze111; 3D określane Jeit popraez
W kaidym innym r~vd1Lalc tCJ ks.1~ • oicmc :re
'lania w półrzędnych, zwany uld~-
podanrn trzech , ~połrI.~dnych •: Y Z. Ten uk!ad :, d . \\ korrys.ty\\'mlynł w tworzęmu
1
Rysunek M.2. .
U'społ~e
c,·Jr:,rdrw::r:ne
IO.O .I
i :rleryane
:i: r cos0
l'
y R . in O sin 8 6 - tan • -·
X
o . ., I ✓-~---}~-
lilll"
..
.. -
Wspób'ZQdne sf ryczne
c. ........1atlski""?
.st,dinar\d i,uu.-,
~ita p6łllędJ'l)'Ch artczJaflsk,ch pochodzi od Kartel]u$l'a. który zn 'i Jes miłd I nu
I! s~11ntl(J pl)"- edzetMl .myślę. wicc;estem... ,
•,sP)łrzędrte biegu rY.J."e z kole nie :;;ostały na .al'le na mczyj~ cześć. Tak w,ęc teraz ktoś. moze
s,t p0e c>s.zukan . Je 11 mógłbym Jakos pisac omuś Wyna ez1en e wspóirzęd h t> e u-
• ~~ Ie b~ 1-0 zrooił. Ale. parafr.a:zuJąc K· ezJus.za, lii:zy się pomysł. g_
Odwzorow,ani,a
pa11i,dzy układami współrzędnych
wmechaRizmie vertex shader
Moc-Jumizm · ha L!f h,·orz ny ,, C} rn ro1d11ak o1'7.)P'tUjc na wcj~iu poto-.t:enic \Ht;l"l-
cholb, lecz n.:j •sir polnt.~ni.t ,ui..· /..:1\\ ,era wspókLęd,~}' h •. , '!. p1.mklu. \\' rqc trtc l) m
majdują s1-: w p{111'7. ·drw i.·. yHndl) CLI~ ,1- formie kilta. promfoni L i wysokośc;. V t--clu
tworzenia efektu -kr •ci.:1 m. m chanizm ~hadcr operuJe lHł '\\'JrtOS inch c titldry·cm ·eh
zamaast wartoścmch (. V. l. Pomc, •ra JC$t tn l •lko przykład. przr.:k ,,ał:~me je \ m~~o
i omplikQwru1c Moi.na jednak w pr :,,r • pos. 'h 1mudytHtm,.,ac wspoh-zi.;dn~ ~/h~-
drrc-me w me<;hanizmif: b~der i n "jseiLL przck ttal •Ć j~ na " ' pól rz ·dm: k„ rte.lja1' ·ku?.
p ~j pra,ckr.awiooo kod llll~haniz.m~ s~er. ~ ob~ł~j w ~ c,1~~
(z pJxku llfoll (.V'h! ian.V$h). Zakłada . lfi, że dM m1 ~ej C10":Y1111 S_ RllaJ kątl prou:i1en
oraz wywkość prz.;chOV+')m ne w .reJtslń v□ oraz kolor ś,~•mad~ roipro.S2on1.-go łapa.
n1iętany \1i rejc:itrU vS:
~- . l
Kolejne wi,cr y; obbcają picf"·vszc ezlcry skladn;k, aprok '}'lllacJi s1m.1so1cy. Aby 21J.
rien1ow11ć si't: o co łlltnj chodzi. n::i le ./ pr.t.cl:z ta o;. poprz dni ro.1.d?.ial Je.ż.el • Lak l'lle ·
wróćmy kilkanaście kartek '"'' -tccz. ie przejmujemy „ i'r h1taj ogrnni~zanmcm wm10śc1 ·
do 7~kr~su - n. tr). Zo tało to jin. zrobione pockZ3 imcjowar,ia bufora \.\'1er2cholk0\I,·
wa11ościami ką,a. Dokłt)dn , po ·ób real i1.:a ·j i h;j czynnośc1 rnoiJm p1 ;rt:ś lc..-dzić. mbuj,.!s
kod. Jak wynika z poniż.szych cne-"'-ch wierszy ko fo, ,.vadrat ,,,ario: ca kąta p 1;:d10~-.
wany j1: w r2 ' i je t"' koreystywan) jako podsta \\t. 1n l1bliczcn niep rzysry h potę1!
,1.1. korJ;... tywanych w szere u:
I r2. .. l . :
l r1 Y. r2 .
! z. rl y. rz ~
1.. ri. . 2 x
~ol~jn ~ztery w ·ersz~ wyhc:zają kładniki kosinu •ojd , Picrv. !J} . hMłnik ( 1.0) pom1..~·
JCS! Z r J_e tru 5, a p,ozcrmlc ~kladn iki · niepar.l",'Slymi pot ~gami kąta. Po r.1z k leJD)'
1
Qt(l i cały m~chani~n, • hadcr. Prawd. że dość pros.ty? Rysunek 20.3 przcds.,a~.•ia opi„
saną proeedur - w sprn;~jh gr.tficznr Kod ji.:st ,,.. n. Z) i.·isto c, dość m<.n.łułO\\I ·. ,smieJt
fau. klóra ~-ykmmje pr.a:k. ztałccni:-1 n~ ,,·s:półr~dnyc'h eylindrycznych~ irm doko11~e
oow-...'f'Sji pomL ~dzy układam• współr-1ęd nych, a j~szczc inna obsmguji; prlet-. arzanic
\ ukhłdric krut1,.•zjańsk1m. ~ ło:r..na sili p , usic zmi nę zaw~rtoki poszcte ólnych faz
~ ce]u uzyskania inny Il. i nteresLgą ych efektó\ .
W lym przykładz.ic . . ._,ykc,r;:ysc no ,,·spólrĄ-óne ·yl~ndr,c-zn ·• gd)'i. dZl\:~i nim dm, pri.>-
. i1.j j poka1.ać , spomn i~ne 1.: fckty. 'ie Jr: lnilk nie -st i na przcsik~1e. aby \\'} k ~.a
1
' In łdnc sfcrycmc w t1.:1, sam sposób~ dodając kolejne oblicze:me '" OTZ)' ffiłJI\-C,e
aylora.
..
-=- aa.
~
""""/wmi,:Jlu, ~
Promieft
~ d o \11~11',ffi ~
A co z oł'WNł~ i dCllifowan[em?
W ~ iv.om,negc ,,_ t}ffl ro~t1lłele mechaplzmu shacler r mozn.a l8 wazy-ć ~rak ~O"a fKJf.
rnarneg.o wienchółka. który potnebn I Je_s do o'bUcz.an1a oświeuoo a. Spos.Oit, o~ lczrarl" a !'il.or<,
z.oreiy Od sposobu przakształeafl e powzen.la wi rzchołk.a. a Pf.ZYkl et obecny mech im ~ r
n ~aga ponown~ oblic'-Z<Jnl~ "w-ektor6r nort'rNllnrt,l'l1 a~ Jne?hantzm. który mody(, pm.
mle w oparciu O w)'SOkośt, mote Mi-ymagać ponowne o oblLCiema ,"e oró· notmalnycb ,J
stworze, la poprawne-go oś e enia. alefy pam too, " układzie cylindryc.zt\)m równlw mo.tna
z ~ y,,sł{tor normalny. Do tego ceru potrzebne są tytko aw,e •artości lką I w,,r. ośt•, flO-
nteN-aź wa śf prom nia łilWS,ZO pomnna v.ynos-łć 1. Kteo ~ tory normatn.e są JUZ ok~JO"fle
~ l a ośwl'etl nla rnozt1a ob1iczać w dobrze znaneJ pueStJZ@ni kart.ez ańs lej. Nil ty ~nJOł
pam~ ~ pOłllattanych tutaj ukłaelactl spółrzę,dnych można pf7E!ksttał-cać nl~ ko po1o;z
p1mktów. ~-ć może, dzi km takiemu podejśehJ, bę(l?ie morna u~•skać korzyśei w modeląQh m;.,.·
tlenia r b tebturowa ia,
Kod programu
• Ja nł:.u 20.4 poka:zano lalka ramek 11ru~hcm11 n ·go pmgr~mu. ~J ·l b\'Ci · 1 zmxrua
katę tv.·orz c różne c ck,y. które ,;., .1,;1 z „ c;.aj g•m ·rowJ.nc l wyko17.ys1ani :m inlłyrCb
pr..reks:,:ralc.,,~ń.
·se osc.
).
W rej sytwicJi mcch:inizrn :i:.h.ader .~pod~c'"f! ~ii;.'", n:jl!Slr.oc ·,10 trzech w;.1r10$Ci 7.m1enno-
p,uicinJcowych. jednak mgct,w nie Je l po,,
1c<b·1an,;. «' muszą to bj·ć v.~połr-1:~ w for-
lNCit Y., ' . Z. \ laśm4; to flllakm na my.śh. rnówiąc. :i.c ~ WtJŚCLO'w „ mecłwuzmu lrader
mogą być pomi:n~ w dowoi,a.. ~l formacil!_ Jed. nr-i ró:tmc.a ,e~t taka. że nit mo.ma łączyć
ze~, prosly ~posub w.~hanizmów ·hadl!r operujących na rot.nych font'lata h danych.
PreykladO\\'O i tni1-J~ nH,;;:l wo~ć cl lląi·1.e11M róznych p,1k6...., L mc~hilnll.mami shadcr
tv.WZOD)'~h w różn„ m Cl.ił~ic efo ;.ikni.;dnie pisanego paogrnmu.. Jci.;:h ;.riliJtala zat:howamł
ptiA-na kous-..-kwcn<:j;! w deld::nr-ł4;pt h • " . ko ~·staniu srałych. tak \'I; ~;cytllly mech.anizm
"'Jgrnetuje popniWOL! n:zult:ny. Ji.:.lcli Wl.7.)'Um,y :-.hJ<kr. kt ·11 korzys.1a z innego forma.tu
dJ.n),d (okrc ·1on eh"• •nn) m ukladzi..: w. f)Ółl'Zł;dnych,. w rczu1tadc mukmy uzy$kać
nacpo1ądilne efck1y. Dt:c_ duj;\t ~• · na t:kspc n1~11towan;e z,, 1.:ktorami nom'la1nymi
wierzchołków lt1h w~pólrz~dn mi 1ckstUI)', nakiy dodać je dn w,:z • nicjszej dddllraCj~
mtdlan.:r.mu shi;'idl'r. Okrc:;b.Jąl· ,., ck lor normalny w pos.tac i d\!i.'lu:-lem\:nto,, t.-go wtkt01"3i,
oszczęd1..imy IToch • mi cJ~ca ·
... :BJ,•or
~ed.)'
LL,
· e :t5 ~r&eJ~.
( •J i'o &uf el9o1rrte~
r }H
ret rt1 Ę_ri:tll.
f u.nkcja P 1er,O lBu er wydzidi.1 l;tufQr w•l!r-.r. ·hołlo,\ m bufor md~'ksu-.ir _ z vw,11o.1.1,i,
siatki i foooaLujc j e d postaci wsp6h-~dnych c, Jmdry,m~·•·=h. Poniższy hgmem kodlirue
1
J pełnym l~1mg1an tej f1u1ktji. \Vyr.r.Lu:onc ~11ły fmgmcn•,· jut: omnvi,~ w DOllll70J-
nich ro2d2ialJth. tak b;· rnoł'..nm było si'it s.J..71.ip1ć n nowych eltmentai.::lit:
T •J..l)l r..ił.: 1!'ee I • 1 ' : ~\@ 'ZOd"l za.u th~ l)
Poni ;zy kod jest , 1.-ykonywany t..'łniz po znbłokowailiu bułom wicra.i o!.k8"' . ~
w(cnju kol-nrt1 ś~•fa.tła rozprn ~o:ne:g,o oparciu o włti. c;~"~oic• m~lcnalu Ut ~
'li, ierzehm P ·mia L,a pr~cu., _r.n, k:1:h:l~ii · wi • ehołkÓ\\' i pr.lC · :iZUi,ł .;a współr:.l,ędne I! ttb
b,w iJl{il'l"ly już , riel koś.ł kąrr.. to z n icwu:~lka pamocą lrygonomt.!lńi mom:1 przchc:l}'
j~ r:: rndlilll •. Teori mówi.~ ab)' 1.nilt.-fl: t:ł~ug.ość boku trój ą.ra prlćerv. l,FJlt.'1,"0 du danego
il81cty pwnr10 • pt"omk!ti pt7.r..:1 ::.in t.t: rcgo ką,tn. Dzi\ł.~ temu możein~ obliczyć · m
promień~
0,/J Pro:: 1 ·_, zł «<:1.n.t.:: ).
wpoprai:dnim f07.d:t.ia1c powit-ii Jtilli.;n,_ dlac;r..cgo pawinnisnw Dgnlł1!C7.ilt: \\,' rta~c ką,et
jaki sposób to zri.:a I1zo,\·:t ' " mi:chan1vm,c: :sh:tdł!'r. Technik za,,rezc--n10w1n1a,
Dfill \li
~· C)'m ~~ k fi i,c wym.itga umi •_zczama c:1 ·ii=1 oper cji ,,.. e wnąU-l sfo1dcr..1~ poriiew~ż
można Io zrobdt Jednu .zowl,) w ~yrn mome11cii; u11kcje 1ryg,.momt.1T}T,Lf'lt" zwl"IK'aJ l
Yi1Jl05(łi n'lle!i~z ~ i't w prJ'.t.~.t1al~ (O. ~~n mdaooów. Pumżs:r.)t kod dokc.~nuj..., tch kon-
1,1imji 11a oopo,; ietlnje "-'ilrt~c, m 1cs~c1ą,.;~ 5it; w pr.z.:d7jalt {-it1 :;r):
~ 0301_ ł
1
=-
2:· ~ o· 1.
..
J
MMna re,aż wykcH-Z)'StAĆ mk przyg,oto ane d n~. db!o'k wujem. bufory 1 ~
wujemy .si~ do rend~rov,.·arrla:
).
fi
)'
· m s_
Funk.ej~ Rendertl,J jest ~ która _fuktycznie \vykonnje ealy _rysuni=k: _stawia rMVlnit"t
rametr)· skak>wanitt każdej ramk,: \~f tym prostym przykhKizi ~a~. me i.a kazd.)1!1 ~
rnecllanimm rutder i buforów me Jest zb tt o~m~lne..!ec_z ~ęki ti;mll k~ je ~di.aq
pnejrz.yst}'. Pami,t3Jnt , że· k d przykładow ~ aphkacJ• me ; i:sLzoptym hzownny.
~ld 'pl acJ1Tec~ 1 ,1 R~nder Jf
[
Pon.i~. l t! artości lot„ lk pm le pi1ran etty skaluj ąct'. ustm, 1on~ w edu pokalJllli:> i.
,
wyko:rzyst~ć, spólrzędne cynndFyczm:. Jak zw ,kfc: zach· · łnn do ckspt'f}'ltu.~n,o\\'fillt3i
• tymi warto_ścilłmi j zori ntowarua się. j:Jk i h 1.m1ana wpływa na 7..acbowani ~lu.
oma równ,e} worzyć bardziej 1.fożom~ ~nlr;~no! • " m x:h;minnic hadcr. gcb-.1e _"
!owaoic_jedrtego a1rybutu będzie funkcją i11nych atrybL1tów • . afoŻ} ,.... wc1.as 1.a ~ 1
' art05c~ slałyeh w mf.."Ch:m izmie ~hfld~ •w~rtośc:iteilif1 t ti.:j fimkcji omz z.a~mplem~"~~
samą unkcJ w mechanirnue h d ·r. Je t (ó zn ·.adflic1. działanie, kt re rca1wJe ~
mechanizmu shadcr oblic:zaJ a prz b,iioną warto ~zcregu TaylLJ~, Eksperynu:nw
Rc,Zddał 20. • Opencje w lm)'dl llkłldactt ~......
- ._,,v.Twrasn•~••Dtlallln1 .... ......,
■ ~zen1eo30 Setllent11~r _Shłder()i I1'1'Sr
- ....orurnen tOJO=.se-tStre-~rteC
, ~·.1Zef11 e030„
Sc• I c:.es{
1a1zen1~:.0r11-,a.rldt •
.. t,~~n. o
~H . .
Na1ii,,~t Jtl.dJi poliaz n11 lu technika na.ni si 811? podoba, war1~1 ln}'Ina ją w :m.Jliidml
Mimó mi fllj}I rynku sic.- i!tmicjc \vide; klonów tydl samych rrorwi:.:t71"1n. n.iektoi;a gr)' ~nu~
się mapr..1W<lę ciek:awae 1.robiom:. 1cit.-dy pnyj,rzymy 1m s.ię b1 iA:.i. M~hamzm~' \ 'l't\t. . bades
umożli"' rły rwonenie gLer przypom1nnjących , ·ygląd,·m kre!lk \\ikl, film)1 anhno"'-11le
oraz generujący.eh efekty . które ri1e b)'~y mo2H •e ni dy prli.:dt~rn. Jeżelt kur§ zanuel'tl
tworeyc kolejną k(Jfljt: Q u:;ikę;-' opi"ana h„"thnika pr..i\ ·dopodobn1~ me ok• ~i'lt •LlUJ
pomocna, ali.:; kro w~e..•
..,.,., je wuys~e ~ i k 1 U~.fCllCO\l,"aJic W t b
~ i e ollA s,~ paydame zcrotlemu ~ o w i ~ ~ to •~hniki. l:16rt, PQi,\•-
~ poWśZcdmie 1!'Y f;)l"_Z>'styw:m~ch crtt'lftów 'lJak • gd)li ~b(, Przcdśtaw,ają e-
.i.lP.!!l ,konlPlił°"~ ~Jęct.B (jak ~ n p. k ~ BcLRm). ~ ~ ~ • ' = ) , ał~ "'"Yj ntaj~
~ c łCl1 n.młzaał, gdyż am me Gdpow1_a~ 00 na *"... - &ę~QU ~t-1niKów
~-· ---a.. n., • łRIDć: konkn:tn" •
~,., Jconkrłtne pou~u)' ,-,.,mimo lego ~eydo"'Mcm . ~)il..a.llłC, an, n1e
llilh w ksi.-, gdy.! opu.lłj~ on inne pc)(lcj ie do obs~ im; 113 um1es~~~c ugc, roz-
dflllY pi&aj ~ład b)'f ~ tylf: prosi) . ł:ęi można b)'lo pi)~'}' Sflr~tov.~J. ~ttu-
~ ~ w t ~ al ł)1m. Mo.u on :tlnowie: r1.n.,t.,-•"· poc;bmlłlOw't ideę bez
......,- ~--"' • .r. .L>ł • 1-a-\\r do c~~'.Tft--.li ....
~ JÓ",1'~ pCłf(lW111 •~ pl?,(.~51 . ,w ,on,'l .t:cchn 1 1i; z J>Odobn i .---""""" aria
1IIU na w po,nn1at1CJ J ll1 w-°;mt n ~d.a. W}-sylrum: da- ~ frletodun, ~:oc:nto-
~ iZJ'llÓ\\.' ~bMcr umt)tltWll1 tworzenie bartlro P
~jĄ (2lkim1 int('R:SUJ. c cfd„"1y.
fi):; ~
1 ~bnd?)•cmtj
e tnl'dtan1~in6w. kt6rc
()IO kilb pulkrów. krórc warto zapamięt ~
f \\'sz:> dcn, p~edstaY.1ionc IUUj układ W~-dnycb b~ ..,, .
_~; sh-znc)
l'lol,1...
okrc~l3ją położi:nie gł WDte cL' L • ~ ° " c_, c~md'r)' llł4=
rv•moc· ..•w„
ł'......_ I 'PTI>mlll:n,
"'~riyW2il,~ pm i'b.■~ Q'=ll• t-'1?~11111 w,crzeholk .zgodll ie 1. pe Wił YI! CJi\, K~d)'
0111 -.vion b. mcch~'mzmÓw
. . . IDL:i:ł J;,,dn:al ly'lko. o~nie:zO{l1
ei~-· \"f ·w.Jvu,
',J .,..., , .
n„..
fj1 (Y111"\.• n •! .
.... ..... .- • ~li" []}t::•
Z
~ )WSCJ~ctl , tJu cJ~ · m~ u&'law1~nia d tr2cj I~}' ficrzdtólkó"~~o&lic u:
~ l;.(ń'i o sb)nlplikow~ .funkc1ą, ~ n1~y ~fo. :lib)' pll"lJeLWńr.&K wi~U:.i
płriCZ ~ glówm.11 gd~ zalmJllcmentoY.~a.111,(! :dotonycłri fu "i j , 3 'ł:V.."ł!. lAp ' r
~be.~-J ;t '1ry korz. ~ ~•e P ~ gió1.,lf\! ~ w ~1u ul.cfinim.-.•"-mi , buei ~ f
~ Ul! g ~v,.O\lii . ~ • fru fi '• i.I 1,: -wykc~ pn.,c~ ficmcs.o
dat pr.t.~~t d ll1l ~ ltC?.by punktów Dot~ cd□ moma ~ .Ci'i1.~ ~ r y Bi:-zicra
( , IJP'.:tB fWLł:h 1 \ \' tym ro7.fficialc omóv.i•m. wid.:: ~l,.1:ó obsl.arów fk:;,ii ra, wł
1
-
rrle 2 il-l5tęptlj.ącymi zag3dm"llliillni
ł Tcori dołyC?.ąt:..a ~ ~ eh Seziera; obszarów Dez.ill:ra.
ł V.' ]1t- n i w!!kWr-ili ilL1 ,rmalne~ 1..~ "'-'rn ( i. uwzsJ~m~n,Cilń zwi~,;go ws[wu
r~,tye:lt1(:gt.i ro..:hLIDku ról.n1c7.ko" ego).
KrLywc Bc.:1Jera można ogólnie zdefiniować jako krzywe. które mozrm opisać Pt7.et 2liou
punktów kontrolnych. W wi,Jcs.zości przypadków krzywe te definiuje s;ę za
czterech punklów, tak jak pokaz.an() na rysunku 2! 2.
Rygu11ek 2::L2.
Kn)!'ł"tJ Be::.,i·ro
=Jt'firmrwm.a
Ul l'Q!IWC.ą C-:lt'ł'4:Ch
pu11łtów lronm,lnJdr
W'spornn 1ane c1tc.,y pun.kry dt:iiniuj ą krzywą. prLy CZ) m krańcowe punkty s:ą oZll
jako PO oraz P3. letdi rozpatrzymy dowolną zniiem,ą s. o ww1ości ż zabtsu od O~•
reprczcnlującą punkty na caleJ dhtgośd krzywej. to moźemy zdefinio1t,·ac \\'artO&Cl ~
krzywej w funkcji zmii.!n~j s.
Jdli przyjmiemy punkEy kontro~m! P0-P3. ora:, zakres s. równanie krzywtj 1n3 Ll8St;lO"'
jącą postać:
-~ ......
a. ••--.;.
"Llif;;.• ~
ltrż)~a w p1,u,te1e - pak azujc rnit=j c~. gtiz:1c pierw!:ize d, a pun1ay kontrohw riaj
Ll
równy v-'pływ na wartość Q. n tomi:lsmkr.r. 'Wił \,,.. punkcie - b pe,kazuje rnit:1sc(\ dzit
Jll11aktJ ,i e'lil1ivtrzne m.Jj f\ r ·, wnr wpływ ora.ii. gdi-ie punk ze,.,~n .tr1:ne: DlłlJ'-1. rowny
fch :znacm;e mniejszy) wpływ. v,..1\),.rtl m~n ie najtatwi jSl:}'m 1ipos.obem na l~~-e
nozurnwnie pojęć byłob}' 1,aopatrzcp•e s;~ "' kartk~ papieru i olli,\11clc~ wyk~hmie c1.1e--
n:ch J,mnklÓ"'~ a n~~pnic wykrdteoie kilku f1UJ!l1d.6w· 'iitU:ut krtf\ ej, alby osobi~ le
prukonac się jakie j t!il i h dz.i al n ie. tu:1.e(:1e rn iałrJi poćwiczyć -- jt poc-"elu~m.
Ce f f1 y~ Tal 1H ...,,.......LIOt ...Dhllzk■t - - • .......
IMrQWe Bedera
81Ure, CJpra~ PDJetłe ~ . pracuJac 1rm.e Re,,auu. w tamtym czasie kflif.-;-e " ' ~
st}cwane 1ys1.ml<ach inzynier'Skl-Ch były do'ir'IOłne I n,atl)yl spó ne. 8 ll1:1 opraoo te ~
ss,os.ób baltG :, ~t-c.moł defln tjl l'Z)'!łt-ych na r"JSUr kach prOJlłktcwych. Potęeie ~ bar-
d · 1 Słł przyi1~o. ktedy pojawiły s~ kom,M;ery CĄO/C t IozaIe2n,~ oo apr~ a11ra Be em,
podOb opraco-lllłanla :stworzyli James fel3US.On oraz Paul de Castcljau. a oh)'dwa . da I)
trzymane ta mnlcy przez prscode-Ja'CÓW ·en twóf'i(lÓW Bt:12i ta •· y,óJ.matio. nacfaJąc k ~ Jego
m ę,. Pierre Be.zier zma ł • 1999 r. 1
róbl1c?Jmwego rnajdujł! się J)l)Ztl z,a1n: ·m ti.::J k. 1ąi. -;, eyt1.:h1i • kwrym ril bLUJ~ · ~~
lJre~kowy j~ ~ zn:my. ni1.: powinni mie kłoflL1lu ze uozumicni "m prz4."4 t:J.'!i icmych riiłt:J
po,ęt. altS z. peYt~t ią t ~ ZJU'Wa ą. ~ rnuji.! ohjainiu:m •J ·t da1cJ.../4e od "~uj .
Tych, kiórzy je-~:o.: ni.: mieh d.u czym.enla z r m1czka1n1. pros~ o pnyję ie ,uo
l.lpro.szczonegu "'"' kładu " prtyrnrut..cniem L k:.i.
~==-:_.,.1cu ~in1aaaue·nas nchmek r6tiiil'-!.=..?bliCZC11iacb J111t
~~• ~ jednak
pc>wwcbnic, w y ~
ta•
iMf ttowO'- ftmkeję jako lepRZCntację pe\ll'Qej krzywtj
---..-T· lcł.et• W)'obrazimy
,Ail- s ddlmlkll róbuczkowqo. aby zn&lrit ~ ~~~•e. to motcmy śko-
~ kdrli opisuje nachylenie, krzywq w ~ punk.c" :Jl. ~oc:h.odna je s t ~
:,;.;;pc,bPNl na rysunku 2 1.4. ae.. Ola W)'Jldn~ rozwa:tmy
1,mieje wLc: k w:iuró ob liczilm~• różnego rodzaju pochodnycb, ale ,,.. tym rozdziale
ince:rcsujc nas tylko oblicz nic pochodnych "' i ·lommanow, k,óre ddiruują oh. ?..ar Bezkra.
Pochodu pro tych \viclunu anów pm •j mują nmstępdjąc. postac:
j,-uli J u) ~ ca' , to
··a =
d /( ) '( '
Q
.
!:!XCO
J I
Cat'6 V• Techniki wyk(lflPblj.,,. 1111ahllnlal■i MlH ......
Rye• 1k2l.l.
Wł,b-cs pot"'1JM}
y• = ZX
leży :&ip;ami tt1ć. u pochodna stałej v.~i O. Jeże1i. ~ ,imy fumrej ~ 2':e-
vujt:my. u j~ nad11ytffli~ j~ ru\Vrle ~ru- Z:n6w mo~y zrQbić obfo· Jif"Lt:f!.\if ; ~
~ l ć łdlka w}'b:sÓw nap· p ~ mi1ill'1ft(:troW)Tf111tb. k:plt=j mrientowac ·~ o u,
.Kir:d wypmbujern}i 1i ni samodr&i~lnit. Vii sz.. · ·Cko ~tanie s.ię u w 1e~c j nicjsAt. w_
.-zystuj c JX)~ZC W201)'. ID01.:emy oblLC"Z)1Ć pochodne ~sta, o~11 tj~ (il r
mj;,uo~n.:i ~•włzj llt:tieira.. 'Pochodne pc~[alego wy:imaru dil.a obs7.aru D o'Wim ·1
a.,nafogiicv,h:::
bó~ _, (1 - s l
1
b'I -~- 12' +9'
o; - 6s -'9s 1
b;= Js~
11.~ cim)' ci:rnz: baldzo blisko UZ)r· ·1u11 potm.:hncJ ,, Ledzy do obli~1L11 ,,•elr.i.or(J,w nor-
ma.I.n. di d~ ob~1,arów Bc~tm, .Pochodni; pod.-;rawo1ic,, 1ch funkejt umoiliwiaj.ą iaaiie
rui.eohyłffli " ooo k,erunbcl,. obszaru ( w 1,•m p,r.r.YV3dku i o.
1.)'!;hm • ~ ~ eo
tamgelllsy powitrzehn', a nie wektor" twnnaln~. Do •~go celu prr.ydil nam ię •~~
, -torowy. \\' m~ le l . powiedzi1.llenli~u iloczyn. 1J.,·,:k'tom\.vy dwóeb ""·.:kto~ d:!Jt
w i,vyni :11 "'ektor pl."Ostopadly do ob rd:toróVi,'. n3Seyrn pr~rJ. d1Cffl"lf obr~\;
wektor ptO!:ifQp:.td,ły do dy,·6cla , clttoró,,, twg..::asa p w~t.~T7.duti. Dl d(:iv.-ottl1,; o, pun
powilirKhl'li obszaru l!łczii: mot.enty obi i.ceyi- we ~coir nl.)nnmlny. J'OSh.Jgując ··~ Dłi1i
pującym rÓ\'\lllanicm~
l I 1
sV(s,J) :: _
1•4 ,
JłJ,/,J"(s)i>ifl)x LLP,. b, (s)b~ (I)
.,(I J-
Powyiszy wzłlr dość ttiJcmo zilust'ro'\ n11 d\1iru",ani:1mwi::j wonie, al.:e '~ ~ f ~
pros~ p~ck ~k1ej ~iatki sterującej. twor_.r,ą~j pl 'k i ooSZSt. ~~ory tang~;
powaerzc:hn1 stanowdyby wektory teżq&ć' na powii=ir.wlllnm plWi~...ny~ iA:hi dOCZ)lll"'
torowy byłby wektorem oZYr1'ó<:on)1m w gt111~. tak jak pok.azano mBJ tu1ku ... ~ ,6'.
, dQJdt
Oblicza■ie wartości
dla obszaru za pomocą shadera
Je'U:li po,ov,nuffl}' ro ~ą w~n:.j ~ccehnik11. podobn)'m ~fekk:rr'I ~azll'Lyn\ n uoni~ ,~V•dte..
jo
ZłlJ'-''.aźymY · toaną rói.laic~ "' ::,.P4,~bi..e ,o b ł\lg,i L"nnkcj i podsta\\'0"1. · h . \'li.' t:fo'kl!'L-c: pok~-
~ oo v.itt)rnfo FI Vtdi kodujeniy p07)'CJ~ ~ i L Wler.zcholk.óu, :l n \ pmt: obhi;1.,am1~'
fimteje pods1.awo"'·e I] , poc-L.i!Lku hai:k.-ra. przoo ;r.astosowamem pun , LoVi 1-:onm::ih,, ~'h.
\V mojej '''t'tlr$ji fur cjc podstawow są oblicl.(lnc: r.lZ ,,. czasie ł~i;ro'.1i .JJl 1~ '"'i<:l"i ti~ Ó'N .
~~rat~ wytonujelfl)' r~urtkov.:Ll pros.tą opera ję rnm:>icni ~ dod~w'1flia w~pók ~ya~
llikó\\• dla wszystkich ptmklu ;\' S,::ontroln}'ch. Koa,prom:ńi pa!~~ na l)Jn. ze n1ój :;hu cr
-w;.- 5"'~ z mniej:seyrn .,kos.~,;rn ubli~~eniO\\'fi'I~. :11~ wiik...;eym ogńh:'L:>: IJ'l .J..oi;:71.cm'"
1
~
darryeh. -~ra~ mówiąc. mi·1: Lr,; ttlv-'a!ern obu , rsji, 3by rprzel"Ottl si~. która .ii t ~z, bs;r-.1
w 12kicb ~ h w.a.runkach (p1,..cykłady w inn)r ,.,...,._,.,..b obsmguj. oś-waellcni ·.). sł~ :n ,,~c„
dl.enie. k16ry posób jtM Lesp&Z)' ~leey od sza~@,Ó«>W. dl , 'l'l'l~gań on ' J,LnL;g,O projeb.tu
oraz wys1ępujtcych ,wąskich ~e1•~. Tak zy ina:t~j pa,ni~aJmy -0 7..a.:-sto;i(lv. .1..nyin
1
kon1promi!;ie.
W ponfa,seym kod2ic hark-ta .1~kł;id l·• u
r Jt. tr •11 :;,j}Witt-.i oblii:Z(ilmt f t.m~CJt; pod-
ltlwową, dJa kiffllnku s„ natomi t rej~ u \ltl 73\ ~~m ob•i'Czón _ ~o~ ti.mkcJi dlil ~ l!'-
nmku l R~j~ wejśdowr.: i vlO 7.3v.1 i1:roją obli~ e wcmśm~j v.a'i:1 1 poć-hod.n. h
ClfMV • Tec._.. ~ 111kl•ilłLA1 vefln......,
• rl .
I •8, e
r9. •
r10. l i>
Ttn piat,, · :rragmeal kodu oblic:r.a ,'1)lj'\\' :punkhi ·o-n1rolnt o SOTO. Jest ec OOpo-.\ll1i4-
nik: punktu PO na krzywej Bcricra. alej m1z,,1,aJem pmtkly kon1rolnc \\,Mru,g" ti
i t. ponic:w ZT1ajdają .,; 011C "'' d\\rócl1 'lr\'Yffl i:uueb. Blok ~00 1 v.; .. konuj~ ffiDo~t: dv. , s
w ·~j obti - ycb IWJkcji podsta\\·o,, eh, a nasti;pme mnoży uzyska.n,· ~'}'Ilik Pl2tt
~~j~ SOTOm~duj cą się w rej r12e tru:ych cl O. •astępme mJ1ot.y kaul!JJ ze \\"itf
obliC2.()nycb pochodn:rch pr-.tćZ pozycj~ punktu kontrolnego. \\' prxyp· dku \\,~ totirv,
tang4.""'IaSÓli. nic m3nly zaIDi,il ru mn.o .;; · d·w·~ h 'l.\'aności. portieważ mu im. :ort)~
astatec1.n1e ~ rranc wektory llli]g~asów do ob1iezenia w~ktor-J norrruih1tgo p<m-11H"·~ ....;
\\t t}ffl ~ :rtjc.gr n) j il: "' orz.ysty'WaR) jako l 'RlC.za&OW3. 2:mlL'jJltl3 ~ ~
r zamiera po:r.ycJę , itn~bolka~r2 zawiera we tor ,ang.en~ w kierunku • matomiast •
.zaW11cm wektor tangt.'>ll r;, kieruru..,i 1:
k 'I StTO
nu) rl
l r2. ct:o
r3. tlO
Kolejn;• blok ob]icta~1, punktu konLrolnego SOT-· Jego dzi~ł 111c poi·~ ma pomn.o-
ż.eniu odpowiednich waJlltOści poo ra D\.'iyc:h, a nai rępnie n.n zas.toso, ,a.nio iD!Strukcji ~
w celu ,x,mnoknfa wartości punkru J..-onrrotn~go i "od.an i.a go do pozycji ~pisanej u~,r:
sb7.e r - 'f~ sarrut)H'oc-a3u~ J)O'YiłW7..a si, db weklo w lllD&el!l ów. :lir: podobnie j P...'"
przednio nie mnoey się ich pnez si ebic :
t:ontrolm SOT
. ri "· ,.a :J
cll. rQ • r
-, '1'2.°· ,10.,.
111d r9 . CU. r2
CU, r3
wpont b wierszach o_bli , Dl, jlocqn ~ -ror,o\li.)' w SpQs(ió o p1!-aO)' w dokumcn-
~i c idtm. Sb dc-J)' zawr~raJą 't.'il"b:'_td 1i.,an~ obsługę il~t11.1 sbuam.egu. :ak iloc:7.)'1'1
WfkEOfOW}1 \\l)";rTJ~,(i d\1,~óci] U'I mik] I I 00. -Ć ~ ' _ j Optra(:JI mi ~ra Je-fu1i ~ •
wlinije«ny ponitszc: dwa w1crsii..:, p~ ·onam si • :h: odp."' i d ~"- one i locZV1W"''i
I.\ tttorowalu ornówiontmu w rozdziale ..?.: •
1 ~~. tJ.yz..1. • tl.l~Yń
:$1 tł. 2. . 3. l~!i'W f6
--'
-
•- , SO -
).
).
•,) I
OOO',
j
Pofl,i.tSJR ~!JTII słtuy do rerad.cl'O\'L'llnfa i 1ki koribnlncj. b'Uktt.lr:t 'Wli~rzd ó1l3
J~ słi er US1 w@1 kotQr w z.-1lc.h! ~ od ,. i s, kJ. ie~k ;
zniwjdtJJiC i,: w k U1]0,su ~1r<1 t·n n,,a. 1>1. c1e D. w pl1kt1 lłt.-zic-rCimtroJ '1>9JJ.
t;-:~::~
,·
5, lJC WJ NY
ł-
Ott> definicj. fótm31U ornz de · farJ.Cj a l\'t,017, ~ bufor rpro C)td1, w1erLdwtlców ~on-
F
trołfl} 11. Rendef'O\ ;ani situ ·, ·ontrot~j jt:s• b rd"1o pr~l.rc' Lmoż~a by ji: w kemu.: bez
IU,)'cia shsdera. \\f tyi l pu.y~l:ulzrn wykoreys.t.ałcm ~t-di:r, aby bardzie; p,7.}'7.\\')'C7atc
czytelnik \Ir do koou h dćrow.. !hsdc:r można t~kj IJ, )'kOr.l.)'S-'a da lah ego U~La.wie-
ma k:0loru '\ł.1end1oł ktni;' za pom cą s-t.ahcj , Gd~ brrn i:h<:iid wykilr.c;·s,a po1o'k foukcji
,,.:"txidoWilP)'t:h, musiałbym doda· kod u. t~\\ 1.a_il:c'}' ma~rfal t1opasuwuji.\:G,' o rwiell~ic-
dd. f~()fflł z wyJmrzy ·taniL~m ·biali · r.-:1je:· t I:'} wdopodobni~ pr st~a.
l · DJllF F "! R~a.i T ( ~
O.I,
„ ro5 ro·. 0301,'SOT_fl T3Jr
Ms d1 watoki •ił
.....n·Słalke, kl6/ef wart.o~ci m e, u:zą się !/-1, ~odnym zaMres , tatem mogę 5'loncentro-
•41; 111 wamiejszych s,prawadll. a l<orzyst,a I z siatek o art()śclach n,eJ dogodn ~n takk!
;at-. Dfa każdej si-alld mQUl8 znarezt ram~ granic ą u~ ać klaJn)di wan-oś.cl ~e ra •
• - - - • .rości s i t. które oedą si mick~ zakresi od O do 1. P adov.ie,,Je:z.e11 stalka
...-.-.zxwartoścł z tilfitesu od o CJó 100, mo esny utwotl'Yó pOpnh'm~ wa®ść s. dtl k~
~100.
ESI.l. T ~1 t c-.,;
or (loog rerzcoolek - O.
eric~iek -e .61dt a•>Ge"\
1erz-rt10tek-l
,~>
i;.
~ sia1ła Jron~ineJ. Jcsr to 1111~(1 k•órc vnyda nffln się; je<lym~ do na.u i orJi. do
~O'I\W31, nili! ibę,dJ Y.aicrn poświ~ca.t :d;,yt w1t le czas-u m:1 clpiym111l i:1.. •j j~go czi fanicS.:
_ :r ~l . ,ic:_11TF l'l. 1k1 - u~"- r.:lOi:l'"t! . i:l"l C!SM„ 10
Potizckjemy Jó \ ier<Khołików
«-lu pokazani.a. 16 punktów 1,;nmro]ny~h. W,cr,~hbt•
i,.1,•
ki ,e Yi)'loorzy:starny dlo rendemw1mie z rń\\'DO punk, w. Jak i s1~tk1 Iinii. które jt:" li_\:t7..ą.
T\\.'Oi'Z}'m)' jl! w pmlill~ i 2arządz.111ej. l.amcm nie mu 1m • j a,, 01e 1wor2y • rC'h pono'Pil'I IC
lw\i momr11C.1e odl.Wll!'nlni urządzenia :
bdlmia linmi ląc ycli punkt)• kontrolne. ' ie; Jt$1 u:1 1_ lko opl)ffl li7:.iic;:p„ m}·inę ze J~ r
to łltwiejs:u rtiż iwo-nenie dooatko,.vy,ch pun_kt~:
&1 .:. rnde);Eu ~ r <:.n.or , •
.
,
tor 1ncJe'",._ ~ ) ))
-
re ur: E F:Afl.
-.ainddcsów zawimi dane dla hsty lin~i łączących pumk ~11:uin1ne. "1.arro~i ce 1110 :
~ .,na SZ1ywno0 w kodzie. porue\.\!d nigdy :się nw Zli!IU m~..Mothwt= j l:S-\ [Ó't,~~iet
· tych wartości w 1)\-;1.1 i. aJe utycie poni;lS2.aj in.~lrukcJ~ pozi,~łtl 00 {a\wit:Jffl
· się, o co chodzi:
352 c.i,.a.c V • Je,eh_ntki wyhOfl)'!lolUjlt(:CI nMlehilnitmy ,-
& unek.U..1.
Ob,.-, r &... ~
- n,; .., :nm! w tryłu
pl. /11 1,•
IS;.
O Il
tZ)'flJtl 1 • ks;ztalc~ń
do o•nymi warto 'runi, , .,....,..,,.., cm..,, C:(!h:,
.mmarj1 ~tkii nłrOlntJ. Zal · poc~"l')"IUł: tou, ·c: z tymi wa11.0 M:
zilltll}ffli ~tram i s·· · kon1roł j , Pam·'t my u · li 'l"L')7.CJągD • ~ s
'l'ieli, róml' 'n ~ runk.ach. o z.ar B ziem IJ.tdzi popmwny 1lilat~matycznit,
~ (!I · 'j d \ omie C :sperym mew . PO'!Ai1u1i. myj k $\ , ]Q\\'D mo-
clyfik(M'IĆ nim\ ·eU~.h: &ngmenty kudu~ do mornelil,u, kied u~·~k: mt f~cjc111.1-
kor W)'Di ·1;
Cffil~l Z 0,
lctQ1e2 2 \1
Xad)t z ~iizych czm NCh hlo ów powodu;~ ta\ ieni poxytji punk ~ • ~DU.O~-
.,_ dla jednego , ie za :p nktów. ,Il potm y p ·bułu z.nroóylikowaltm _jt:dyru
~ punktów, p ~ s1afo , rt.o i wn miem~ 11MJniclc1 cm si t !
IO)ISOTO(O Of. " Iri1et i! 1 • • Il.O , l
1 nco Of. o.JJr.
1 r2c0 ar. o
l T1(o.or, L •D -~ J.
ooo,, 01"1 • rn,o J.:if. • oo Or);
IJ31):t. olmS Tl[O ~ f :;r.~lcro !l • 0 33 • 1:ri1
o J.lJ. );
trołru-S rt(O - .. 1cem
o
ł}.W'l''l[CT0A4 tl"DlnyS • .J(O •
03tJll'[CtQ1..2 rmi Il O Cl .O
Olo: 1KTIJ?t1 t1 nyS2Tl O • 'J. „ ij 3l
l •
~ TOR Koncc-ol rtM 2(0 · - zn, 11k sir.a 1
O 1 :
D3DX 'cCJOłt .oot rol ~lrał O {I l Ot •
Teraz m.amy ju:> ey Ikr,, co j mpcllr.f~d:ini: do "- t11.~cj, d op«: cji M1i.k
\c\f rWm!~.
pi(;nl· u lawrnmy hader. a n:Jstępnit bufor wic:ncbolków o i1uieb-Ow:
rlc:.łbi EOJD. Se ~ ę~ 1 •z1er,U
J
r
IPomi~ ik-Od b1ok~uJC bufor wit:r.r.~hołikćw. ahrmo:łr1a go byto wypełnić danymi DpL'ill-
j ~ I ptmkt kontro!ne. 111 _in;J tę:pt1ynl rozcl~ t • poznm-ny m~Eodi.t ,dosti;1m do o'kNŚloI
:n)'cf, ~tafych "o Jl()~ t'e:J~ Lru adre--sowego. Me1oclę t~ mógłbym 1-iWOSO-WtlĆ w l!fm
pra)~C i Wll~!rn~Ć koni-eczt1~i blokildy i pctbig~,mm S'Ulfych, ~d~ b~ilohy to ;,,byt k:~-
plikOWaru!. flo1,3 mym opt;'nuhz.JcJ tej funk ej i ni jest koniee,na·
i, Nr~~ e ze~ l .
~l~i1{. ~;,OC (0. 16 ... lieCl,r( ltRZCłO..E TROlNY).
B' TE · ' ,, ' er·ic.oc 1k., Q).
e~tl pobiera wmo* t1alr.!j dr11 ka:Ldego \c\,';e-r7„dmEk~L Je~t w porob dos.ć nii!zgrabn •
pollh1t:\vaź w popr.Zedniej funkcJ1 pn.i; · aza1i. 111 stale do ~h dc:rJ.. Zaletą, ttj metooy i~
ii n iż zyskujemy ~"'Vllośc, ze daue są spój nc-. Po pobraniu :stałych nzywam}' ich do
W\ fctił i3 poey ji wier7.cholkn. l,.,,rróctn)' uw-ag.ę n t~wzglie~kmą ·orekt,ę. k16m uttZ)'-
muje wict7..Chołki ,.... obn;hic obiektu mlki . "it.:· będę· Z.C7x rcól-owo om wi ć h:-j kwestH.
ille-pamił!tijmJ• o 11i~j p(Jikzas ceytama nlłM~pncgiJ rozdziału. Moglib my ~kodować
hidy ·eneholek \V adresi odpowiadającej llliU rurlc:j. a n:J tępnie 1Jllod,ift.k_o\'i ć ~er
ol>-.iluguj~y 5-iatkę kontrolną, Eak aby n podsl :,, ie stałej w.;)'skuc 17.&~"\\r~SKI pozycy;.
Jucl1 ta · zrobimy. funk ·Ja $lanie się o ide pJQSlsia:
z. l):
}
lffl ro r,ozv,·tąz.a11ie dopus2cza I.n~, le mo:l.e doprowJdzi do po1,1i, ~•~~ ma .,.,. łlowll
pnq ~, jrnJi ..-,,.,.,-u...,,c są zoac:1„1Cfl r~inc. 1ollm, tald(; p,o~ąJ eh .1. obszat)' pop~cz
"' on:ystrm1 w ~!ncgo w1 :r za s lad.aj~~ o s,ę z ct.I~n::ch pUJtktów kuntroLn ' h. al
moźhwośt powsta njił , lrownych przej r wruc ismie·c.
Jdeli i.de yduJi:my i na wprowmbcnn: odaUwv. · h pum.1: "' tt0ll))'Ch, uog lniofl
definicja zes wt• funkcji pod •tffl "'~'h preyjmi n~paj · po!łsć:
tt., J - i o - l"- t nll ,!( ,-, - ;J1
V•~~ IIIM••-•'I vettn ......_
daumowanie
Jetcli nic srudiowal.śmy m~ doiładnie 1eomelrii lub ~lltunku I&tbi~
w~go_ to czytanie tego l'()mZ~alu mo~- pamv-.TULĆ do p1c1a Pfó5to z " ';!a ~ 1,
M~ nadz-iejf1 że _pacdstawdc1!1 p,0J'rClil m~matycine ':'a dos1atcc~ ~
1
-
poj~i• ogólne stały sit ~m•flłs. eyh:l.~•cy. k1ór-.cy lłlł: t\ufim.\-aJi ~~ ~
kowegó, IDOM Z31llmć mo~sm~ '":Y~adt,w.; 1 ,rra te~, ~hodnycb, alt
ob1it2ień 'W)'kprmc samodziclme:. Jo lt:h wy.ko1tan1u powm.oo, ' ć ~i, . ~ kiL
S
""" . Jł5he te! .....
logia,je.st PQprn\\'1'1a na,"·e1 W1iedr,y. łii~Y m~ ~u_m. r:rny rnechaniimów'I: chilła: ~
Czytelnicy. którzf chc.ą nauczyć !iti w1e.;Q~J1, mogą znąlrić w Jntem~· ~~eh ""tle
miejst", gdzie inc.i-n....sujące nas pojęcia mllrtematyeme są omawiane;! 1. r6~"'kle
wh;bcnia. Jd .eli trocl\ę poszu_k_)my, lO ~ 11~Wl110ŚCmą -Znajdzi~'tll y oph,, lct6 d i ~
nam najb:ndzisj. ry ~~
!Rysunełc, 22.2.
Animacfe
: h-,~laJ9iem
kh.taóW) -eh mmt-k
~~Dl~
,.........,.. ;pel,
W' t~ s ~ j i z pomoc~ ~~~lodzł metotla _słtinnin.gu. y,.r ttj me-1~c uiłka ttilktO\\•am
j~ Jak .skóra po na :!'I! s.1~rc~teun kbda1~ ~1ę z k•i. Ro(h .it-'-dat' hm kiiku toś •
- ~ ' I n:1 ru b k:dde.go 1t ':ei'2.i iholka. D1a z11~usttO'ii\'.ania, m robuim!J ,: ~ , Ci
-..,..-,, -~ ·w · · · . . ..-i.~ ':J , ........:l,S'f PQnap,n
miySme tęk~. mm~ ?3Pm.am .porusza, :siu, kó-ra pn~mi~m:;, ~ mmii:ru~. ~odnit
z rueh~m obu e2 1 ritki c. J)HIB sur skóra oo łok<;i",
~22.4.
Cż,.u V • Technlld w,tconptuj~ mHhaftłzm~ vlfbłx. 9hader
5.
prl:ltlt']
apNłi!zt:j~
Zrzut emmu pokazuje.~ kilka kos.ci ma wpły\', nil siatkę, ale tylko ntclaórt kości w.--piy-
w ją na ruekłóre w1erzchoł~1- W •yrn miejscu poj.awLa s1~ (10j,:cn: pale,\ macierzy. J~
U-:Qlłł.l11y sysri:m kusc.1 1.a ~·stem mac1eny ~ to bt.r'dzit.:my mogli pc>w1tdzi«. ie kl ~
v.·pływa na rómc CĄ-SC~ siiilki ~óry. Jczcli na tlwilt: .z1gfloru3cmy sz,_~ \lilj'Wljlw:j im-
plememacji, to będz~m)' mogh :ropisać " 'SZ),'Stkic mac1~r~.c:. ~ n~~-pnH:- pm=jmi W\ff'Zw
chołki pO to. aby u<-h„-cyduwac:, ktim.=- mac1cr1.t." nakż. "')'korzystać do p r ~ i a
wybrani:go wierzchołka. Problem polega n:1 lym. 1:~ '')'dajna irnplementacj11 poltga u
pr■.letwar--aniu dutyc h p:u1i i. PoCr.lCbujt.-my ·pnsubu pnc-sylama dueycł1 J)OK.11 danytb
i Ętrno.żli"Aienia proc~. oro\i\ i podjei;'lt,a doc. zj, o tym. w Jaki $~ób zastoSO\li: c p0Sltte-
1
"rkm Utu kolcjR)'OO wie zach powtilffllllll)' proces d Ia drugiej lk.· ości.
• 7 • rJt •
Ustawiam_1.., Mi
'ł - ~..tar
a,dJesov,iy n.a wanoś~ zapisaną ~ v ~z.. 8 ·~ t~pme_\\'} 'OfZYSIUJemy ~ \1,\attość jako •~
do sitalycl1 za, _ieraJących m~c1e~ d_ro~meJ kośt:~ .. ?rzek Złakona pozycja IMilZ we~
nonn3ln}' są, .zapisane: oopo,,~1edrno w :reJe~tl71: r2 1i~ ;
r:ti iłO .. v7 z
d~ r2 ~. 'IO. daO 1
~ r2 y. -.o. c[aO · .. 11
r2.!. vil~ c[aD ~ 2]
0P3 N. 3. c[al). ~1
<I 3 rA. . 3. c Ci O. - 11
dpl rJ z. 3, c_aO. • Z]
Teraz zastmujcmy wagi ,łączenia do kaźdcj wersji w1eJ?.Chol ka, a u.zyskane wynoo l$'ll-
mujcmy ''-' cclru wylic:ze~m ostatecmcj pozycj1 , w· pierw2)'ffl v.·iefSZIJ mnożymy piffl'~
1
v.·ersj~ pozycj, pr-.zez pien:vszą wartoś ~ "~gi (, 7 'J J. \V dmgim wierszu wykOIW}em;· ę
samą operację dla drurgiej pozycji, a naslępó1 e clt1daJ~m tak uzyskane wyniki i Limie5.z-
czamy ostateczną_ ,...11rt:ośe ,v rcjestnt r2. Na koniec. warto, r-2.,"', jc-·sl ustawiom'!i na LO
- v-~ć która ~jdujc iii ,1,,• ri:ji.:s1r,t,; c6 . x. Z\'frótm„ uwagę-. że w przypadku wiea:-
c:holków, których doty~ey tylko,jedna koś.(;. po,i.•inny one usta.wiać indeks picl:"\~s.7!,aj k®
na lę kość om pierwszą wag · n l .O. Drug,ą ·o:k mo~m usta,, ·ie M ni~mai dov.rolm 1 m-
tość a odpowiada:jąt,ą jej wag, oa O.O. Oznac~ 11.0 , *t;c te wii.:r..«:holk.i ~ klóryoh do~~
t)•Jł;o jt:dna kość. nuu:i1"111ją wi~lc ins1n1kr:-j i shat:kra tl1a dru,gtej kości. Jcil to jcdrult naj-
1
Aplikacja
„
Ni.tej opi,sana apJik,ilCJa ma na celu 7a1icmonstro,,11n1~ podsb wcwyct. poJ dntyez.ąc;ych
;S.kinningu z " korrystan I em p□ k•y rnac&1.:rzy bez omp\\•ia.nia „ :1.cz ółbw zaprsu oo.nych
animacji do piliku. Szc.i:t.~ół}· b-i;dą róinL.:, " 2 Leźno i od \li o 7. '"'lanego l'.1317.~dzi , do
mO<klowania. zasco t)Wancgu fonn:uu Llr:l2 sfl(>svbu implem1.:ruac1i Tłlłszcg~ r1 zwi~ia.
a.sza apl ilrocja gcne-rujc pr(,SC) m,-..de I 1 ,, ykonujc prostą Lnin1ocj~. tóri;J pr'Zcil1.-dzenic
nie powinno ·pra, ia · pwb1emó,i.. Kiedy J UZ Jrozum1emy pocbta,vowc pojt; ~ ._pró-
bujmy prman l1itowa ~ k d mnin,rn :,.n Jduijqcy . ię " ' Dm;ctX "'DK urJZ '". p.akn:t1<:
n.Vrd,a fficcts Brt'n,.rser. P.--/.ykiiLd • te 7.3\\'iera· ą opL posobu ład ni tł.in eh 1,an~
ningu 'I. plik u i.alkj.
Jak z,.tryklt ponj~z)' kod nie je c kompł..:tn . Ptłny od moz1i11 l.nlłldt nt, pty ie · D·
l ~llłd ·Ap11 !lCJa cd! 1 h
C..-V•Ti1cP i8d~•1111-.IIL1JJWlłiwń1}kr
Deli,niujemy „
uwiera;.- ~ WICIU P_14!1'W'łUJ_mac:icrey, p
wanie tej w4ftOŚCi apJik■CJ■ ma ~o!hwołć ':'f'l•~n1a m a c , ~ ~ ~
. . . ~
n;,. !"I:;. ,, ..
oscl. gal . lt..osc2. ga2 .
..
ł
WłSO S. 0).
OJWSO-RfG(OJO' "SDE .PQSHlO: , DJ0.50 FL T3J,
03[r o- REG<03.D soc~ ~1. o:;o -Ft.Uti JL
DJO\ISO)me DJ()'ISOf)r~~J. o-; so ·) L
DJOVSO_f OC)
fonnat FVF koduje te same mnforml.'Jcjc zrum.mi przydaJe ~•'i mo.zhwo~ pr~'\\ ·:fra
I
'.l\~jpiciW pr.D:Str,_ amy nieco pk~ ~ z kości. Kość u ~IMmwi bn1t dla , eystkieh
_po~OS!afycn kośc1. ft"",eyldr~,(fowo. Je&eb
1
~~~ S.)~'fum ł:;,ośc~ bylb mmien1tm, WÓ"i ~c;&ai.S
piel'\~ k . · ' ~ł~y ~athltl. tub 1.L~fo,;°!j ~cm, Ruch ka2dej z kose, ..,\. łańcuchu zalety od
(Ot'blJ OUI ;aliJJcfU.Ją_t"-eJ1 H~ r.u~ n~_ą w łym "S~!rm I ncuchu„ w mlS 'ffl pr.t.yikl dzłi:
~ h jesl ~11J.1kowo :pros~~ Je ~e:k1 re ~te1n-y ·ości 11LOgą staoo.wii omp1ikowllm:
~ [fflJ.y hierareh1c~e ł11daJ. ce nę z ru~~w,a 'Jl()~ezoncgo z dwjcma nogWTit K.atda
~ może skh!da.ć I z mmcJ~z:ych czę ca 1 tak daleJ. Wp;ro~ adzę n~ewitlk1 mcb pi.crv1-
~ k:o.sci. ilby pok. · jak wpływa on na kolejne ko ci:
r1 Tra~s l~t·onti ~tł. o o . s o • ~lnfCl!15.J. o o~).
Kość c2 porusu si.; nlł pndsmwi11; ruclm [Pierwszej kosem poprzez ebKn k~ ióry
~wm ·my , --~ ni ~ ,v naszym pr.eykłnd2ie oś 431a k1.'li i s.c.2 znajduje się w n.ritej-
st!J poląffimia ko..5ci Kos.cl z kokią Kose?.. a :r.ate.ni me m po1neb::, :praesu, ania poro,..
1
jcoi P'Jmiętajmy. ie dla ni.1.nyt:h s h; rnó,,· zkic-lctó, b~dzic tracbt zas_tos \,~·a • róini::
pa;am~:
• Pfostj()bro " •, OS~]
Oś kocsc:~ , cJ j-:sł prlX.::Sum ·1,1 \\1'7glc,.~d t:m o~i jej rJOPrzedc,; i ,, ~ha~ "'mtl.lteoi1:1 • J~~
00a ~·oraonił na pod •aw j,e L) i k~c i Jsc.2. ~itl,,; fi pit:ru po pn:es1mi~iu nm -e:~o p · ~~
~ia. Tę S3JłUlPtOitt."tiuJ,_: pow,~r,-.,.amy cJlił kości osr · \\1 oMitzeniilch ()!jlł kaideJ_z loi;c:1
opnic.mmy s.i • do m zglęil1w..·ma Jl..!j J)OJlrzt..-dnic:zki w bń uc:hu •.Jd)~Y rnk me b}1t'1.
·e-3e4 a>t!lieciatby i~ i ~.pos!JI~ .. hyłahy bafdzo nieszc1~liwa:
lo5- 3 • Prosty()brc· O:.xJPrze.sur; 1 c: 0 <r.:;sc2 •
.osN - P.-o!a yOt:irat .... &.'!<JPr .-: •SLH H~ ~t ... ,C'.:$<:J.
Po "'',."Yk:oorutiu obru1u :kości slnsl~c,n~· prz.esLUl1\."t:'ic uj,cmnt\ aby anu IO'-'". . '1.\'~7.)·Mild
~ ~ i 3 macu:ray, ,dyby· ny ccgo me uotiiJj, ~ kóra przesm n~l:>)1 ~1~ 2god1uc z tym
°"''SpÓkeynnikiern1 00 [Prawdopodobnie- ruc jest tym cfc:k«.m. k.1ÓR"!;O oc.iOOk1LJeu1 . z\,,_ rn
I mrtlilllt•
QafM V • Ted:Lnld VJIC-.... ah■■i "W1t.ea ....._.
Po mładowanj u lłllki rnuż-en1y wywołać funkcJ~ otn e zDaneZ ufor . \V U!J aJ>] I
giównyrn celem Jest ust \1.•icnic ko ·c, mwag dla k~dcgo z wie'~clmłkćiw.:
Pob1erz0d 2.oo or ·O
\1.' tej funkcji zakładam. , ;.,c •ir.uk sklonowano do wł11 ~ciwego orm tu wicrzcli
w C7..llSic jej ładowania. funkcja blokuje bu tor" celu ,, ykonania a.n.i lizy wier1tbolk
1 ustawiettra. " 'arto 'ci po1nebnych do'""' 1 konama upcrac-1i !i-kinning.u
Ten s 'it~m klada ię z trz ~eh poru:szaj ~C}4.: h i,.- ko ~ci. '1 ka1dy wienchoh~'k n.lltl)
~.dofąc-.eyć" do j~dnej lub, •i4,;Ju ko•k-i. Dane or•~
u " i~rzi:11 lkó,, ą Sln" um,e w dw~h
pr~e~ir.:gach. po 1no~u dl.i Jasno.' c;~ procl!S\l \V pierwivym przebiegu ilłtkę c~ hndJytllt\
dz1eł, my na trzy sckcj..:, z kLórych każda mu rozm i. r 12 ji..-<Jn05ti.::k I a,idaj · t dol .
do odpowiednich ko, i. Ka,da ckcJa Je 1 ~ pehu po~ąr;zona z jcdm ko~C lłlt w~ga drui1e; I
rz 1 - ~ OSC •
r ......,.,:11-.li'id - O•
~ ·~.,.~ z. ~~~~, •~Q
'l.. _2
l I ~ ,., ~ Of •
-. r
.J-,S:. • I ;{Jf I
rz c. - ,me - 3 ~ •
rzcllu ~ •
r ,cno l 'il ,f;lt;
n<'i .--"I-ho 2: -
I
Z...dl:łJJi-1.: m drugie et prlebiegtt j1:.. t okleśh:nie stop,iia 001.tii,:!l!i'Vii'a.ni~ kośd n; \Ji , s•
~ 0t:i► ~1:1!:i t ogrdlli ~1 cl1.: ctów doi j«łmi!j k,o ki, li.mOWl.!t ~~u,= odrlzi •
\l,~C: d\\1Ó(h - . lOOl:'lkh kL* Lna wicr.Lehołki znaj.duj~ s" ę ' rpobllżu 5'fm' . \I.: I ytus.cj
cę ~.cz,:gó,1ó1ivo pro.."d-"um LOBO na ry 'Llllku 12..6.
Nield6re schematy mc>A wymagać mne&o rod.tJuu in~laąji niż l i ~
przypadku ia1apOlacja ~ zdaje ~ i n . Ponadto~~~ tyłkoclla ~-~
k6w na zewnqtrz stawów. w,crzcbQłki we~~ mopj~mc ~nać ,;ę . _ ~
Zrobiłem lak, aby ia4łcmonstt0wać motl !"'ości dokladmcJszeJ lcontr'Oli. Wagi labit. „
ustawiać. kiedy 1ylko pmamy 10 zo wlascawc: ~
< HŁ d•?°Ge le 1Ceso, ~
or ( 1e-rz llOft• • O: t~zct rzct1ai .... ,
{
return s_ ,:_
}
f 1111kcja Vt~nrzKosc 1 1,11i·o rzy ,vierzc-holk i ,4, • kor,0··s ty,,•:11H; do renderowania 'tnlktu~·
ko ·ó. In CZi,¾j n iż w pn,•pndku iatk1 :kuntroln..:j JJczicrJ.. wu::rachoł ki re są pm.>Jl.wll.rlmle
pnez lt"łl S8m vertex . hadcr co siatka cylindryc7Jla w. 1.sr..:j ro7..dziek7.0Ści. Oprócz W'Sf>O•
milgan1a w11Jualizacji ko~ci ~takie rozw1ąZc1me utlowadGia tru<ŻI.!, z...: operacja ill11ing,u
bardzo dobrze spr.i,,,,,ctza st dla siłłtck o rón1ym poziorn•e ~i.ci..:gółowośd. lna~eJ nit
w przypacUm an inulcj~ z wykorzystanLl!m kluczow)ch r.1mck. tedmika skinningu po-
zwala na zas.to~, an ie r1>inyc h ia Cek i nic ma 10 " pły\vu na niepow1.łł.tic.~ie aniwcji
{przy ?.",i.łoź.enh.1, i,; po1,rawnie us~wiono J)ilf,unctr) s ·irmingu dla w · tki._-b wierłl :łlał·
ków), Syt00 ~ft L,; mo~my potÓ'-'-MĆ do prLyk~adu tlt!lfina z DK. gdzi~ , Z}' kie 5tru·
mfonic wi z :bołk(h"', musmty byt spc·•Jnc. Poni,_~ kod tworzy i ustawia cztery wia?thoł
w pmlobny :.posób jak w przypadku pien\· :rcgo pr7ef'11l!gu dla ·111tki~
T ~ ' I 1 acj T:Cl'lm 1 Ut xirzK«xt:l 0
{
1 (fAłLEU(m_~-1.Jriijdzen1e03D ◄>Cr&1ter ~tt Bu •e, (
A~ s12eo'( iERZC E PALE ~SKI ),
O. OJOF 'F IE.RZCHPALE ~S.if.
D30POOL •-; 'i D.
,. · st
Eu o 1er l.Ct~l ) ) )
ret rn E_F11iu. ~
IN fł'.ZChol .
f.
00
f„
12 or.
f. erzc.tiolk[l1 1 • o ~1 :
~,• ~ -
36.U;
.:, a.o •
1 ] 1 • PJ{.-SZA_ICCISC ._ o.or.
et • l • LO t ~
hOi J „Plfltli'SlA_KOSC er OO;
c E 2 - o Cit~
osc ., 8
.. m s_ t' ,
i
f1 _ cja RSlOen..i~ jest ~ unkcw;o prosta - po prostu ust:.~ ·a k.2lka iwirr.tthołków; umm.-
~ · ~&:rowi wykomIDic odpo\\'t1:dnich dxiialw,. Dzinfarnc funktji ~eyna 1f)'woranie
tunkt-jj J.$ c11!1$to 1e osc: , :
,,. d ~Ren&!· j '
ł
lli ~ Stal osc ( •
U~t'Y; i m m cierz s;i.va:na na ma 1-CTL ubrotu, by udowodni \ .c o!)(: c:ja in:n;nglł
modyfikuje · ja ·ę. ale do rrrakros op,o,vi,,•ch opic-r.acji, takid1 jak proste pr~ięcie lub
obróe, moma w dals,:.ym ~ ia_~u eos-0wai ma-cu~r" ~\\~fata. Po ~onfl gorow.oinu1 m kn:;·
~li.lis'- ~a115ponuj ·m)r jĄ ~ wysyl my do slmdi:ra:
~ : 11.R.or
~ lK
!1-3
i,;. a
ta.
.:
·~u
t~ .. _
o I 11100 o·,.
.Podobnie Jak ,.._, FJrz;rp-adku otn;z.w,i.· Ai::ziera umL~~ci fom wi~rsz kotlu~ dla którego motta
u ·unąć koment.a12. ab„ obeJr.1.t'i' obrai \li;' Lrybic "'ircfra1nc. Dum~ lnti: ująłem go,.,,. to-
rnentar.l. Tak czy inaczej siatka j1."St n.-ndr:ro\vana. po czym u.~tawiany jest s,tin Rflduo-
wania. aby zapc\\ k. z:e w llll.Sltpnym przebtt--gu ohnll nic: będ~ic ,,. w j ~ , w ~
,, irefrart1e~
ldr:12e . c-0 .• )os~tP.enoo,-s tate(ro' _fl lL . Lit.. D3Dt. ll_liH
_ {il~fil OJO . . c, a I r.e..,,e,-1:- .. ,,. ~ • , P o.
es ), O.
_ dl.nmeł):W S,e;_P._e B""''t.l _ } '
~ID).
~, ~.r.atnim :i.·r ru n:m:lcrujt.·my b..osci. Jest 1c, ,,. 7..a.xtdzi~ funkcja diaga.ooyCZP1a imomn)'
UJą J' w ~omema12. je~l1 ni,; Jntcrcsuj nas h:n efekt. Możt! nru.11 sję to przydać w cela
rro~..poc1.ęc1a ek~ryrnentów 7 innymr all1rn;;icjami:
RHl(tf„fUJ'QS.n )
~ .
371
. 1 •
v.idzim~••• iatkn .J.-tJI! s1 • ~, ,\ d~ l•:uJztt:J 1;1csta \\: okol11..·:u:·h "La-.\ o\, . kst Lu , ryli:
, 'i.e ,n~uj~ 11' • l~odni.: :1,.11 :cia w mwacb. d i..'tin zc,·nic me che m ' . lh~ si.iłka
~ '1ff!połr.l4.:00U: 7,byl g\."':.'ita ~\ •i.:k~zosApmgrn,m',\\ modclow-a,Li., ~ a l L na Of.!L~·-
]JZ; ti niektótyeh fr.igmi.:ntÓ\\.' . •~ , ·i. jt-dllOC:t.C ·1~ic ulr1ymu il ~ to~ć pozu-s1 1~ eh
tji n.a d0$Lak-c-.rn_ m po:1.,omi(; _g~~1ośd do utrz:,·n m11 pł_ ,meso ru ·hu. P:1m1~cr1jmr
0 Lym pod~s IWC"Jr-'1:C"rtia n:l~z)c h ,noclda
Kiedy Ju.t mamy ohru mo,clwlimt6w zaslO<lowar,)'(lt w -.:in,, ~~
rroeh~ cDSU n.a pruanalizowanie Pf7:-Ykl~ ów ~ SD~. Przykłady w S ~ ' ~
wi~ej infórmaeji ni lemat łudowa01a BDIIUtłCJI zapL!\anych 'W plikach K s
spojtzeoic na t«hnikt z tn.ncJ pcnpektyw)'. °'Wł
~
to~-=
Inne za&tosowa11:i a palet
I mi.eje wiele róto ' eh z.a.sto ow11fa wjl"śtru adresow1i: o or~ pojęcll pal«_ P
m;c:nfon .zated - ie !kilUrn z nich. <.'łlitq
W) i.an.: !PfZYkład6,.,.
na jaki. czas. Moim l31ńiillem był pnc~az.amr: '\.1J 1( dzy dot} ~
t.eg-0. że r j~-str adresmvy IJJO~Wala na gIUpowanie stałych i mcl't!l< C>W ni'!! i h "" od{Jlł
,,·iedm po~ b. J eże li pop11w,mit." "'Ykorzysrarn) t~ pojt;ci;~. , -~kamy o1brzyrmą MK!i.roi;
oad tym. w jaki sposób ·hader oddziałuj · na duż · p kLt.:l · danych. P~mi~.1ajrn)' o ~,n
pockzas opracoW}11v~nut b.ardziej skomplikO\łi.'an eh shadcró"'.
Ten rozdzi l to zah;(hi,·ic wierzchołek góry lo<foY.'eJ, bio-r;,i: pod uwag \\ ·z tkit ~ -
liwości dost ~n · podczm an·muwon ia pu~1.ac1. lwi~ile omówili n y ji:ci · i11Lerp(l Llll
pomocą kluczowych ramek, po11 ic'łl, aj; rtO ta.n.o\\ dcm onmw ić mn~ c~hnik: . ale.e~:
wybrno~ Ee · hn 1ki są lepsza.: od innycb. Zapo1naJn1 :,i • 1 pr:zyk la&n,i z.awa~ynu w UK
oraz tymi przoostawionynu na slronach finn 1\.11cros ft. n idia j ' I. Motm zanuartffl
1
j t! t srworzenie pod. taw pojędo"' eh. le "spomn1anc przykładi• LLm żlL~ ·a po1J nit
różnych ' p obów h..,.or,,.,c:ni rz~---c1ywi5,Lej 1mplcmcnmeji.
1U ;'lflt&•AtrJA'łap(ltbial-tltl JSQI~ ........ • .... I
• Yl SDK zrt jduJ~ s~~ ' ię J l"7. zy\'iil!itJCD, pr.cyl.<l dow ł d_oi; w:ii i.l. illlhlllO'Ą'Wl)'m
piosr:.aei z pnkt1.
• P,oję(ie ~~t lub t~JL'"Smll .;"tdr°'0rwcgo moze b)1t;
w &l;:u-m aplik:icj i i cfe-1-.."tów.
R()tdzrał 23. •
prost• operacJe z kolorami
In daai \\' po~o...,a }'eh ll'Q:r..dzfo~tich. w •yn rozdz1 k .1.a~nluJ mr d" różnł: ·pm-
pam p~~owri=. "!'których '') ·urly·tamy dwa ro:mi: n Cf}'- \\'YQ -"ćt)l~ą O obj -,,,~
• "Sł)' sha . ł '1:11. a 11J6tt;:~•L:. \Iw da.I 7i ti c.1.,;~r fffl.d.7.latu~ ,n ów~ sł1adcr \\; R'fUJ4~Y
impl~ b ~ i::ti u ptom1em X .
Kodowanie dtbi
za,pomocą koloru wierzchołka
m z 1.ąu-..~z mowan_ eh . hadi.:n'l, J~l hard7o piosty )' ·o ey
z w v, idoczncj p lrreni w edu u7:is 3nia ·oloru , 1Nv.<:hGl ·a. il" z L00.01i: an·c-
J~ rd toi; \Iii' wi ·lu t~l·hni ka 11. l'r.~ykl::n.lo,, o w 11nplcm~nl.il J t cfokm mgł}' n.1kży
GQlllaSlJt'l7f2Ć ,ur wi 17..t:hmk~ m1 podstati.\'lt= odległości od olx«='rw:11 • łoi.t!m~ ,akii;
: o u~ n-i odk~gk,M:l 7. t~ti.:m :tłfa, Jb)· zaimpli:me , J p!Wną Of>l}tn3hZ:u 1i:-
11P.7111łrhid pdt dow ·my się, .t~ ,, ie 7.<:hol , · .!ną,dujc SI d, JL"Clfl «=' &lc~o. mol!Cmt
0
(IQ}J)On n, alfa kol , w,~rzchu-Uc na " 'rtnO:.~ na l)1k niską. h. oh11t-kt me spdmł
tIJ"fflJi aH'
Do teJ I hn,k, ~ .; "' tw.d.1. i ale 29.. ,cd hęd • d •mon~tro, al t>d" zuro_\ .rni,n:i~-ni
fccluub tn'0\\'3Wa cteni OOżUJC rtl porówn~, .aniu odt~g,~ po~i d.7). v. zchoł 'LOOI
a l.Todł m ..,warta. x pur ~10 widzc!n.n, .lfói.U.i ,...,. ,.lfła ota7- L pu11k1u , LdZl!nLa. obst8rw. ,o
~2S.S..
Jj ~ ~ 0.50 o 5.0
1 't#J:fr.: slftxl nu
t~'1-\ U{ę 1. 10 1.00
'łł,~('jlalon,
„0 50 0,00
0.502 0.5001
-
O.SO$ 0.50-t
ł tniej \li.ielc C hnik llld7A;'nia bir.: Z tynr1 OgI'"JlllC'Zć..'flECITI. 'ic.-ktorc obejmuj\ ooo· ,
danych v.· ,Vlęecj nii jednym k111n le kolom. a n~m"p1'1 i pómicj ~c: 11tk ~ ,
" 'MCI j_ Inn~ olicjmują kodowa.rne v.anosci głęN wr;:: wspótrzędnych ttkstwy. ai ~~
\J,·ykof'l)'SUrut w:irtoki tej ~.pecjalnie skQnsJroowilru!j 1.1.½sti.iry do \\.b§crnv,:go MćntD;).
Z dru 1cj · ny. p.17.}'5zl \~·er.1jć spr~ ·lu oraz Di~1X :1mi~r„..ają do UW7.J;łęd11i:wia fOT.
1
m11ró"' ko lol.'( w o znaczm~ y7 7}'Ch gl~bi tn:h b11owych K,cd~· I k !iłfi Sl11J11C'. w.
spośrtt.d komplikow 1. eh m~tod t njc- sir m"ir.:j ,., ,:ne. T · ~ · io, 2laj. w p;nu~m
sft.adcrzt: :zakodov;.•ilno odkg.łost: ;r....1 JMJffl c bitow kazd g z kompoJ1(111Dw ·~011.1
to?praszaj~go.
• rr~(Jllallt • :i;~ podr; ~n.allzQWt1rii3 kodu .apli · j i,, l'\!]cstr c 7Ji,\ ii ~t woc P3-
ey k(r,do, ~• ~~b•. k1M: p z. ~lad : s1 • da pctll !!;O ~ _ .oreyst.rmi ~pnyth
:.iLJ bitów w nm1tJ Y, m rozw1ązarn u, P-1en "/ 'koił J)Onenl rtjHtru ~ ~ i<:ra lt•
~ p N~.t.>gO ptaliu W ey~'Lk~ r-0. ~o 7Jl3jduj i bliic:J jcs.1 1rnl:tn1,1 · ~• ju >'
tn:iJ&rLrał~ :m; ~ _krlrncr4: P !W(iow~ Jt:! I ~o cym 'SU.m~m eo pi1;rW!'.Z)' plmt •~ tlu~ 1
Wo-.,tatrum wirnzu s.k:-duJ1:my ,,,....Jft,\ŚC oc:11..:glo c1 pr.1.(' \.\ ~no~ Złpisanł ""' ~ kbdov.. i;j
ie ' J. W więk~l · i pf7)·pad ·i,w w.._ rtM g! bi Jl!: 1 "'.,i, • ;,.a ni I~ co ZatW. zaJ ()Zm:.,c:za
· •-je do wano c1 I pó optL~lc:rcnm ~ h.._.d"'Tl! IO\H\ni • w..'1.11~1 , ,,:d]ug ·wae o
u!mr.b po~al n Q rramc1:~n, • \\':-uto · i df'I 7.a • esu pomi~d:l}' O, L. a ~ pom ta
zde.Hnlmlii 'i\ r.l}'Sl3mr: b1L1:W. . ~o.r.a:1 t.'lkre w1plcn1 n,owll M i-c drugic-,o płLL1~1J
F'cm'()(!uJr (mO bc1~ Cli! W:lttO Cl 7.DtlJclUJ ~)'C:h ·~ da1ej ni?' ob5:r.ar. ~wry 11 Jnh~ , UJ~·
WJJC'• )'m stopmu l..1łą furikcj',: ~pdr ia kod k Im 1a ~ ,n, seri ~u:. ie po~~ o namu
· ID'i\'8film nieb ri: ,, .artoś~, b~ą w J~k 1.~ ni I. Na potr.ld>)' 1.iegv prt ·ld:.uiu l'l'ZYJ km
Y. 1 zapjsam.: w rcjt."~tr.lt:
• rl r. . ,; • ,
__,V• Teall■IIII ~ . . . . - - - ~ ~ .......
!ilawia:my f)OZj'cJi; ~•zruku r Uł.}'W.111iy JCJ do w~~cncn1w~nM młl lil.!'17. \'lfidołru. WaJ'toŚC'
~ m:az atcrybuty mode[LJ pomag.iją reshć " ':UH Śt·1 phm nll.tSZ go oraz Vl,~i s ~,o--
wam cym preykł d;r.i,c katnt."ra J 1.:'.lit :St~ocj cHJ:lffiiJ. chrn.;1a1 LŁ~hn ika dzaafo ~iit: ~ • prt)'·
pad.lru poru :m1ąc:ej śic; k:~'r'lt:-1)'
~f;l~~ PQ dl8 O 10.0 . ~ll D
030X lH{ ,'"'-Md ,~:- ~ 16
&ooo·, ECT®rn o
.
, ·ren.a u o·
lł:riiMwla
•"'.•.-I•,_..._ ...... I lkalDIIIIIII 1111
......--""''"
,~
~ ...,.1, ... ,...,.y
""'81• ollcjnei!
iWlli:a 1MJcl11remy 0stateC2>4 mac~ traru,.!: ~ ~Yc_h Sll'l:ffl Po ~ W J
,.......-tł)' UKIISOO: llJ""Y ł\ ~ W)'Jyi'1my dó Wderll
V[.
i;«i•'łl L
ri li •
Rysunek 23.3 .
.. o j ~ ..
ł"ffll '•"ml'"' e
Pom~j 7113'duje ~•r.: kod sJ1adcra 1.11<łjd1L1ą<:Y się w pliku XrayG1a.i;ses., h JoonymLIX!l'C!Qft
inr r-.-suJących a.'ipt..-k10,, sh3dcr..i jc:sL f.akl ,,, ) kL1rl} slywan ia p '7.e'I nie.go I nsmtktji I
obfi rama "y·i.s7.} eh potęg \,\ artosd J I 'l}1lU :.-,kal.imr.:go. \:\ł nast~pnym ro.zcfaiale do-
się o planowa.n m spo ohic z. ·to~o,.., am:.1 mstruki.:J1
vs 1 1
ha.der "ealc m · o<ld:, iil tuje n;1 pt1Z) LJfi, a 1..Hctn h:1dt..: r ,,. } konuJ prz~k ..:tał-c1..,ue do
prze lnem w iclneznt:j , Ullót::rn; m pl :I.) ej · ,, re-Je tr;;c.
po! Po
dp4 oPo
o
o .
l!~f11 C6 :1..awit:m J1UZ}'tjt; wzroku \\ IJ zcs1r2cm obiektu \\' na::.r ·pnpn roidiiale ws~. -
pr2i.:d:i.tawiom; dokładnic' -:zc mł,-.rmac1t!' n. remat 1cgn. J;1k1<: Io ma zn ttmc. \ ~ę
?zyczasic pomz 0 "'ii.:rs:z kodu i..Jbl1l·:1...a ,, i.;l,:tor pom1i..-dzy "zrokicm łl wie:rz,clioo:-1 r.i
1 um1~;.i:c-za wynrk ,~ rc,~str.lc- r ;
sub rl. C • Il
Więk ·zoU ~ h . ""'')'k or.cy tujcm w drngim ~h-ad •rz~ t-..1:Óry zawiera ftmkc~ oś~itUen~
~I~ le ornó • 1my 1 lll~L~pn)·m rozd flik . \ •~ m roz.d.1.mh: interi suj,nu\S fa sra~ kt ra,
2.1\"'1r-a PaGlltlutry promieni X. PfoN1szy kompo 1cnt zaw,era wartość l t '1 . .k). Kom~
n.:nt.ten ~DfZ}'Mllljemy do obJic2l nia uzupełnienia \'i arto~i s.tollka. Drugi komponait
pnechow4.1 c ~ kladnik wykonyslyw»ny p :zez i Mtrukcję l do obliczania W)isZ>• b
~ 1.~
.,■.-tPIIIDI. slalafflCBO <HU opani~a :ltolb u ....- -
~ ;~ f96I~co o;aiacm, te~ tó ~ M ~-.1ma1na ~ ~
!5(ffl pnawdopc,dobni( taka d.m w a r t : ~ ~ micra.u W pl'IIJ-.
deł2a.4- Pt łbie,Olllllllłllllil
.lllllllla,
. . ......
-
~ ~ ~ tm:ba zmodyfiko~ 1;badc-r lale .ah ~ . 0dyby
~~ ' , b)'b 'l.\-yloTiyW11n11 dw11 r-41Zy: " )' ~· cc:lu. otlicim,a ~
. . . ftRł e I co.u. .. o • o.~ . o •fi
~'f.C l tłl , li (1 O, l Il • ' O • • Ot ).
~oml-= 1 l tadlotl.O , ar. l r Q , 100.0 i.
~l)ff-3 0(.1 1 0. 1 • I) ! • 0, , ! Q n.
l NY;vJ ' r~ Cl o , ·n (I • l 0. 1 Q ,
~ ~w. '"-".. .......n.... •
~ ~fili
~ ili\'1~ powodu.Jlł pm - fil mic· kicrum o.<:.i,rictlenra p~ · ,
i;;;i., pot1i~O ~\ł takźcWR~,n; m_ sję ao lltitę~g.o rozdiimłu: i ob~
t ~ rtri'i?f ( 1).1..ifOCG - 'i i. . _ c, ·rz 1 ta);
~ .,ąrarts ,a ~ , •tS~1nHI. 1er 2.a • · «'(Ir " . Hl l .
llf\\ń"Zlniu ilf l:I-Cie:rzy Virld ' l] pr.rez. fimkej, . niWiotclci oonx 1n'ticie. \ł,I ' . -
f'O irl3 kił'll\lf]$ \~ktorJ dla wzroku. Pa ni ra;· k:Qd pt1\.\m,duje w,dzi.cłetll~~ tnlCJćtt)'
~ widoku i jego nomiializacii;: c c:&Q 'lo\,'C kf:ora
, rQ •
-••_.....-;~ J11e(g 1e .a„ 6 :! x~rc ~~ _13.
J tł
_ =33: OOf)) ,
~ti3 ...miDXU or.1l kieru_~ · " 7J'mĆlJ m ~dują ię w ~t"IJ:ju śmam. y ~ a.br
~1-.lłf i, ori . ~ p~v:a i oooektu i do łrulnit· t)·ch samych 'f)CIW ~ . dla :tó~d.
1
~~1 U), o&,v.~11~•lcm_c do pr.restn:em obu; •Ju t~~,c- z Oplsern w • l.ęfln?lffl roz.-
).. J;ik ~ 1~1;7rt, JL■.cmyrtł l ZOOa:ń t :g,«) roz.drń.alu jCSI ffl8 S)'llWU 2llm1m:sow:mie
1
Jednym ;1.r:: szczegółów. kmory ni~ je.si do konca OC"ZY' i~•}· podczas .m.'Llizov.'al'lia odb
fak1. :u mpk'L.('.1)(0\'1,'aQa t,.-chmla ttaJ lep1ej d.Li--i.ła dlu moodi o ZUdC7.JleJ r zbi.t \11~
·6\ a p~Uad. zc.\.\TI~trzn. •bickL riazv.·alcm kos · • i.1le nfo jl.--st 1.n zwykły Sldci:m lifr
bikm 10 po to. aby M.'".(.'Hfl była ni xo cickm.-.:::.m Ol1il li..: w1.ględn n., takle cf~· jak 001n-.etlt.
n1 ·• kt ·re" dui'ym $Copniu .t.3lC"~ ud hc.1.biy Jlr'/etv.·ar.l'an~,ch \J. u:rlChołkÓ\\.• N r,,SUIJkn
1.., .S po ·a.w.no .mrut .:kmnu :r,~w:n't"tr7:rlicgo ,nbjcktu n:nd{:'row.a.n<.-go" uybLc- Wlrtf~
RfS_wrtePf 23. 6.
Wtdol. K'lrr.:d1ol!n iło
;ci\ '1Jr;,'lr!1rt'g_fJ n !li,Jf'Mri
,_.._,wanie
opl& pf1ł'i rdo~ bnie .lli~'~OWill pow~11nit: ł8ki,:j . me-· Licn .
M
~ szez~łf6ln•e , odn1~ 1L'\Jl1u do ~adnjc:111 dm~h ~p .:U~• ...
Jt·t oo .
"'~.,,.-tw db dem 1 n~nym 1"(2..dzial,e O<ipQ;,"11?ffl;' na te-o~"~' ~ t~I}-..,; □~a
,.i.-..-,..l~ • __....,.a..,· ma ...,• .J_. • •
i... ~ C llWJ~n pytru]
~ l,:tl) IJ.]rl - ,SZCIO I ~tłl1 li ..,~ ,ii) pr-~a.\li.·-~r:m~ w~ prooy h. tcehnik. ~~d ~ .. .:
#i~lem d _om Vif!Bll l ~gó:1'6-w.ZW'II ~eh oł_~~tJcn·cm. Moim b.miarcm:o
~ ~ e 5P?~ 11
~, ur-~L~ bkich tllStmke,11 Jat.; np, l
• □k ~1l'ko do obriczc::6
-. ..:n1nvr.h 2
Ei'<..,-.....,.---;:
"' ~ach P .... ~~er ,
-oo,'wietfemem.
. .
7-..3.S311ll J ~ 7.3Jl050\\l'M:ic ,1eehntki· rn,:....n.-. ....11.-.... • •
. . • - u-.. ..., .r..wr.v•~iu Śl~
zas.ms:\.WJll7. ~n;-cli PQJ'i'E- do iflnych t~lm-il . ~ j,1
im pl1Cł11 d~ mlu_n"~c~ est ~ syn om. MAJITCgG s.tamlm !ii1r 1u\ik36 w 1ym row.aa.1c~
1
~c:t:'11li.k ti~w,cmhmw.
t ]JLY~ja h t ma tastoso~ an i(:: nie tył o do oś11 idlenia . ~ło:« S!~ pr1.) dać
d(i oblieza.JJrll ])ł)tt;g i n.11yd1 wartos-c~.
Je ·r to Jednak \\,·yJąti;k. który potw11.:rdz~ r..iguf • Ro1.\\'iLŻmY ry un~k -4.1 Te-r.tt ~o,
owali ·my pewne prlek ztałcenic S."' H!ll.3, kthrc ~powodu, □ło uhról wi rzcholl-óv. ~le
nu; pr1.ekształ iliśmy wektorów nurnmlnych w1 rzchulkÓ\.\. J ·żdi próbuJeffl)' oblttt)'
iloczyn skalam)' \..·cktor-111 oswict fcnja Ot'il v. c tora nonnalnt..-go, to U7 kml )' i, rynik będnt
nkpopmwny ióma p()\ erzchn1a modelu h\-dz1e .,., pdni o ~\\ ietkma l • • k gdybj Ś'M'VJ11o
hylo k.rerowanc be1posr ·dnja na naą. a przccu:i Lak ni 'est,
l ~tnu:je pro ·me rozwi. 7..an i i: lego prnbl i.;rnu. Aby c1hl i czy~~ poprawn~ ifoczyn ~kalamy•
możemy przt:>ksnakJ~ wek.lory uormaln • " icr, hulkó\\ . ra ą ·ytuacj · pokazano na I)~
·lJ.Jlku 24.3.
Wyobn1.i:rn I sobi~. ie- :sl()j:my 0:3 szczycie figury poka.-zoocj llB! popnied i 'h ~suuk eh.
Z □lszego punktu widr~rria te d\ i~ :S! cucac:j e moi.na p~ tai,, ić I , j k po · no 11
ry Wlku 24.4. l n :tr:7A;J perspek yw-y 10 Wli. tło si~ przr,;rni~ ~ & nle TfBlH~.
lłrsmek N.ł,
S"r.d.mtrftt:rnl
:: ptr~
lll~i1!'Mlł~rt
m -6- v • TIIClinlld ~ u1a11■r\i11r .,.... 111,..,
~
Rysunc!k 24-5.
Efttf)· dl-włam.a
mot:J&:rt,' $'111 ł(J]Q
; (}l~tfW(},:.i
mm:~cm•.mroJr.1
CM.'ł~ t- t..l
.CfS:ujęt,ly do
·~~len
~ nt ....,_
7
• opisane
Jt.-,J:Li N'li•""·-i · nlw1\\'l11'V Sit- I kontynULJ!mv3 lekl.
..11 •tas Ja51lr.::. me 11
Tteraz ni;wle!y monnaliz-ow~ -ć \'lt'.'"k1or \,·1er,,.ch□ lc-k-ok . ro"" •lonimm Lego d:riahmii.11
.lDOmł!łlizow ny -wekcor :,,.api:, uJ~m_ \\ korr1por,i.:ncic rr::
~ rL~ •..
~ : h, r.l lit
1 • r
adG r2. rt. cS
dp3 r2 w. r2. r2
r r2 111, r2 li
a r2. r'.2. rl ...,.
W oslalmm wief"Sn1 dodaj mny , arto;c o:" ie lk n, a /'\V Ierc1ad huti:go i t:il,YJl.lUjemy
os tateczny kolor. \\' cfokci..: OlrL f'llUJCftl} w1t;rzchokk. o wietlon pro,stym ' wmtli,m
kierun.ko"rNYm : ~ •
aod oOO. rS. ru
W wfol111 mił.:j54;ach lego . had..:ra •spornmalcm. ii: m któt 'Lal zawiernJą ol,.wśloo
Jc?Jory Jub at~hut„ obiektu. r miętajmy. że stałe ti.: mo- em_ u tnwic: pr,ed 11Cnd fOWfł
mem \i.•szystk.ich obięktów. pr-l1.:d umdc:ro,,·aniern nie lury h bid;tów lub ~m-vet 1'0
----
iclk:ni■ kiffll
!klawisz J. Odpo,1i,1
rowad.złtmy poiycję:
~ oPoi X. I). ((I
~ i:fó~ 1 , O. c~
I cł\')s . i . , c2
• (#tJS. • '#V. CJ
Obliczamy wclcu,r \\' jt: :tCh(1~e k.-1,.) •m·i~•1cm~ I z,apiSUJtrn~ \1i n:jc51r.lt: ri), We wr ten
1
~~
'żstt
·11 :t
ćl':SZC ·wyko~ ysmj~my do oblic.z-cnia wspóic2ynn.1ka. osląbianja fi:.~ .
ustawi~ rej~ IT r :n w~rto:ść
: dok:d•k rymi. kró,yob por~•!"'Jdffl)" d<> obl•~~"!a rów~a~,a ""!•bi.n~-~
~
( J. d. ci ! Id). Pie~•$;«: In)· ~ ~
P:cmiis7.C c~c:ry " 'iersze oblic-,...~li\ we,kior \\ rel"'L-th fek-,, 1.10k • n-onnal irują go w tta ~
spos.ób. jaki pozn1:1liśm:y w poprzednim ·hadi:!rLc-. Znormalizo,i ~ny vtktor j~ ~ PESiVI~
1,8,' ftJiesll'2 · 2:
sub l. C"6. {I
dDJ r2 •. r2. r2
rs. r2 -• r2 ""
1 1"2. rl. r2 "
P-odoQni~ jak poprzedmrn rn..z~ m ohl ~czam)' wckrur J)(•IL1,~ y kąta , Znomwli1.0\1tiafl}' ~
1-apis.ujcmy w n:ji: rrzc r J;
dad rJ, r2. r(I
<lpJ r4 . rJ. , J
J'S(l r• ł 4 _,
Rul r~. rJ. 4
W tym m~i;jscu wy~orzy lam~• "'· pókz--ynnik oslabi~ni a. Poniż zy wisrSZ po\voduj~
pomnQźen 1~ wszy tk1ch składu", eh oś,.,·iel l.!'.flll p rl~l. w ?6ł zynnik o I hilania. In~
1
(
,c3
S, c9'
• r6,
W_ Ol'i:ad1.amy poz~i.:j~
o~ . o.
~ ofoi.)'. dl C
cf'os z. .o c?.
~ !Ji, 0. tJ
Pon~ bki kodu j~t identycmy jak " p0prLc:di•im sh dcr1.c. Po 7~?ńcu_niu dz. • ia
'11 re~Słl7.c r-tl zn ~duJe s1~ zn41m,t1 lizo\\ iln)' ,~ le tor wu:r~hołe •Os~ leni ~ M nna:st
, a l.Yi nwitro \'ii',:;p6łczynnik o. ł.Rbi11nia:
... lhader
C ,., V.,....... W)luld;■hlłP •H liz I,,__, MHU
\\,' pooit. zym wierszu kodu przyjęto :zn!oż:eru..:, ź wiel"lchokk majduJe s,1,r wev.'11..t"'tn
obszaru pen1,1111bra. l mość składowej re- Yje I kalowana pnez 'W'Spókzynnik 0 war-
tości I '{umbza..pcnumbro.). ~ temu uĄ'Skujr.-my li~iowe .la.111~ w obszaJ ze perium.
bra aJe zanikanie t>dhywil si w złym kienrn.ku. Pont , wti;:rsz koJY(:."Uje ten prablcrn
popr-ze,z 2ru"1ego,1.·aJUi~ 1,.i,,•aJtośd 1 nalczE •ńic utup,clme-nia. Poniższy "' iersz ~
ks.ttBhem ob.s:taru 7..'.IJ1 ikanie .
.Ad r!'>.y, -c .l t., S y. eł
Jeźeli wait"tOl ć znajdow;Lhl :ię w ob~z ~i,.: umbra. , 'Y" ik d:oałanm popr.ler-dniego witr.;u
j t"St wartością wu;kszą mt J. rru.rrukc.;ja n p woduJi; obci !CLt: wartości dlo jedności dla
, szystkkh wi~l7...:hotków ,,.,.~u"Tiąll7 ob 1:iru umhm :
1n S y, r~ y. ~ l
• ci
• eB
• ri
-~
Kod aplikacji
l'c&ł,rue j w popr1,1,:dm~h cozi.'b. 1abch. fuukcJa Rt?nder'1J jut w dut.ej mLł:f'lC ooJClf'•
m b,grm-nl1:m kodu aphkacji. Jest jednak kilka innych mitjSt w kod.7.ii:, k•ón:
i'i3-1'6cić uw.,:. Apliłw.'ltj.a l'\l'Or7.)' H'ey ró~ y ·rt<:X. d fY . Jecyd1.lJ~. •ot)' $R:ldCf'
~ ~ ·. na podstawit: in11e;:oncj _K oryShaoer. Pońi:'-37..il f1.mkcja odi;:,owiw
2J Ra j kani? na kl3waaturL~ • di.-cyduje O [)'ID, który hu.di.V bifdzi.1.: 1J,l&\OSO~'311)'
~ pt· ję;:
_,V•,....... Wjłl&sĘłllll"9 •••■ llLCJJ __. ńoda
lil(IOl ~11kłCJ1T~1k
ł
- 1")
- - - ·2.·;
fllkł - ~ar~ _ '3•,
• (~. 2.
r'!rłl ł mk,a ),
, 1 lu.u,,~
Qmawiaji\C pOW)"i:SZ}' l'M. nalcfy zwrócić dit ę na •o~że motna byle po lkOAu
fimkcj~ St? erte er. podaj . ~() p~metr ucl't :'Y1
do odpo\\'i.ednicgo ~ ~
roZ\\ iąmnie ti_ łoby n·ci:,o b:udzteJ ~'YdaJrH:!. ale mmm ceh:m było• .aby furt~ T~
była Jak n J°bardzicj zrozumiała_ Kod funkcJ1 R nderuJ znajd~~ si~ pon~j: Ja '4!-~ •
· d 1CA1>l 1 ac :"Clm -~~ O
ł
r1 otat er1~A1vta.
Get T11; Co G :
OJDŁUATRI)'. twc· er1. ~,1e ,.,. _,....v.:,~
0::i(.lAMa n ...TranspoS, r.s.ii:ade a. >.
li! zerr eOOD-> Słv.idc- • ti .::S łade a . ., l.
Poni~ :s~k pm-,.·odują Ui,I ~~·•t..·1uc wszy Lkich włi1~1wo ~ i o \, iell~n.i • NiektOh 11)\ry
oświc:J lc-.ni3 mogą nie korzy tać ze wszystk I eh pararnc:lrów oś,, it!dr:ma. ale wilm~
je m~,vo. Jnk zw łdc U!iit:Ji., ianie t. ich stałych :n Lt: s.amc ".irtośc1 dl bid~J ram it
jt. t zbyt " ' daj nc:. Zn czenic wano.~c I stałych j ~• do$c oceyw,st •. Do bardziej l:!Jm •
:-xy,ch n Jety pol~ga wanos.t: i oś, kil nia :1..,, tcr1;1adlan~nu uS1itiwiona w ost.atrum on,po-
ncnde t.alt:j o 11 e1Jeni11 7."•ierciodlariet;o oraz w-.pókZ} nml.. u. 1ahiema odpo~ ·ia ~
~artos.ciom opjsanym w rozd2iak 11. Pam i~tajmy. u potęgił "".arto 'ci o •etlenil Z'!,\ icr-
CI dlw'ltgo jest pncdmiotem ogram1.:,_t."11 m ·trukcji 1 :
.. [ rn.O . O;. O
o·, E O. -1 O .
0J0 t ld l 0. 1
oao re o 1o
O l','fCTOO~ 1~ O O
OOO'ł•EC ,! Os ' l Ot . O 2
r 8
I 9': . l).
derl:a Q l
•:!ie, ~ i .
..
U$1i'-'iaJ[l.y s]mde m1 pOOSłilw·e ai.i.;~ ·za naci niętegop 112 ~wnika:
.. l- • ,eOOtl >~~ •.er <!~.S 4d• ' _'St--~ le ·!" el o t'SM«.łef JJ.
Rentkru,emy mod«:l w zi,, ykły !;po.wh:
• G,
ot
eo30·>:S.':!t [n 1 ,( a
e030 *~,l nde-' t o.
Oto kod aplik -Jj Ja],. 7,\ ·kic moz~m.;- ~ pel)'ffltffilO\ • • ;.i.: ,.0,1.n)'ITTI paramctl:tWJli d
li, ·edy wb. c1WiL! LrOZUfl11~ lY ~m;óh d:r.1e.łl!n1.a aplikacji
♦1 Stałe oświdl~i~ nl'lOtoa u.! ta"-1 j ~.tak t."~ę:5•?• j.ek_pio~a. Jc~eli ró~ □biL-kty
cha.r.dm:·ryzuJą s1~ rómymm ,v ~n ośc1am1 OS\\'1ellc111a► mnźna ,fklpo'Wicdnio
usta, r 11:mm1~"1f OŚ\ ielierua..
• rsmit=jt=. mo21i"•os.ć zaimplemenlo"'mlia wielu. rodzajów c,.';wu:ll~-nie 11 ~ ~ym
shwh:17Jc. JL'ld'yn,Y1n ogrooiczenje:m. są ogólne ogrnnLczcnia s.baderów,
Rozdział 25.
cieniowanie kreskówkowe
ra~ \\ ie1c 1 t alb
gł WOJ m ~elem k
'-
nsttul'torow kan rrr.:1ficzn'-'-eh 1.,vto h u
. c-· - 'Z ~· · ~ ffie'AJll' spf2.ęfU
ktÓ'i)ł: Ą~~-~ y ':,..,:Lstyczne .obrazy ~ czas,c i;zrezywi tym. farądok nie, 11,dy ~
• ~ty ' : 7~ey ~ 1'U u..1. .t.uc~ 1! "Yffl~ l a6 C fcł..1y graficzne. ldórt< \YCa,c nie były roio-
re31 I.} 1,:;ZTJ~. ,emowaau: kre-skó. km.\ i; ( ng. carioon 'Nhruimg, Jes.l jednym z ,~rd;tow
'kr.M}' ,1,, • • .zn:1-ffl. z filmów ana~ :-anycti dm d-Z1cci. l)'ln mmziC1k: om rię. nas~
pu.j c Llgadm~ma~
• , ikony 1)"1 a11i sbader · " ' i te . lur do re,11izaeJi z.łożonych aJg-0rytmó
mtn(k11 iQ.'ttnta.
♦ Teoria cicmiow nili kreskó\, k()\\,e o.
♦ [mph."m"nH1cja cic:niow:m;a kn;skówkowego w śhlld rze.
;; J, • \f +(/ • r
3 f-0 .ł IERZC 1
~ o y. l[Rl . JE
OOO,
Ryaunek 25.1..
K~\r;IRfL' ™"'l'
J1nkh 11tllffl' e.
" (, r,.,~
I
- · J. ·.
I
-
'
. .
Kti2dy u.-ksel za"~c,r-.i. sum't dwóch warlosci 0-ś,7,,j~~cnia- Ro-1.miar le~tllJY n,a dC'tydlJ-
j,ąey V.'JH)"'.,. na dokładność po~iczeg61n~fch wai1osc1 - _ wyż~ ro1.c:b:1~lc.zoŚć 10 wi~uj
piróbek "'afl(l'.ki fuokcjj T t;l"3Z, za ·_l~Jąe. _że rendcru;cm}· w1cr.l-cholkL \ve wlfi!Ścm,yl'!b
Slallilt:h tekstury, pc,Lądany c-fok.t osYtJctlcma mo;r.na 'li ygcrtero\..'fiĆ za pomocą na.stępu.
jąc4.-go ,seud-okadu~
~=
ap.3 o x. t. . ~-~
op3 oiO y. 1, ;.i
rv.Rza~ry~KA. , 1rnu· E, s a~ 1•
LfP.Zu I(.;_ .)[PIJ~F")t-; '1 L~'
C = sin(/1 • N} e;~tf2 • N
Ti ~o l)!PU ~ :jkie \\'}-nuga uzj:,;iil mn' CJ~11.;j !lośc1 iruAAJkcj1 w ~ :rie i j~Lru~·i-ą
z;miem bard.1.1~J da.~y Zl.lym. PrLJ·~Jc '\! · rówmeż, sdy n.1łt!~~ ~,ooo..,.~c fim~ej , kcó
1
11 ic: !i.\ łat~ c d l„::t1mp1 mcncuwam ,~ (k)moc-ą pódst.av. O\\')•cl, in trukcJ•. j::!lm.• feruje::
drr. Zak , l~O ru;t"'lą;'. nm ZO~l.a•Y ,,-ylol"7.}' tlJ C W d~kck c1Cml.W.'3ni.J. lu · W•
kow~go.
~nelc 2SA.
' ~ . K ' nttA
ltł~('Z,r~
..
.••"M •()
Shader kreskówkowy - część 2
Rysunek 25.S prl.eds1a~ ia mul ekranu aplika-ej i omówmorn;j ,, tym r, zdz,a le, id3 . na
1
nim obiek1 z :ZiłZm1c·amym C7~ą lin~ą kontwicm. Efel1 konturowam~ opit:ra i~ ró~lłi~
n_a. teksht~ odoie ·i1mi~ nie je-s• jedm:1k m·iązany z os\\·ietlcmcm cen ·-
Efekt kootumv. :mia symuluje kontury obic:ktu w laki spo · b, \\ jaki nary ·owałby Jr.; grar ·
1
Sforąc po~zy rysunc:k ?Jl porumnY~ mo,ż~my i.,.iykorzy:,'Ulc lc.lUi LUJ\i o~niesie-ni ~
zasto~, •~t _aJ~ ,skalamy wektorów jako i11dcks tekstury. którn modu low t-ab)' t~-
it\:Lrę.1crenruJą~. ekstum odnie-sj eni11 oludf0 J by kolor c?.a'lil)' dla ·1oceyn6,Y bUskich
zeru, kolor omty dla wseyslk'ch il!'l_nych \vanoki. Jcd1111ki~ może pojawić ię problem.
J li Uh~orzymy tekstur •• na której wy t~puwatby niewielki CzaJl'l)' obsw miałby on
wi~k zy niijest to potrzebne wpływ na wy:1~1..e poziomy mipmap. Mówiąc inatze§, nie-
które obszary byłyby 7.ocie-rnmom: nic:,god.nie z oczeki,1a•an1arn1. Rozwiąun•em łc~ pro-
blanu jest ręczna konfigura Ja po1.inmó"'' mipmap i pr-✓• pisani~ różnych Wil.g czarnym
obszarom :na rożnych poziomach. D:r.it;kl temu efekt konturowani11 docy,czyłby tylko tych
nie'lcvidkich obszarów. kt6n: milją do!itęp do Yryż,szych poziomów mip. Th.kie podtjkie
eliminuje dute ooszary. gdzie np. tylko jed~n ,,.iee'Zcholck leż, na krawędz,. ~ reszta
poza nitb przez ce., ~fl.!kl kcmlurowanis n.rLciąga~by się na ibyt dufy fragm-.:-nt obsznru.
RY$Unek 25. 7 po,ed:,taw,a nl.1.nc pozmff'I}' map tekstury konłurO\\·ani .
C
L 7
11111D
•
■
I
I
·.!!:_
: _ _!O!!J!!Gf!!V~•~!!!!~~~~•~...
!!!--~muc~!!l!•!!•l~!J,!\1111~-----~-~•!!•!"'!!..______
~
- . .
Implementacja c1en1owan1a
kreskówkowego w alladerze
.s ! l
Jak ~ ~.,, kle. na początku wyprowa~m~ poło~~i . Shadtr kr kó""''.kovry mo-tn 3 \ \ ~
nystać j 11ko uzupełnienie dm.i.•olncJ mneJ techtukt. Na pr~ad. pom2$"1.e wu?~ moma
zasiąpi techn,ik.1 skinni ngu. UZ}'S.kuJąc postać z kreskowkL :r..cikł:Jdi!Jąc oczyv- iśete. łt
aplikacja. siatka itd. odpo~•ied'nio skonfigurow·otłni; do obu lt:dmak.
d · oP.os.A. \o, co
af'os '/. ·O. cl
oPos; z. •.1(1. c2
C,os ... . O. J
\\ r kol ~ny.n wii:rszuodwracaan;- k icnrm:k św1atb. 1:i.k :.1by wek tor był Z'-vrócooy w ])l"l(•
c:twną_ ::rt_mn1r niż
wier2 hulck oka• . n:l 1ępmL!' 0blic7an, iloczyn skalam. t~go ~ rora
i wekilO norrn.:lln ·go. Wynik jest pod ta'li'-I ow~ ,.., :.uto •~ oświetlen i;.:1 rozpraszaj~ c-go,
k(6rą J'}nt."t:howujem we w półiĄ;dnej x pii.:N'~Z~J Li.:k„tu ~. Tek ·tura jes1 JOOJlOW)ll'Ua-
10wa. wi\-C 1tvykorey8,ujem" l)1 łko p1ern ~✓.ą \\'Spót 2ę<l ,,ą.
(lpJ o o . .. -c.5
\\rynik iloozynu s h.uner~o -...duora nl.ł:nnah L'gu 1 \i\ektvra oka 1ocsi1:1jc- 1,api an ~,,re w;pó,1·
r:zęcfnr:j x drug~r;j te ·1ury. 2 IL~~"'~rienic \' la~i"~go puzi mu mip tek. mry ,ldpowiedzi:31M
Jt: rt urząd~m~ . Pan,j~tJ.jmy. le opcruJ~JH~ na te ~,une Jei:Sn ,,; _miaruw j. Tc: ·S1W'8
kontmowanmJe.st ostami ą fa,.., 1cks.tury i modułuj c poprzedme warto." i. Ze wz~tędu rlS
to 1 ?tarto. ~1 !e li ·ą l'ÓWJle ~ro lub Jeden, u 1nwic3j~ one k( r\tow kolor jako cl,,lfll)'
1
ł
. aJpier1r'' ·ol!'riig~roj ~m msdcnie widol.7.l i Ś\\:iilw. ~ 1rzeksz_cal~arm' j1: n1l pot~by
h3den1 Po_fo-:ten1c kni wyk r..eysliłmy JM)rlOwme: w dalsmj t?"~ · i apllkac:ji 1 gdzie pn,c-
btt.m •j~ do h.adcra 1t.~• r;rzh.J pr1:eprow d1.e11ia obliczeń kormarów.
!l.::Lł rEI; Ct,l4 .PoM a CO O. i O • -50 ,O • O Of>~
~'t)ł:a t ri loo' A L ' .. CH~f'Z Hf-O o. ~D3011/ECT~)'.P:ot a ,
DKVECi 3{0 O. O.O. O O),
roD .EC ~3{0.0~. 1 O. O 01 )~.
Jl'ł.i!tr '"'ot-!tl <•
<'• _l'-'4t1er.i:S l~t,;i. loaOGeti tc· Cou,itO J 1000.0 ).
[Bil'j/.2, ! ) · enSi· ~d1:r~ - ,11,
He'!, 1 ~r zS· 1ata "' :".d~, l!'I ~u .,. t'.;] )~d.Z u;
113:,.~tfl ~ird!ISj)C·!i~ ł &~c H~ l~~aera' !1a,: en5tlatler-!': - •
i~r:lzem~-,.Set1ier' !!'>=S ad~rCol s r!nt(O. c1erz5hadera }.
,hk 'i.li1id2:icli 11y w poprLe-doich 11:tzdzia.hłch. kierunek ś.,,,fatłce podaj.e-niy j ko rz«z) , ·54)'
„
i~'Tl.Dl(l'k.i z ktÓl'\."gO p;3da S\l iatlo. ruitomia~L $1,adene odwr:ic.amy go pO 10, aby ornyma
kit.-run~k odi wierzchołka dL1 i.'.lkll .
00 , t.CTCfl! ·ie :.a 'il(O li', LIJ . O o~. O O).
Teraz, pr«kiIZUijem · do · rnuk:~ stałe. \'V n sz: m prr.)tpadku k,enrnt":k _'-i.ii,· i~lleqi 11 ci~
:unitoia się~ więc oblicz.·:nlic i pro.--s.yłamc prz,ek5,1:U1Jcont! ro we tora Ś-Vll lhL w ka~deJ
ramce je:st m:lło oiuymaloc. Jc~I i kod bt;d1j dl nM c3łkowici j sn '. mo2emy ;..a mn1i:o
ZOfl~maliz-0\ii.'ać:
Ustawianie tekstur jest dość %foton, o~ją, której, nic trz~ W)'konyw11ć w k
ramc~. w tym przykładzie robię 10 wyłączrue dla przeJr.eystołc;1 kodu: ~j
m ..Orzad2~teo30 >Set ell.tur,cD. _~lekst.1,1raK~es CJIMt );
- lilłl.-iadzeri,eOlO->SetTe,;( re< 1. _wt sturJ11<1•a·-.iedz1) •
lI tawiill.Ilie $Ianów faz t~kstury t; ramkę mo~ być k~n•~zne ie wzgJędo 00 dOść _.
wielką liczbę saa.oów, klólle ~$~je i _odtwaa.a klasa czcionki W)'koreyśtyv.•a:na"' aJ)lit'~
do \\'YPffiwa~ia inronnatj1 o Ila.bi~ mmek.~~anych 1;'B sc~dę. w cz.asie a(j1
maliZO\\lanią tCSf frugmenr lmdu nalct.y pannęrać o Jego pown\ZBl\.lu :t klas'\ Q.C-j ~ -
0
W kolejnych wicrs~cb usta,vimny teks.turę r.a~.. ~~y odPo~e~nio obcinałft w~~ d
z.a..ktdiu od o do 1 . Ma ło _en~_za.ró~o przy Clemowi~rn, Jak 1 -...~t.zaniu kOJ)t1,1rń'lll~
gdyt nie chcemy obecnotc1 "'rtośc.t spoza tego ~,atu. •
Ponadto~ dornyślnie pierws~ tek.mira moduluje: kołor 1o:zpro~~ a dru~ jest ""''}'~
Ponwze.wie~ u~qua1ą ~g_ą tek ~ ~ ~ e i ustav.:1en1e ope.r.ac1_1 lk.oforu łka kolor
modulacj1 oraz fil~ mrp na ~ltr h~J~"""Y·. 1hr hm~ry ułanv1a ~ . pn.ejść w mi .
sawb. w kłól)'ch wrnrzchołki zna;thuą się ml gra.n wy konturu podc:zas an u113cji, q.
i(Jr~iłd:!ell 1e03D-::.Set Textt,r-eS t.ageS a e (O. D3OTSS_~ESSU. DJOTADOR SS_Clłi.liP} ~
-~Urz~dzen1e039 >SetTe.xture5t~eState( • DJ0 SS_ADORESSU. OOOTAOORESS_CLAA~.
- ~r.!ad;roo'feooo-~~t Te&tu eS ageS ate ( , 030T-SS_tol.OROP. OOOTOPJ()OOLATE) .
_:,,,v lildlt!tl1e030-~S@t @,:tureS ageStaten. 030TSS_ PFlLTER. 00.0 ():F_LH,EA.~).
Modyfikacja tekstur 1
Modyfikacja shadera
z teduJ;ki. jak,i \\1ykc~r1.y~r11Jc shad.:r kreskowkowy ko~·sta wiele inny<:h sfmdrz,~.
Jdłi s:iegmcmy do pr-.J;t:glą.1.farki cfcktt\w nVidia EJTi:d Browser, zn3jdzienry wie1e sha-
dero\\'. k~ ,vy.korzptują u:ksnrr • oo kodo\\ama bardz~~i -.,fo:>.on)•ch funkcja. Na Prz)'•
·hd. ~f(kl membran) polt!l:!_.L nH wykor,ystamu (aktu. że niekt ,re m;i.cerii!ly są ba.rdzitj
pm:.-zroczysL,;~gdy p~r.l!,1 ~l na n i.; "prrn;@, a nh: pod Jak im; kątem. W anośt j loczynu
w1a.rn{"gCJi wcł,Jora oka i ,vckll ,riJ nnrru;;i lncgn jest ,, ykor,ystaoo jako indeks do 'l i!~lur
·ynn.1Jujących róźn~ m:1tr.:.ria~ •. Inne ,efekty ynrnl~LJ::it Jll."S7J;7.C tJard;.riej złożone d:z,alarua
pormędzy Wt:kto.ram~ ,
Podsumow,anie
il\\'eJ. jeś]j
nigdy njc bt;d2ie1ny pisać gier c::z) aphki.,,Ji "'Ykorzystuj~1't_li s~I ~-~ów-
.k.O\li)'. wan(I iapttmiętac pomy~I przedsLa~,·iune ,.., 1ym rozdzu11c. W1efe fimkcJ• ~ub
redlnik kt6re fflOllyby b~ zaimplementowane z wykorzy11aniem illSll\lkcji Ji...._
-:-t...\ ...... .:,.. __._.. zakodowaĆ' w teksturze. Czasem bywa tak. te to7"11ri•--·'"~.
Q •wn;tllli ....~■-., IIIVAA- • I. ' • 1..J. - • • ~ i , e z lek
$iUl1I jcsl bardziej elaslY,CZfte, ie zamreśctłcm w,~..._szc:J hvsc1 pnykladów tego •
pc;,nicwat wszysdde op~Y się na tym · _mym pods~wowyn, pomył.le G d y ~-
• IUl'I\ --..a-i.ale zaAn-Anicnia ~tan~ stę dla nas Jasne, za.s.tosowanic ith w . •
wlOOC w „7 ... ~ " " ~ .. stan. od . d h uv1yc1i
efddac:h b(dzic pol1!pło W)'ll\.cznie na W)łłfl.017.)~.- iu_ ~ wte_. me funkej1 rna1
tycmyeh w rym samym podsta"•oy,-ym sb11dcrze. • kod.zn: r.tpbkac11 . 1:nia.
P~tawiooe pomysły nadają się równie.t. do "'rkorzy ~ra w _pi~I sb:1dt.-rach. Wiele
z ieehnik wykoriystuJących pix~l sbadery 11ó~1~1; t korzy~Jc ltk~ry jako tablice
_.,_,
VWUICSłfflNl.
w niektónmh
..,-
pn)o-psdkach
.
wmtoi:.e1 U:kseh z Jcdlłł:J tekstury są wan~ ---
. .d, A i.... .
--'łl01)
~ i punkiem odmesicrtia ~la mneJ _rę; ...s.tury.. ~"~ hm .;~osowaA1B •-=kstur w JIUttL
shadl'rach zajmł się dokładmc:J trakc1 on,awmn1 t:ec 111·1"' p1~..:I s,ludi:,a w dali,;l,r,:J
części ksi~i.
1
koni~. " 'atto zwrodć uwogę ntt znaVw nsov,il~c te hniki •. ~ lÓJ<C pojawiaj\ i n h01y•
.lOOCiC'. a dzifk.i którym pae<fs,Jwrr;,nc zaga_dD~m~ mogą hyc Jesze.ze. bard,,jc:j Przyda~.
Pm~podobnie w niedal •ku: · ~rL złoś 1. zetkme:m . sn: :,.. ma~a';l'J prus.un1ęcia_ T ~
stury •~ pn~uwaj poł<>funia wLen:cholkó": w opfil'Cld o \~artoscJ U:k~li. (hi · tem1,1
mo2:Da t\\·orzyć nom:. interesujące sb_a~ery.1ak op. m~luJące ~szary Reziec Wp~
wadzenie t~b tur o, ięk j dokm'!"ose~może Hd.oskonaht !zysk iw ane efekty, To j1:dJ1
jesz~ pm.-d nmmi. \\' mię<iz}'czasf poz1,1-·ofę sołm: n3 krót ·,c pod umowan ic rowzt:llJu·
• TekscW)' mogą h , c nie ~yłko -do tek turowanm obiektu. ale- ró ni.ez.
do pruicl10\\: "" ania wJJtości złożony h funk,.;ji. Uri ·ki 1emu s.tat1ow i· , 0111:
pot,;tn n:if'lędzie ~•_po~~cxcniu z odpo\loit.-dnnn shad~n:m I stanami fal:}• tekstucy.
• Tek rt11)' dwu ~')'m1ar<.n ve m gą k do\\'OC funkqc dwó łl t.m i~nnych •
.a j cdnowymja·rowc - funkcje jednej i.micnncJ tv rut tc;pnym rnzdzialc
do'Al·iem}~ 1ę„ jak ,v... kor2f.Uc lek ·Lury trójwynu~,1rowe.
• Ciimmw·anie 1klt~kó'l.1vkowe bazuje m1. f:.l ·,cie. ie cicn1owantl'. obick16' · w kres'ków~
nre j es( płynn~. Mo.ma 7.ah:m wykof'2)'~•a · I ·k · Lm, • .._,. kIór~J 1..1 koduj em
nie.:; iąg,łości W) ·tfipując ,\ pr xr.: ·i~ ci "'niowttnia \:V.!>pułrz.;dnt;! tek Lill)'
wykor:zy t uJą ten s.am iloczyn ka lamy, 7 kl<lrym J:ctl..n~lism) I\; v.· r,,. k.ł)'ITI
Q.S.w icdeifflj III mzpra zająi;ym ,
♦ Koniory obiektu ą rendernwan~ .r w_ korzysum iem 1ckscuT) . k1 r..1 koduje
cmme ,1,,•a11ośei ,naw pólr~~dn~ch u:kstury hli kich :leni. ianow1 to tabli~
odn14."Sienia dlil iloczynu k:dameg,<• "'''cktora oka i \\ d·..llmt nonnailne,tto.
• Tł: tum kootWllJ kod111jt: kr:i.w'tdzlc na kai.dvrn fX"mmic mir) w 1n1 ~· po b. DZ!~
ltm_u e:c~ k n1Urow1UUa jest \, 1doczny j t!d}'Dll' db 1y4,.:h \\ ier7 ·hnlkó'l.\'. kton; fuktyczmc
znaJdty; srę na krnw4r-dzi obid;lu i kL6re mw,Mdo"'•~'J' do,,.) lSJ eh poziomÓ\"" mip
• Zastosowanit: rÓxfl\Ych tekstur daje różne efi:kLy kor·,c \\ ..::.
Warto pooksp ·ryrncnlo\vać ! -
• Pod •~-."' Y h:ore1ycz~t,; omawinni,:j tec hnikt . '1. takie s;,mc Jak poru tawy innych
•~hntk ii „ kor:ry EUJ c eh teks ury jak tabli ' t..: odnit: i niL. ~- an po. ·ię ie
~hMr.rf1t cza u ?9 pr.lCjrzcn i i rmych h:ch nik 1 70)')( man 1c . ię z~ sposobami ich
m, pl!.!ment CJI po to, □by priekonać sii;.. jnk du.t..: mo'-"'"''ll"'ici daje tcdu;ika
p d ł wo,,a
2J: 11c Już sz~ ie więl(5i
,1, 1 re.ar istycznycli i:fcfnow g,rar. ki 30 •
dłicftniu obicklów na odpo1. icdnfo du1.ą iJo: ć wrerzc,holkó,v wykorrt::= · ~ ~po-
~;dl Jl'()di:li o -" ri~tk-..ii.a lub lek tur o 'tA: ·s 'ej w.icł~i. Daty.:-'bc~ ~ ak ~
: , mó,vdliśmy o odbiciach. Jr; h n zcj~z. i't wokół i4:bi~, lo z pc\\'1'!=r n-'=--~tt
LI • .... d ' -.Jb"" . 4
, ~ L~l5.2
\flJ, rm fali. Jl:~ _P m10 • uu IJ Ją_ !\w1atto bardziej niz inni:. 0o4an~ odbit
00
rrzNU)11ot~\, wprl,),j illłza. dodsGt~"'Y ~)tm•811i' 1 pn~ oduje. 1,ę ich giąd Jest hrdl.ic"
·too. do ~ o k i _RolA:hrał ten om ""'' ta ~ienia odbie, i :młenmnia wiat1!
i mwitra. nasręi, IJ te c-,~J::
Mapowanie środowiskowe
i maPY sześcienne
1
M pD\\ 111(: ~odowm 1-i:('lwc jest rm.l1'BJcm m:,pow ui a td.: tu • którego ~łownym ceh:m
je . zobra7iowan1~ wph'\-. ra\.::taJąccgo ~rodowi ka na ,, ·gl'l d obiek1hw. ej ~ j
i: fckt,c.'fll rodow1sko1i.-. . m ><t L'tClb ie i . J ·duak n.a konl!u lego rozdzialu opowiem r6wnicż
o mn ·eh ef~k1a h I s.t111eJ i: Yi. iclc cyp,6" map s.rodciwJsko~\ eh. j ~ l n:1Jpopul:1mu:j Zq,
1 na:jp1ost ~ w ut)·ciuJi.=st m p. s:r~śi.:itnnn.
Jd i chrxm. mówi~ o rri~p n _niu otac:t..ij~~t:go roclowi~:1 n::t obi~kL. musimy poi7.113ć
sposób~ w ji1ki to ~rodnw1:il,,:,, om.ze b;-6 repn:;,cntm\ a.ni:; K ooc:pcJ'1 rn.ap ~c:kńny _h
polep n tym, Jx rcpr.,;zcmuj mu~ ~rodow1~ko w pona i zi; ci nu.\\ 1':tórym z taJe
u 1csU"1.onr je<lcn lub 'f" 1,,:<:cj obPkuScw znaJduj4 rcll si · na „cenie. \V pmJ.;.lJC , mapa
5.Zefictrona jt~ pecj:!łnym bi~kk1n 1eksLUitlWym Dii'CIC'L'<. "-.~ó · rt:pNZCntLJjC kamą 1~
~an ~cianu w tomi 11! 0tld7. icln •j prm ic ,.chm h:: ·. Im)\ tuk j.ik :lO triło to wt~1ant
113 t)'flłJI u 26. I.
.....
+V
"'~
I ~1 Powllt....... ł ~ o "'°"""',~,
-X +Z +X -Z
~J
-Y
,,.,.AJ1'9..d rekS„ 1n.•. któn; istnieją_ po to. by moźh wy był dost1cp dn lej tckmury rno.bla
•
wi>fl""' ...'r... nt: ·- ~ ·1· ·1· nAlliP9,...rl • •.••Il-~
tn'.>1\\ymtill'O\Vil: w d io10r)", J~ 1 pomy:s ISZ O WSvvD +ni:J l!Li.· iutucy jak o tJfu.
A . . . _, _
1
Tek mura mapy :reścienncj rcprezentow&n..'l J~s•_ pr~z i.n1crfujs rn, r_~t30CubeTe:. re6.
Jak zoooć:i'. z. dzięki fu nkcjom 030 tadowamc.: mapy zclcienneJ Jest tak pro le j k
ł do,vaniie ż!irykkj teksH11ry. aJleps;zym sµ sob .·m utworo.:n ia takiej ma~v jes1 skoriy-
.minje z młrĄ-dzia DireclX Texture Tool. nrz~ic .t ~zwala na z _Jadt,w~i~ 'ażdej
ze ścian PMP)' m-ścumneJ z osobnego obrazu 1 zapls.aru,.;. komplt.!tm.:.J map Jako pliku
.dd . Jdl · b d7Jie.sz ,vykorzystywać " ·łącznie tatyczne mapy ';r,C cienne i do ich lsd~
wania ui'}jesz bibliotek D DX, mgd nie będztec z mu ia~ p07nawać 7.all\\' aRSO\.\anYth
aspefdów związooych z mapą w:.śd~nną. Berlzi •--1. j edn(łk mu ·itd je pozna . JC.S h zec~-z
skorzysta · z dyn:imicznych map S7(~cienn ·eh
Dynamiczna modyfikacja
1
map sześciennych
1
'Wyobraź ·o 1e. ✓t: grasz"" ,,·~ścigi ~amochodowe i pn:eJczd.1.~-;? pr1i::z tunel. JeślL mnel
njgdy b)' st ni~ 2Jlntt::niat mógłby· utworzyć rnnp'-:' :-..1~~icnną tegn h.Jnclu, którą WCZ)tat•
b na f)«ząlku gry i poLCm cały czas z m~j kor') sta'. Diiat:mre taki~ d~łob · pr1.y1, ll1ty
cfdet odbijania ię · ·ian tunelu nn po" i~rzchni amocho lu .., s11uacj r. k1ed pr-zez tunel
pn:ej~żd7..itlby tylko twój srunochod. A kJcdy będzie :t m1Jal tnuy ~iazd'! \ll tym m1q tu
1. pon1ocą pr?.ychodzą d) amiczrn.: map}' .szcsc1cnm:.
\li,'tli.iOf{Q """(J.
..,..rillc 26.3.
Odbk_flt Ił/I ""1/}r Wlłll«~
l#liłLKY ~
.uckit,v,(l ~
Dla danego wektora oka P""i~ świata i wddora no~aln~o-pn~ni wiała we lor-
odbicy :ita00\\1i wł c:iw~ wspó~dną te~s.ru~ ~a ma~1e szegcJc_nneJ. P'otnebujl"&?. rov; _
IWllff. ikt · 'JIJ rozwliqz:miem ~ i e bć~średm • praecnv~ do mego wektor oświetJema.
mając jako dane nonualną wte~hotk.a m .wckr r oka. W Ld~lnym przypadku, równanie
to powinno ,vykor-lYSit.Y"'. t.1kie opera.eJt:. które :n 1e umow1łyby znacznego obciąteoi
jednostl..'1 shildera. jak np. ifoczyn kalamy. Poni~ ?l: równ me p"Clnia te"-. magam·
. wla.śc iwy wektor odbicia:
a jego wyniki m je~m
R E-2 (F., fJ
nri}'CJ'I roroziafach ksląiki wektor o a o:zt1acza &~ e 'ii' ktor zv.·rócon.)' oo 11-
~ Ck> oka. Ta~ orientacja m ~a sens po:yi'Jadku l)Ofóv.'nywanla ~-ektora z nor.
marną. Tym r.a.z.em \\-ektor oka r'Ozumlany ,Jest jako ,.-..-e to sk,erov.·.an~ od oka do lfi"!erz-
choJka. co Jest bard rej i ntu cyjne w rzypooku generowania współrzędnej teks ry
maJ:ly sześc łłt1nej.
Mata refleksja . ..
OstaU11e baaanJa ~'Yk,a1Zafy, ze większość studentów unawersyt tó v myśli, że ludzie widzą ttzię, i
em towamu pev.-nego rodzaju promlen I ze s 01ch oczu. Oplsany w dalszej części algorytm wydaje
s być J:)Otwle ~ nrem tych domys ~ , Jedna1< Jest to c~o ,.-!ta n 1el)(aw-da. tlzlmy odbicla. ~l"l e-
wat ś a o pada na pow, rzchnie • OtlbJJa się od nie1, trafi;.iJąc do naszych oczu. Przed$ta , ,one
argo')ltfny są poprawne, Poniewa2 dokom.i emy anahzy zjawiska, tworząc •ektor. któ,Y rrecrt• ·
stym śwle~e Pfre(;hoaz1łby p,-zez nas.ze oczy.
26 · 'X'l~i prl~d La wwn ~• OU'l)liUllil~ -..~,e.ktLlJ cwfh·c Wektor tro J..CSI \l,,~a-
· lij LJID..'11
1', ~ w pófr-Ą'1ł ną rte · s,tlr) na llhtpli: :urcsc 1,cnaeJ. zakLJ(lij~ że: -.~~k">f)' wi:j ~ W\ •c: ~
ptlcSłrZrni 11i i_:1'a 1 ooo :,.normal i,w\li .une:. \\'i ~j 1\'\ 1a.1.anych z nim szcz.c:ga ó,-:
·~ ię w monteil ie :u1al izy kodu !Shi.Ltler-.J..
~k~ feefrakcjt - N2tj lal \J,i . ~j TllOl!!'ń'l?,,' Jt: .l-ONlCZ„ 1 ~dy -~amitmr ntJ b!'7li:-gU J ZIOlil
I ~itmy 00:Sr:fWOVta.-Ć ty~ pływaJ.tC~ pod lX)li itrzohn-1 - iVody. )-lU CJ II Ul~lł w ~al.J
J)l'Ztihu\MICHI n3 t)'Wl'lku 26.(,
\\'•~~ ry~ ~ jakb_ wp~ ~.pr.t.ed Tobą. ~z.;}S ga, 'Ił!-'_ rle
.ll1~jdllW3LiJ :;I · rut Z}~ L"
stoścJ J . ~rra \ HIOi.J1~innyn,11 ]Xlło2,c;niu: Dz1CJ~ s1~ ~ p01u~ $."'\11a'llo odbite
'!1 Qd_~~)
Zlłart:IUJt su: w mort'lt>1..C~i: pn hod,c;-111 pr~ m»11c,;: wód. • pow1e't ~- [)(>datk o.
------··
~Jwtoda
nag,,o,;k>' " ~
l~ ~ lr.m
Skrócenie wektora normalnego nie odwraca ·w ~fck ie k1enmku wcktoi odbicia. R)'Sł.l
nek 26.7 j~st laki am jak ry. 1,mck 26.5. Jedook 1 ·ra:r. wektor norm:alny mstal pnrs i-
Jowan . Jak \\~dzjsz. wek-tor :,-111lannmu1 m:i t~n sam 1,,,Lemn..:k co w ktor oka. Jestjic
trochę ~i ~y.
Rnam k 2-6.7 •
.łprnlrynr(lejt1
::ja'lłlisła :nlomunro
.m mltJ
Z mak malyczncgo punktu \ idz~llia ł two 7.'4łU\'\'ilZ)'Ć. ż~ Jeśli skróc-iHb ' ITT}' 'ik. • to~
normalny do zera. wektor załamania byłby taki sam j lłk \\:~ktor oka. Gdy będzl P
pnykfadowy kod, pock.<;p(cyrncmtuj z różnym_1 wrutoscianu !\tałt!j za.łnnumi11 Zau\,'llŻ)!Sl
wtedy. ie \ ięk ze wru1.ośc1 tafej (bliskfo I.O) puwodują powst nie CZ go.s ooJdm pO--
1
1 a Ul 11Sta\'i 1::1 po.cy·c, , . ł oLt:~;G Jił! d!J'1:µ:z y dn _i~s.o ;. i:fi tów de form· · · pl7bJ•
u · • dl poprxcdn ich ro2<lz1:.1t;Jch · fi! 1 · odb-1c1 , z.,.I m:nlll.il dlin,aj~ 1. ~o · oł ~
mnym tft: ,; m, · ary gi:ne-rllJrt odpowcL'iln1c: po i-J • wic:r.ldt~ v. 1 n r:mnlni•ch..
ilr C
1l, cl
'il. r-2
' ~nc- gi;: · · lin ii ptltl,.,~,t.'l.ł,ca da przl~Lr~rn ~\\'W3 Zill'Ó\11. oo pozy J'= •..,,,,: Fle'h.ollow 1
· · ith Wit. ry nonnuh i: . pr'2' i ,cu n as~oru: lOSI..Jć utyti: w ro~nnJ1i~1 LJ(lb ciai P~
st1'1eru Ś'M, :13, RO.::wi'.li:Jl.:rn . 11,, ńt1!''1 ~rtj~ ·,t pokpJąoi: aa 7.llilk~ iu ;;o\\',: .
hlra odb" i11 przes.1neni obi-eklu I dnp1uo pok m pi.i· : ,t.,J ;eau: g,o do P~ tnł:m
· i. la. Jdli rui.dei w lm nywatb)r j •<lynu:: i,bhc~mia od i i:a. t 11: ~c-J~i~ fob!
~teJi=-dn. htb <t.Jw1i: m truk<:Jr:, ~ ) on}'\--1, llt:' p;tti rruuc pe,Jej_ś:icJ s-t \\r~-d:JJ-
1
n· ·~"Jl_(. gdy obli'l.:l,ilJJt; :· .zariu'"-, o wl!'kt(J~ bcci· , jak 1 ;oil mam·1• pcimt:'!i'I rm, a
pr7,~tszr Jł:Sl t~·lko 1117.. zan11MI pr...:;ck5z.t.ak:Jfl i~ dv, h ",-niku eh we
, ,0, c
I ,,iJ c:i
I --o t"6
I
dJ)3 r .• v3. t4
rl y ,;3, c5
rl . 1/.l. c
l{ocl ~en obli ~·c~or w ~~nlcu _od oka do wierzcholb w przestrzeni ~ia
SCtpme ~o norm J7.UJ~. Pa11u~CSJ, ie p l Io wektor pncmwny do wektora 0d • la
tł k:i. · 'OT"l}'St)'W,ancs!D W poprz:c:dnich rozdziałach. Znormahzo"""3fl,~
tac.nim \\')'nt.igaDym elementem w równaniu odbicia.:
1
v.;
,n«:)'1111L,&
•Qf
sub • rO i . t6
dp3 rl ", 2. r2
rsq r2 "• rl.
1 r-2. rZ. rl.w
Obhcz.cnfo zał.amania. ą ()Oli"- larZallc. ale k.1"1Z "'' korzyst~ wana J~ t skrócon)' "
num, In~ "'ieri:cholka W)'if'l Ik oolic~ ri lO ·tt1j ;,,~pis n}· w drug~m ljC$.til\vit wspMr!ęci-
ny _h rcksmry. l rs.1.awienia n w c~kstury ,krd~aJą„ w Jiac "im lopniu Ce- dwa tf fy
1
pn.enikaJą~
r r2. r.
d1d rJ r3. rJ
.(I QT Jl. l. • -rz. r:2
Aplikacja
~~Mi'a!m p.rzykradnw. pl i ·~1C'ji.! \'a 1k{ll?}',mlje "W1C"21!' i11tL'JCs:Uj~)•i=h ~ " ... -_"'"'""'
I
_l.aJ•)·cb poza WSCH •=-u·1__i~ funkcji ·enoe UJ , pll"ZC'(iwicńsrn ie: do p~ hdóu z po-
prudnicli ~diliów. pn:ll!11o, ~an~ pomźcJ od wykorzyslltj~ ~ sz i,:,l'lik Ziru\\'llO
w ttksllllr(~a.niu śrooowi),kfl. jak \' efe to.dl odtii("m m lru-11~ill, Jak ló SI~ odbyw ,
z.o t)1S.i 2'JI c-l~~ i lę.;. 0-mów!onc- i.o:sum.ą wttlniej fragm.c111y kodu. a .aJo prog.taaln'-•
maj.ml~ na do.ląc:r.on„ru n„RQM-i~.
~ · f ~ C}' t&::tiruujl\ forrrraL w~hQłkc~,, i ~ n e z m[r i de-kłam -;,i VI.' rihi i....
i:tc odbi" y~ (1, t)TJ11 przypadku jest to · fi:r..i) OIZf:Jltljemy fumu'.L.1 U RZOO)E _SIA l
dm rrer.idćn:llWmia sześcimm ·rodo-wis~s ko · m)1 z (ITTllStu IER2 E_
S . !'mały minimat'nJe, moWl OCI.) 'ł,i~ic d v.•i~ocj try Ił! _d
np. " ~n~~c-
1
1.Cbtt11;1 dl p,rllS\ych u:kstur htb olmy 'WicrachCMtć'i-'i . format ~ mi:~hol~ow :mwtk• nii:
--
d
. D? la!'&Cja{ l -
ll3 'SD STRf.Aił'ł( G) .
~O-r.łEGtoo:B' _PC5IH ,.reo•IS FtOA 3).
O~M'SD: tG(OOD'IStlE_~i1'lł.l'AJ... (HOAT:'.tl-.
OJ['J'-'$0... I ( ~
_ DDe ara~JaR ~( -
{
~ 'SO SfF!EA'łtO).
- rn--
o3D'lłSD REG iSlJE POS n r t
roDi'SO_EN U
}.
Poojżs7-9 mewidka~ furnktji PoZa1 1cJa.,,~r11u oopowiJ«ia :ca ladowańi~ t ~• ~
sze knncj. J:3k ZOO.aa.}'57. pó~nkj, łii.tłowimii; mapy jcs~ Eak amo łil't'We jak ładowan.lt'
7.1.ryldej t1..~mu.ry. \V rzeczywistości c,aJy pods wM\ . kod le'k LUT)' jl":$( L-aki sam.
B!D.. • I tkKJ" .:C~il\1'• Pol-~ ~Il CJ m LI{ J
r , etm ~~,~~r.?.ein'~-
.- \\ ~d1~\\ ~p.Ckłs · •
..,Ta ~:.-~r Sz scH)
Kn.lej~ frngtl'lr;nt kodu j~t funktj ink:juj cą ~-- c:iilll środnwi~ka )guruJ5 o
tworzy bufor wierzchołków oraz eścian, ltóry 1:J\'tł.t. 1e ,...,1,·!;rorż)is;tany do oorysov. ~
śmdowislra, Povititti.fflcs poświęcić chwitę na dopaso\.i.·ank: wi dkoś.ei s.2:eśda_mJ ~ -
do rozmfarn ahilkru. Na pr.q~klad. jdl i s:zcl fan btdzfo znac-1J.\i.:O ~'i~k'SZ)' od obLt~
1la k.Eó.rym chie:-i-Z ~nvować zja\\ isko odbi ca~zjDwitt..kCJ co mote 111i,e- b)1 Ć rał: ~'1Qmc.
1
jakby~ 1c:go QIC?'.tkiw t \Vtdzi i "\h·ię • .-:e z odbiciem nit: ma \\ iele prn ~ .
ZabJi:lt~jm)' tel.'IIZ
~of,rue~rdyn~""'"
• -irmr(lł}' ~u: ~ I dl„ l& poey(;Jl , \ V ~ i •~
bu.,:?; J : ; :wtii=nimć, ti1lc. wi,ę-c s;a.ywnc 1.ch prn)1th11,!ll,~itc nic j: ~
~
ro~~1i=:m~
trr. ie • srzl?(JfC !::Wt, csm ) ~~ . 0
_ 4. S. 6 1, O. , 1. . J. 5. B. 2. ó, ~ )~
f ~f(Sł\tl l )).
obk rekstLuy tak, Jby , ~ eywi-Jly m b:, ~ teksturę nmpy ~ekiennej . MU'CIQ
\\lll}'
il! lJadnm)• d, cfc~. oba t)tdą wyk:Qnystywać tę sam trumr ·~
. ri~M1 l?030 .:-Set. r t uratO, _ Tek.s t l)r'a'S:re-~c t.
:111.!rz dt.ef,1e001J..:-SetT ..; re(l , _wTekst raS.resc.J. .
nic koofigum1, ~· są 5,IUW}' po57aególI1ycb az ld:.Slull)' w ren spooob. aby (»ł.'l\1,-'.Sr.ł!
tek l\ln'.I b~ \l.')4:0Tl„ tana bez modyfik:u;j1. z:-yli np. bez koloru rn1.pm7,ani tkimeg-0
w ~:ólt: n~ wykw..: ·cujemy ,. Drugai te tura jes.t nutmnja t p z,t:■ 1.toc:łl: ta. a jej l)Fa:•
1'.IÓC'Z)'ŚtltŚC okrdta_ 'i-vartośt lk:mmu alfu wspókzynnikil tek t~rry. 3kic ro-związani~ pozv,rafa
na n:plowani stopnia prz zroceyslości ob1ck1u. \?il naSz. 1ll przy kładzi~ -...·sp6kZ)i rm1
ti:ks1ury doorru1y j t 1 aby s1wor1.y wtlŻenre. że obiekt Jest b:3rd7.Jtcj pr~2roczys1 ,
n~ odmj:ijt\c)... a ry 1.mku 26.1O przcds.L:lwiono H:fY$l 11nt ~ fdny dl II ró:".m h ~ . ,
\ pó:f~nLka tck~ury,
Anunlk 26..10.
1:frhy .rltJ.ro~ "Rm
rM.N)'(ń ł\ml:t).tC'~
u,spiJI. ·1rnika
/J"~=}'Ila$cr
~. .... .b-m\ oii: ro7..p(l'C: niemy ud zcsdanu 00.iDWiska. roni1s~ , ___..............- ' ........
111,GfUl'o'!., - • . .,.L.. - . · ... 1... , -·;, !\UU U."IUIIWB [IJOłu.,..~
~ l)lSl~prue I~ ~J~ s~:tm1 J~ ~ - m'-ne PlS~ _tro)k_t~w. W kodz~ oą 1 jm):
\\~~nilillf.! m" !e Jest .to jedna _z ooJhardzit.t 'W)~dojnyćh ~rs.ii~ jedrt:IX mew)fklu~
ac hpjeJ b)ffflD usiaw1ć bufor mdeksów j ako listę. lló-j . tów i "-Y"'o1 ć Ora LI,.
p,,1 i 1 ·~ tył~ raz Ch~,;. ~r'l · to 1ylk~ ac:cyć. ż~ opt ~lh.!1cj jd'!'i:go
~ r u kodu f[u:,;r.c prowad~ć efo, ,l)O&OfS"L~nLa wydajności w da:1 1i;j c:zę i apliktJC.j;.
wp&S.1-)rffl pros-tym p~ykktdZlę nL~ J Eto tak iSU)LTII!, l!I,: być m()te 1 . . ~ poeksp?~
il)tnecitowa.ć z ffiŻJ:l)"mi wersjami k du
~ ł. udlen ~ •~• r"..~ •Stkl J(! r (
- ~.Md.Zen ->5etS '"t=-a~~--c.ern . .ooh.
s J )].
e(JJO->'Set I )'.:IJ'::; ( ):
~D-::iłr.a111Tnde~ (030? TR P. Il. 6. O. 8).
· ,i.:OJO :.Oci'111lnJt'.(t11Pr1 1· ,-.. r.:eroo? ~TP. o. e. a. 2~.
ClPflle030 ...;,{)ra"lriOC·;,,f'/JPrt t""L.'!1'(030PT_ Si iP. O. 8. P, 2).
Gdy .marny jui wefinfowaoe wszystkie . tale, rn~D}Y v.ry !ał j,I! 00 ~lu.deq 1 v.
JOW9Ć obi~k• ~~ stanc:tłlnioW)' spo&6b. Tetstwy zo~ly ~C:t'ilJK)\J,'filif· o . a ~ 'Jfe~ Cjr
~ r-z-41dzemeOOO·>Set t e~ ~derturistant ta. ~Ol a . • l.
- Jrta ełlleOJD•~V<! t> ~r(.Ms. ~ (9. ~ - l).
!PiUr"' 1Hf.ił!nl e-02 >set 4!r.t eł, Shlllle rC.onStónt ( o- .&Za. l ~ n1~ . H:
r
Aoal~}ll. kodu aplikacji dobi~"gła korka. · a rysunku 2h. l l zosrala pll'2eds1a.wio~~ dna.-
łając~ apl i.k..i.cjlł ckincui.s•rująci e:fekry ,,dhicia i 2.J.tamill1 ia ~w ialta.
lbsunek 28.11
ilplf!ar;a odhtt:1t1
~ :znlmnmua ł,,,,1afla
Pod•mowanie
Wtym rozdz:i le bar1h~a śzyhko I sk~tmN,~ pn:,c<lslm jłem ,v:i~lr; nowych zu.ga:druc,l. 11:
ia~wtem 1iJ.)'C2t.'.!fJ!)Ującego O()ISL! mterli.-j Il mapy SZl.!~~j„ półnil!WtlŻ Jl'5A tQ bZ~ll· n)lAlll(
~ j~ iMe ~~dnk-n,a opi~•mn~ wtz.dnit;j. ·temcrne , kti;n;:mu ~wi~ilcm
v. c-j U\\rilgi. byl1:1 'lcki1ura dynamn.:ł'.n(I. Pov.•roc do mi;:J w moffli'.-mciic omaii,viooi:a nm-
ÓB.OK'alllił do r~k lmy.
filnym DM!.')"lll gadnit::nii.:m j ~S4 mat.;m tyka ,osow~ma pcdc-z:is obi i..:zco(:il oc'lb1c ~ zał -
~ SULmłcm się 1t1i,· !i~lklc wz"rv moi.li"i~ do ·mdmi: zobrm:.(Hv::1c ,,. c1 f) unków4
jtd1111k niC"które d7„i l a~ f~ w,jąż mo~ by oi1!"Y01.llfflliih:·. J li cłtcesz, (11;('1:iJC'Sz us1~ t
z Gła1,dric:m i kartk p p,eru i spróho" a~ rozryoow sobie O.f'll(N iane wl!k!OI)'._Gd ' l)'ł~~
sam 6ooj1.~z wypro,1r łld:,j.; prA."Cl.slłl" i one "" :ery, w~•!i1ko powinno tll : tę bęid7.1CJ
llórultli:1!~ . .Podsunu1jmy zatem b3rdz1i::j intćn:Sując · i •· ~nicnir.1 przt:cl ta,. .'1Qlllt w 11iYI
r(lł,:jziaJe:
ti!dtruP cieniowru1; , ni· j1;5m lak n pr.lMicłę ,ee.hm , ~ n tn;ien\. Pir:r'\\•~ 0~11na
1
2 o_~ ,j oych tf'lflch utchm ~ pierwsza JC!n u::1jhn, lejSZ3 impltmtn~ cji. jednak naj-
Olll1t;J dMl:ye'lD. • Pu!e~a ona na 11'7..Ulrn arniu ciem,, na pt ką powir:r.«:-hnn;.
C" ffi pojawua ~ -,. Ó\'.vr;:r..as. ~d. obi.;kt blokuje a łwi11tla p,adająt;t."-gó na pl)\ ienchni -
wanmbda 117.eC'zy\\'lstych c Ier\ jesl obszarem, i.i.· którym na pm\ imchnii: n~ jest z.
po$mll'lio ern itowanc l~~ ~wmcłn (z dantgo bód.la}. itń met~ byt ~'1fl1tż lnlkr~
\lian}' jako 1Z1Jt obiekru z k1cmnkt1 ·~'l.riatfil [Padającegó na pl11S2..Cey-..nę. \V tym m m~ncie
IK}jawfa sic; kilka doda:tk owyc-h zag~dnieó. które musiin r<n!JlłlleyĆ.
Ws:eysLko. z c~yrn miał~: do czyn•,.m,.a do tej pory. koriczyt~ . i~ e~~ ' k~tej Pr:2
SltU{I 30 ritpT,emn\ow na był1:1 n=i. dwu'i ymiarov.•e.j pcmsz zyznLt: nu~mwra. ~ te_ ' u~.
2
ie tn\jrlrV)'miarnwy m . dcl mot~ zoSE1. przed t:1wLony na pt zczyżrne d\•;u\v~rirma.rowi:J ·
V• TeclllDd ~ ..■ohiiillWIY veax ....,
Równanie płaszczyzny
Zanim będziesz mógł cokohviek Zl'obić z płas.2cz ..._.,~ musi&z poznać: !>JJOSÓb jej rn.a1~
matyc-znej repl't."1ienratj m. Plaszi.:zJ zn~ moma w przi.1slr7.en1 1.dcfinio,vat w następując)·
pos6b:
A"i. B. + i .::. D
T~k wię~ P~r.lA Z)'m krokiem w wyznaczc-n~u równania danej płfl."7C7)'ZllY J~• u ialcziC11ie
wekfcta 1rncrmalnego reJ plaszczy...11y. agaclnicn;c tu było km lkikmtni~ p(ldejmowruu:
we wc7..e&niaj zych ro1.działach. Do ,._.·,rznac-✓,c ma wektora nomullncgo łJ\"ćlzi · polrl
boWil t~ h ~nkło:\v repn.uem:ując_. eh plas:zt;?.}'7li •1• Punkty t~ ~ -'"".lll 1-ają ~ wekt~-
Każdy z nich Jest um ie:iZC¼Ony pom i ęd:1.:y po. zcz...:gó I11:t parą punktÓ\\'. co pne~ ~ i.a
l)"sllilek 27.3.
~
R: ' 'lll!lf plAJ:Szczyzn ~lano, i pod r.aw; wit1u ~11t~ych operatji mdJ)'Cmyrihr a
JWZiYkhd m ~ to ró~ naJ~ie! korqmtc ,IQ sprawdzenia ezy dany puuk, n~Leiy cło
obt.53o~c--j pl'a. cz.yzcy. Je-śl i pods1awi z. wspó~dne te :.-o punk.tli do IÓ\!m~
(Z)'2:ny, "' \"1)lnikJJ ilnymaS.2 zero, o:;mu i.a ,n.. te punkt . do pł'3! . ~- ~ .
:1"3~
~ rotriy od zera. j t:go 'f.1 ru1oś b\-dzi - okre. kt .odlcgł r~o punktu od pła ~ 1·
Macierz cienia
Katde r:ukszu.1«.nie ~ rzu.to"' ~:inie "'""')'11ilnga_!de(miow-an~11 m ie-rey _ nii:
~J Tym l"[IZffl) ~"'<Wemy pctncbo\va.b mae1~1Z)•. ·któro zmiruji: mun ~k~ 4>d tto
v,;''fflf .::-podstawie lokaliZffq~ trod~ ~alla. Bibliote~ D _DX ~f~jL'.' pot,,~
~ -ie OOD~ rl x5 a ... u.możhWt1JJ=l{"ą wyg..:-ner,owai11Uc ~kLeJ macierzy~ ~
.,..,_.......,. 030 H,3im1. G i!'flC efl.1 a .
Ceł r oJO» EnOR.;. ~ 02..:rcld 1a. 1a,
c' ooo • E.., ... 1anclytmC1 !:łni er..- i'\łl 1.
f uąfctj~ 13 pobic:ra jal-o a,gum . nry I k3.limcj • i.Fódl . ś, ·~at~ omz ró\\~~ic P')~'ltt"źdinL
i mi iefu podstawie -~,.'l!)i"ZY m11~1eiz•. kl6 spłas.zc1.:u otue~m na plaszcey1.n1e. tak. j ,,b)
l)ll m1towan z. ldenmku :imdla świath,. h\i'Qr-z~na m.ac-ierz może byc wi0łl3 ,,_~ ~
ooi:-b mru:jerzy l-ommtcno-;. any,ch. o prz:cdsta m pam1szy ł"ragnn:nt kod1.r
iio...U"' crnrzC1enia. &?oz}tJdSi ::itla. ~9laszcz_,rzrld 1en a™ .
detił ,1,c1ertS-.- .a ~ H&c erzC·en1d ...
l~rńi l cu • _:ti~,e~i lU U.
Opem.ej III taka r.mruje wektm-y n::J pta lt"l z.tlę. ~mm mac i i:rz :Ś.\\·iata dokona M.ta.tec.z..
,0::,-ch pruks.z1alcr.::ń „ wi-ali Macierz ienia możesz trnktow:tć Jako komponent macien:,,,
śwt!WL Efekl ,,spłaszczanie"" jt:St kotejnym po! c·1 'flicm QJ)Clidcji b1.mSlacJi. rotacji 1 , ·_
lm,.•anfa. wbmkm,-anych w kaidą i Mą mac iert.
a rysunku l A Z05t.'11 pokazany W)'nik d.iiał.a,ua funkcJ L gt?'nl!'ruJąceJ n-ul i~rz ciie-m,a.. JtSt
IO znut ~kranu z ;;splikacj~ demon. 1.ruj~"ej denio\\mue na pl=ts.?-t.Z}7.rtf. ale :2 v. ~·I nym
caikowjlł)'m e-[cld:em cienicm.,·ania. tnJc aby dobrze "Ldocz:n) by~ 4:fe'.kt spłaszczamill..
Ryaunek 27.-L
$p/(Jf:!ett:tJit:
o/JU:!k,yJQM efut
f;i:0'7fflU1 t ,rf~
NI~ l e
N ~,. ~-\'anajA.."$t półpr7J.!;,r..mc;()·· ~ tzamil ~ ~~ t~lko M ~111 ~ .
dla bó~go bufur mauycy ~ostał dwub:Qlfl 1c zw~ · ny. n•cttór)· 11 implec.ncal.il--
t:b moti1a spodc1i rozwią1..ai1ir.:. "' kEóry"m cJl1:11 pt,\ ·erliClmi e !lJU ~')w.an!! i~
~ ·stym ez.am~ in ~~\1t\"l-rokąti:1tL Omó~, ·my~ khtdnitj w 1lill, Ptl}'ID n;,~:i.b:.
Wnaśźc~ apiik cJi j~i p , pm..1slU powtóm1i: rysowana p~~ podł.óźa. T ldc :rm-
~1ic jes,4 dobrie dla Jt'dnł!'j pł.i"SZCzyzn)\ jt-dm1k w bauhle zto!(m h Jlr0 dk~h
l!!~l.e ma oka.zac 1ę mm; rozwi l,l!Pi , Nu . ' Untu .._.7j ;ml - ........:ny oml\ film)"
,orytrn. e1 rysUfl k 2 7.6 ~ rJ..cd taw1a ,tr}'llik jego dzi11l111iia.
.,....21.s.
KlfJld
~ a CtnllO
"°ph,.cn---,.n,~
-
~-...
~ ~ .I
ł!Ub'~
~
NaryM,IJtołitt;n;70l't'I
~-~
bUfo;'ua~
~~~
~ 1"1t"11afaj-
I . 'ttf,.o W łfvifM
,..,,,..~-~
b,jb~
lQIIW~
~~
~
- -
/ ,7
Ryslalek 27.6.
Ct i- m, pla: ~e:1,·;mt'
\V aplika 11i lej z~tO.i;.(),Waoych zostało kilka nowych rn:rw1 Zilll. dl~l go ifość .wlfao-
, ancgo pontżt!j kodu będzie wi ksza nJ7 w poprzcdmch rO:rLlzialach. JaJ - JUZ w~ iq
wspomn1ak'D1, Jeś ri nic . ,·1~
z. na 1akicJ za.s;1d1i~ działa bufor m trycy, prxtd d ~ ·
czyi.anicm za1mi n~j 1i; z trdc 1 ą rozd:t.•~lu 40. :!\i1c rnusasz b~ ..- d .:!ip Lrt.cm1 ałi: dobru
byłoby. ~dyb ~ rozumiL t zasad~ działania 1c:go bu fora I P4H\ ody. dla któl)·ch został o
W)tmy lony.
:li. 2ówiąc u bufo ach mL tryc • po "'in ienem pl""1.ypomnk-ć nk~w1dk czę· ć z funktji ini-
cjaiiz.i.c n ny h, wpm\,.:adzonych w ro7.d7Jalc 7. Pn raz f)tl.!n, ~r.y t,~cjzj,: • ~sować bufOf
matrycy \Ir pełni św1 dorni --. jedm,k był m JW ·w1do ·rotm~ " · k r.l. .sr ,i.!any we migrncn-
iach kodu. Poniż :u rinia zo ·tafa" ✓1 ta z unkc,i uncJUJti; ych, znajdując-, eh i1c w '
bazo\v :i KAJ] 1•. C.J IHo~r G. Twor?.)' nna bufor gf~bi-n,~lrycy. " l"tórym 24 bil)' pru:•
zruteznne na g!t-;bi4c. 8 hitćm ~..are.7.cnvo'I/ •::iny ·h je~t na bufor malrycy. iem br~ • LO
· rtosc przekrncz..i.· ąca p()ITZeh} Ont'=ł\\ mncj ti..:cllniki. J1..:dnak ooJ<ltic-j ,.aa.wam wane-
ti:chnik i będą poirzeb< wały \ i~kszcJ i lus i bnó" m tryc ·
1
'' le,. .s~ób bufor m ~ryc?' ~ <,c do!11'tpnr we ,,·~ystkich prrykłado\~ --:h .łphkaq~ll~
urno~ln..,ut:Jąc ~~h wanu.: dowolnej ~ nich. Jt: l i z.'-'·dicc z. nod fik .wa . pntd
c: 1~01 ,,.
Sła\.-i.,iom: w tt.:J ks1ą2ce aplikacje tak. b · za, ier4ły cieniowani1,;, musi .z p rn14t1at O t rrtl .
'A_Sle l.
Bufo wiencholków pr.wc h()" uj1e czt1,;ry " 1 icrx_choiki. !Do zde finiowilriiil. po,,1ienchnm.
i matematycznego punktu ,•ti,t~enia, potrzebujesz w~idn~ch tylko ln:e.c'h P.wikt6,,t.
jofnal płos.2c:zy-za , lepiej 11.vyglątla z czterema punktami. Watlle jest a.by ' liZ}:ml41 •~i.?:f
· nłry oolmły tł.o jednej plasicry:r.ny. Jcś~i warunek meni n~e ~z.te s.~~1uol'ly••~tci~
~ naryso\\1ane. jecb1ak mogą pojawić i'i błędy. np:. cum1t 11~,ą ~~~•d M"O.
:mfat1yw.1c -t; n kr wędzi pła5:tezyrny. Sb:Ln~Y1. i to glówm: ,ognmic~i:rue o111syw:meJ
1
a,.qtępnre kolm wier..l(:holków ust.awb.ny Jest n biały. a \ :ar1ość analu a.lfa ca Uto
z~ cz.3j au1ac--m 10, ie płas.zc:ey200 Jcs• Cłlllkow,de prlCzroczy ta i nic pokaże · na
ekranie.jeśli tylko \,.·iemholki mają_ usta,11,;•iony amrybut przczrot:r..) t~ci. Jesr w prawda,
alea po2a rym r kie rov.Hąz.anit.: pozwoli mi na .zastosowan ie 1' ilku szrucz~k w sbadcrz.e
Powr'Ócfi efo te op zy okazji analizy kodu rentiero,,,,·a11 ia cic11ia.
,.,;1erlc:tvJh:[OJ tel o „
')l,
1
",t, 1erzc · 1 {: 1 c:olor „
"',.. er1c11 ! [2. oolo - ,.,,.1 ·zeł ol • ,J color - 0,,,€,-J ·r "
_11"Pl s'2c:qzna9utonri erzctx>l' _,. r.loc . ) .
return s_ .
~al:iiZ kod ładuje ic!łfkt:, ,.\, txln;bn ia bu fory. Lworzy prost • s.hadC'r i I da.lej - na ra.ix
me nm · go i-ę me tlzicjt. Picn\•sza nn'i.voAe poJawt□ ~; • " funk ]1 Rendl'.Jrt.lJP. asz z~ ·
P"e f ~ 1 pr . Funk jJ ta 1...,jmu1c: 1i; rcmkr ,\, anicrn w z; ·tltt!'go oprrn;:, końOO\ c.:j wi~ej
si tkl obit!ktu ll"Zuc,ająeego cii;ń. TakJflk popr~ łniu. M \ ruó ,,., 1eJ funkcj i j-..-st wil"k m·c}SC.
któr. mogłyby zosta ~oprym.alizowam::
' 1d 1,acJ1Techn , Render JP.łaszc~yz~e c1~n{)
Gdy t>b~Z}'Zll3Je.st rysowana pt, ,,_.z picn" zy, rostaJ usta\, iony bufor MtLtryc ·• ~osU:
00 włąc~ny. · funkcja porównująca zdcfinitw, t111,a jest I łk. ab;i za, z.-c a~tua~m)~
" SZ.Ystkre rysowrui • ptks,c:le. Po t1at) ~0,·van1iu piks.cla odpo" iadaj~ :i mu. "'artośt buto:-1
1
matrycy z~l:.ljr.: ~ ilikszona. J.:st fo 11i er.v „ :1.a ope~ ja n11 nUlbj' y po \','JC'Z)'SZl2lel\lU
t Cza~ - ~ fl,;)!" }flet 1, r: Jn {) , 1000 01 •
1
□
[l~ . li : "Ol.re; ~s 1ti".1i;d5f.l o· " s ·n((lih.). ·o O ,
o t1 . J 1ł').
~k-m't( .1 erS atla • ruo 'iFCT Ul 01. IJ o,. o o , or., }
f>o7yc J ~S-·tl' 1a:
. ~ ;::e~ , 1 rS',"1 d 'a. ~~-.'' ~r~,.1~ 1d).
)l!tU-1 em~ -::--se- •.,-. ··e.-.'5:wo.r'Consu~t( • ~,t!r~-..,a L~! ).
Kotqną, ~no . i~JL~ w_ ri:n<i ,nlwru,mc pb.SZC7,)-l'XftY jak-0 _pa.J;B ttójkątÓ\l. to spo"''Oduj,ć
tawt:t'ci IJff'lP~srul1e w b11f OrL~ matr;1c r w11nos ~ jt.:dt:11 , ~ [~reh tni(jsr;ueh. v,, ki61J-.cn
~~w.lJla ~ pł.ł~cxyzńa.
- rl~ ~,eo30 5€! 5 re Stn,rceco. 2000 k
~1 /.t....-...•::;.,>, I ).
• U14ern eO.."'tł or.- r m1 "" 1•1f,tDJOi1l_ , ~
TNiz ~~:ecH •CllłS nY uP.,'■'Orl!!rlii.: ,nacieri;y ci ~•i~vnnia. f'l3 zcx}'V' , ml kro~ ~~-=
~• <>ieli, Ml.iioiow~na j e1,1 tak. aby D)•l3 -zgodna z pl\,•~"-.1 o~l n ..~ bo
lertt-,boł '-''· J t Co p1,osta pł:35:t.&ł..)'2Dtł1 kiero"•11na ' · gór" 1 um ~52Qa11.~ ~
o:
Po zdefiniowaniu stt1ly,c;h us1.awiany jest ~pusób rcnrlerowanma ~a.tki - w tym -
rne ma żadnych 00\:i.ości. ws-Lyslko odb)iwa si~ tak,jak ma ló miejsot: ~ p • ~·
się nalomi ~ bl'eslia Z"'iriązana z optymmlj zacj ą. Opis)•wany efokt \\'Ymflga. aby ·
rendero ·ana była dv.'lłłootnte. Jeśli obiekt ma złoluną ~trortlctri~. operacja 'Ul mo:t.r ~
:znacznie obciążyć s,:en1 g13fiki. Pe nym rn:r,,;viązamem te ~-0 p1obl1mm mogfob ·c
w-y.kor1.y~1:.1m~e ~o rJ.:utowa.nia ~icni ~,•crsj i i~tki o ni~ki:j ~1.dzfolcUJS4:i. W ~idu ~r-
padk:iicll ~w1 to dobre liozw~ązame. gd :2 1 tak w c1cmu m~ moma d:os~ '"·•-~ll<U'I
cktal1 obieb.1u. Je-st bnrdm ptawdopudobm:-"'j że nasz. algorytm pnyspir.iS7.)1 ~ ma~
pogorszenia jako..~!.: i rcndcro""'tm~j gr-afiki. ~ kaiMym natomm t pn~ypadku nakż.)• ta.
VtZgl,:<□ilic pamlftilĆ~ aby w fazie rendc:ro,11r·aJii cicru a bezw~tdn~e "'Ylącl}'ł ttkso.mY,;
nic. jcdnostJ..."ę cieniującą piksele. oś"~etlenie 0ta2 inne ckkty me mają.Cf b ( ~
~'PłY"''ll na k~tah cienia. a które mo~ą obniżyć v.,ydajnoM algory1trnu:
_·...u l(ld.::en eO:W.->Set S rl!!,::;'6:iurce, O. m_ S at ,j8i:fo1 ~~r1.crc l · ,
s· 'e-lH:.J!tRZC [r. $il.i i}),
-~' z3j1~me.~..O···Setlr~1cest _"--s,ai. a6utorJnde .s ..-OL
Pr.lCd fu:.r.ą rcnde-l'O\V!.łni,1 r,;:iema w~·~.ączamy równ I eż tesl ił b1. a tes• m:lb}'CY ~ll\l'Wll)
tak. aby nm :e pu· cle byiy rysowane jed~nic wówczas. gdy "-'!.U1o~ odni ·iem~ f:mv,
jest mnicj~za nit wano!łć matrycy dlD l}'Sowonego rnksd11. Jclii rys •'W'ru--.Y jest l!OW)' P ·•
zo f.3je zwięk.!Mona wartośe mau,,-c~. Wyłąc2enLf te. tu gł i eliminuje e'\\'en~u_a]M ~
dokładn,o.ś.ci. kturc \'I.' pn.ec:i,vnyn1 w„ pi;tdk-1.1 rnoglyb p . s.ti3Ć ,,~ mum 11c1C', ki~Y ~
~.J1 ~dm,,-alby się xby~ blisko plaszceyzny Problem ten mOŻlllll IÓWfl;eż• ..v;.elimtflO'iĄ a
popri:i:-l ustawir,;:nme 1u·t,~unię. ia z Jub modyfi.f.i.uj c warto~ , ~J)6łczynn ik3i D '"'' ffl'MN·
nju pfaśZCzymy. W Il... Zym p~kladzie najlatwi~j ł'J\."<t1i~ wyłączyć test Jlębi, 00 iIIOł'c
n'.iwniet znac7.ąco iw i ększyć wydaj,u>ść algorytmu ~
_ JrzGow11 eooo-3,SetRenderS o:1te(~ ZE..l E. fAl5D.
-_ f.Jnddzernero.D->Se e«ier tate{030R5-S l~PASS.
030SIE, ttOP_I ).
c.,};iq figUJtJ ji \', _m1!n@T _M unita nie a.khJ:ł_hzu~ iDli t-i
\ • ~'Die bufor rnruryc.y - 1 to LylkQ w t,·ch ohuamch. _. ~ 1t ~oru, iUn bcifQr.a
~ r-.} ,u - "'-"" ,...t-,..; - • g,11azie mstab rvc11.<o,
- ~ · ,,. roteJil",,.,....11, ~u;.,e l'}'50't118n8, J~C :$1 tka, !ltOŚ!.! \li,• buforze ......,~ -~-"".ma
SlJDJ ~r d • zv.1~-
1r~!dlt(11 ->Ora Cr.de e<iPr • tł'ff! tDll)? r
-s ~ C so. G.
-~s 111.
,11 k.JM11t1.iJ"I ttaj»e \")-'k orl}·st11my IK:"''l'lą S'ZILIC1.k'b lctónt nn:n,v.-.łi .
"' ~., - h e. r""- ' ~ na PQl1o\l.illc • , : :
t.1fu!'Ó\ . b«='Z' po,rzieb r mod. nkac11. Pod~, ""''O\lli'.)' shadefflntN'nUła.,:i-~ - 1.-
• ·,..,. · , ,- ł . - ·r r ..... , ., ~ □~s„omph-
t 'ł- obfi..,:zen,a ~..._ ~e~~•s ~~ra.11 ~«'90 pod koays1&11i ~ Ol,v,1C1t.1rnia •
• . KU?fll•wk swm. I Jt.~, tiu.. u ta, •JJJtf . ..t.by ~Yi iallo było ski,; ro\11,·,anc- ~ ki~ru~
~"'11yrn_ do ~!as-za..:zy rny. Ozna~za ~' u
plaszay1.n21 ~j~ \li~ndc:row. -. dko
~ -ialcn1e Otac'l'AJ.i~ U;_ tai.,v~ J s_~natom1a: t n~ ko!o ~ . 11.'CL parametrowi
1,Yl)!lllSU}l!IIDY 'f'C"'n~ mt:'-"t"L:I~ "'"''1utość. P'o'i.vód mkil!',go JJOS'~powani:3 JC!ll ni~-
- ., ; p.1rnrru.:11 al fa \1t.•1cr.n;ł ułkow pt.1.$1 l)'zny :t:Mffl.l tJśUJ.Wio, )' w pełni ~ 7Io-
~ l)', W picru.·szyrt1 ~tapic- pła57,.czp.cra oos13j1: ren•lfO"'' n:i 1. wylączoll} m i:f cem
p"lt■rJOCJ:YStokJl tak " ' Jfi!C w:}tt~i :.m••ązii)le z P ~ ) . loŚt:il\_n~ rrmj~ ~ o 7J:1 „
t'Zrłm- trrtkeii: dru~iego t1ap11 renderowania st•ł;ł.~ w; dl :ii"a1m rnz,n f'!0C ,c
~ v.iona j i: l na. ko for c ,amy. DQdrmc zoslaje OŚii ,~11,:riir: ,ola<:u1J~ ~. jm11nk j~ ono
r ~11~t czam~. Ze wz_,t~du na 1.0, że N)' •ir'lalria \"Yan'Ość parnmevu alfa~~ E'ZChołkó~,
ta.~ llro. li: z Y.{Jst3j • uc;,Li1wivm.1 l)J. ';.I; · o. rlLfil kład°" ej \l,,itt'tla n4acmji\C'C@O.
To V.Sł} •o VoZ" illa na ponowne wykol7.) t.:rn,c \'titeffi:hotkó~v ~7.)"lnY do FC11.d ·-
11w.-anin. ;zaf wno bial j. Jcdn0Htc1 pł-,.i,szc0„LDY- Jak ; półr, ·zr ,tj cznm-ej I'~ ..
tz)211t bez bi ,ov. iJnia , mt.'ldy'1 ttcj, wartoki w,er7.thołków Vłt' t.a ·,m pn:)-p.,dku
"'. Mt alflł s radowej ś,,· iatlt omrzaj:tc: go j ·t w ~r.um::i:c: r.r.eeey P?=hodną irik:ns~
~ j hu:lo\\·E:j 01\.\'1 1lcnia o•:-1c:1..a.j ąc..~o. Je ~łi ,;.kliuh'nł:. •~ ~~!\' sz _!tlft I .O. _'!)'(1~:
!O mpd11i,: czarnym. jak gdrb} w o~ók ni~ było ~ ł do1,, J o w•et lc~i:i t1 1 ~~Jtl_.:g
1Nli 'fl.IDlm; st "':lrtoś~ ,ilłfa bi;d~ii.: ''" na. 0,0. ozni,c2.3 co. z,.; o \ 1ctlcruc otat""Z J _r;,,; ma
~ imelti)"'rl06Ć i c,jcn DCC' '~ 1~pUJ<!. Oto kod apli . ji źWiąinn_ . f'O\\')'ŻSZ)lll., CJl}-)Sl!n1
ECTO!ł4 ~c : 1er-=,:ut1 (0 o O.DO.
O. o U.
,ECT ~ i t (0 O , o (I", D O • O 2SU,
- • od.e.er.1 030- S~t Jer · e · •~ · rtO!' li t(..,. ,• Ut'.!
... '.ldl11i;<i1 eOJO ~Se~ en. ,St~d •too~ rt {5. A
,- . .. . , 113 jes.1 cyllro Wll, pnie
eńlz ~staje 1w·li{CZL1ny Ili.! 1 m(łtr}'c}·. , '~--c płaszcz} zi19 I') att ić ni;1łfj'(
M .1.. ......i_ • . • • • • .., bJ...... ,..,,, wfU1ośt n1acey
i;,;)\i ""m' iem.a (Jeden) J I mrur.:J"ll..i.ł m" .. .t., L Q
jcłt chwJcromie ~ W obs:zan'.c. w_~ pojawia tię Cia\: ~
je$C~ l}'łko w tym o_
bt.7.onc. Panu~J. k 1.e:91 głębi j~ cwy"-eo ~
wi~ 004 przebiegi rysowu11,taszceyzny n,c powinny t.c ~ int~ ~ ;"'
zer,.1 -•5etlłeoderSC ~_$H~ ll C. - L $$) ·· flll
:..u 7 '1 $30· ~~ rSta e-(DJMS_Srt IL F - •
D o ~ ~ CłiC11lO\l'anla zp~ ~~ I \ ~
1r::,t.iy pn,epoczystołe,~ ~
>Set
li ;.,iSet S 1..E
lit lRn.u,.
r :;:;1e ri!),
stal"IUO, er a
lO. i,.4Jlds2 zyrl"la~ •
r. l .
J
..,.. ••= 21.t.
~
~
Jedn\ z pt~i;b rzec'J:Y, lctór--t; mogłeś ?.auwv.yć. Jest io, :re zacieniony ootllr p.:c
bezposrednim wpływem o~wicthmia rnzpr.1.-;1.aJącego. Gdy żródło ~~ iatł.a ponm.asię 1
1114.-ł;Jie\ o~wietta pbszcZ)'Zllfi. włączając " to obszar ubj „ty c1enil!Pl, Taki efe ·tj~
poprdwny. Jeśli obs.:r.ar zn11jdu1e si,; w cicnm, Jcgt1 ja nos.ł nie ()QW11li13 się zmie · •
1,: :za 1,:-mości od ikicrunłrn~ z jat:( icgo to św imio pada. la1n i~t Lego. obszu ttll pc)'1, · _
być mpclnie ciemn , thylxt 1.c w ·~\"PłlJ ~ do&ttkowu OS\'t.'tetknic OUl(lajĄo:. tepop1'IVi
ośw1ei lcnjc 1icyY:11it:a z lt:30. że pfas:1.cry7.t1u zostaj~ o~wictlona . " iatłem r07pn15ia~
a następnie: 1es1 s.ztucmie przycjcrn n 1an.ą [1.•chmk.i ~ icnmw:;inia_ 1~akic rozwiązanit łi •
\l,•adę
wielu ~t<N:! ,ckniow.ama. \tożli1,,,.ym roz,., 1ą,anicm t~go problemu Jest~
wanie drugiej płas7.czy-..rny teicnia) za purr.ocą ·ha<ler:1, k•óry bi~r,e pod Ll\\'a&~ ·crotd
padaji.,cego św;ąlła i Jlr.tydtmnia ob zar i.:icni,1. Jo, zni\,dc,"ać cfckry pJc1w iego,..
~wi~daniL&. a p- zykład sh;1det mógtby pr1.cw~ć informacjt:, 7i:, dany kiefl.lllł'.k ś~·~Lb
spowodował ruzJaśfłumic plasz~;y:zit) 1 w dru~1cj fazie powinno na.siąpić o d ~
przyciemnii:ni~ tego ffU8mentu. ~ trakcie porus:.ranm sii; :i.rodła ~wiatła po rne ie
ehanim1 5ib.adcra _pm1r•ini,::n upcwni41ć sit;, źt: jn~nosć ol>s,.aru objetego ciep iem jest stah.
Nk DV:'ZSl1tdniłe1n lego w pre„cntowan.;j aplikacJ1, po:n,ewaz cbciafem Ją ffUih)'flWrue
uprośctć, a ~cm podkreslic ogrnnic~cnra pod bwowt!j wersji tej •echnik,.
8
J~~kS7..e ogr«il\icz,..'flie prezenrowam:j h„"Chnrki pol~ga n.a tym, i ma ona~~-
Jedyme w przypadku pfas,kich powierzchni. o~nac,.a ,o. i~ me nll.daje si~ do c:temO~ . IJ
ubicktó"-' inajduj eych . tfi na nicró"rnym rercme. 1e mot a jej ~z toso""'ać ró~ tU
11w łiN 27. • Cl•llle-~I. Ne
11iił
........... eh:
... -Ol}Ł:w
Podsum,owanie
~~ K pWrc,.,.,, aipin •it D .....,,_ n-■lnitn,~--......_
i .. pozyqi ~ -SO wcktorL
~ .
• Równanie ~ Y moma wymacz)'.'Ć, ZDJ~ w,p6Jrzędftc lrzecti
nald\cych do niej punktów-
♦ M■cierz cieni■ pnck.sztaka wierzchołki, blk ab)- wy)ł1ądaly na ~
i rzuto\\ ane na pł~·
1
61
cieniowanie przestrzenne
C ~tt fi pbs:teZ}'2llUCb l\ ~,·r,:k:sZi b. di Rlflll:j 2@ '"'~~uc~•· matema
(.t(rf: ruje i. te: operucJe nJ mac1e-r2 h mo .-ZU\OVt ...,.,_. f)'e211\, która
[ ~ !\Il ,e
•• t~
•
~ hoi
•-w:,. • • 00 _1,1auCJ
.ł'.... • f11ZYC,1;m.,reb
ta nic .n1nir: il u1.1Ltkty 1121 ~
::.1"
"I: \l liiicin,...&-... • •
Jl L~""I) jCj Yli')•k-Orzta,t3-mc óg.raDIC:z.DI i lf Jtd'-)'DLC' d,o p1~n..m ·c . " ' ~ l CLern
IJ ,;i
··i;:' . ' • _ __. h .
• • •. -.T )~Ml,: 'P~ ~ q...
"n· ".tG fÓ1.111 , 1~ iem ns l)O\.VJe.t2-e m eh. pol'iLt:1'':U. ~~ . (. _ •
1,1iię,G nie'. ci~ńl mJ~~c ~fon}· ~ gm~,u iP~~trzmi, w zwi"~u z ~ ,= ()
lujll' I)] kilłd.Y obie :t BtaJdUJ LttY ~11; W kJ J' trzcnt. Rowti.:d tim podz;e-lil~ rnast:i:-
~ !,; ~~=
ł z~ ł\l'L'Jtz(-m~ ci Pl ~łrze-mu1ych
r.moPio i c,gromn)' J;IC'ISl\1) " swsunl.:u do c;11i:oio1.~.an1 ru, p4aS2czyznf. eo niest~t "' ·~
1 . 2 \\'I ~7llJ złożono~ , lej ri;:chniki.
llo -y-c:-h lworzy ~ pr.,.;e:;1r1cni ~\o;. • c,cnil! ,,. taj~ dokfadni ni 1'1kleJ ~ j 13-~1t
- 't,rtą pewni: o~:zary FFlt.""Srr1c1u. \'\ k-órych odd?i1h1j na umi~ 'Z@l!H: W1L 0 ~'1?··
w~!J. i-O, .:o ~llJdl~C ~•i; \ • pr.r.t:-:u-H"ni bj~j ;wiJ\km. ji.; I oświl!U~. a 00 _inaj~~J('
v. pn~~tm:ni u j~ki ci~n iern. oswietlont- ni je \. Ry5,unck 2 , l p~ed~~a ·t li)'-
waoą yf~ ej,;.
.._.ure!
...,,...
P,o wyznaczeniu syh,,·etki. otr.c mon„ kształt m~ł 10. tac ,.,,·yc1.'ni ·ty"' w przcstmt·
tworząc w tlm sposób gf1cbic c icnaa. Za.11 im prt.ejdę <lo J.oldad.n 1cJ rej anntiey tej t ·
wyjatni~. w jaki sposób opisana mt:1oda 2ostala udoskonalona d.r.i1i:'ki "'-
meohani~mów ,. rtex ·hadcr. Polem opi zę reszt · LCJ le hniki.
okre ł.a oo: kłóre nonnalnc WJeri:chołkón· :n1• są ·lneroy.ant: w stronę ~\lli1:nta, a ~
~esuwaJ.; w~łu__t wektora 'wjnU.t. w k1crunku p l[,."{'iwnym dn aódla wiatla. W~
kJe po.z tak ' ·1er1,chotkt poa>Smj 11rc zm1i:11 ,one. Jesłi sunka zostałti. prawidłowo pocmclo-
u:6J~
na n_.J. ty. '': wyniku dzi~ania mechaniz.mii cieniującego otreymamy prawidlo~ą
f
gf~b•c.; cu::~r '--śl I n.;itomi l pod.zi~len u:: ·iatk i na tń•jkąty nic b Io zbyt do ładne. ~o~
poJawu: się mcdokładności Zja,..•is o to omówi-: dokfadmcJ pod ko11ic."C tego rozdlrłłu-
~ rysunku 28.2 został przcdst.awion)' dcn prze. lFLcJ1nY otr-1yrnany i; ptz) ·tado" ~ 0
ob1eklu.
:2fódk, ś1o •illtfa lJfflic: ~~ jt~t W lłW}lln 80ffl)'łn ro JJ.
(>,-ls1owil,n)ln] eta.pic ~'Yll•~•
gł ~
l)ll' l}'l,7J!I dól ; le o. fl)' otr.l
~ gł~•~ ·ą oę
Jl! J<SI ' ~"' mósl : r o ~ - 1, ·orzerua bi. Ry,.B 2 .1 p .. i0
i,;. . i ~ , , kt6re s -i-•ne , · Pl"L<!c1v.hi\ s ni,; l ·<11me1<
.dlr ..,'• 0!2<~' ~ ~taj w 1ym kierunku pr:zcsuni 10. Pozostale wie111tb
•(1!111.1. 111<1-
_.., v • r.....» ~ mechanlznlr vettu lhlldlr
R,tliMIC:28..4.
\V drug m mpi l'Clldero1,\ ia V. •l,mn:y ww:m, Jt: t ' L"r1f.'X shJdL'r. lworz. ..~, gfębii; ~
_je ry ue
Oil n rant'.' W)'~'1_L"7.łlii: trńJl,..q_l) ,.n; JUUJąL • ~-~ L. przoou -Obi ktu ~
d~ń • ii: ~pjmJ~ on jcclna ' J\tcYCgo ani du bufor~ ·uJor, \\, ani do hufol"3 głębi. n-i ,
na1orn~:ist . troi- mateyc 1• • ~ ry unł: 2 • został pc;.oo17.3n t'~ckl po z.a..k 1ia.I.'1tiu 1ml
omar;i I n~ fazy. ZW16<: 1,1w:1 t na 11L\1i·on:uJI_ oMzar ciem •
W tr7.ie "im ~rap1~ ~ 1 ·me n-n t:rowru-i.a • t p~Lr2i:n ohj •ta l"ićniem Jl.'dnlk •)łfl~ Cil;lcń'I
d 'J'Y tó 't\ 'ŁłC"lJll~ . ;h trójk I \\ Sij_litk•. kt-0re xwrucon.,, są l'lr✓~C!L'l/1i\nic: a._\dt.J \\ . 1h,
r lak ~ak pcp~-dmo. ufor kolorów i "l --bi po2o,:; j . . mr1;.r.m• ·1u ~ ~~ n:1com1 bufoir ~
1
ZOS~Je Zl1ln1CJ~l01\}'. ary nku .2 6 2.0!litruy p e ~ r~ll :fm1i I \ taj ru~ tJ\OJ ~
(dl..i ~Ch4l.....,aTim pr:u-j~l:ltl i obm;ru pomin ifto faz,t ·sowruiil. p driich
= t 1 .LÓVt)
~ V • TNflnlld ~ machllnlnny Yłllta ......
RJlanek 2&7.
P"~"~ ~ C'in1
pr: rh':cnm
ODaał:t.. ~ fi
"''ykorLyStlliJ,ąe
butor matrycy e_lo okn.-s1enuł p1ksch z:nąi:duJi\c:)'ch :s11c ,.,, obszat1.e <:i
a_~ ;n:'JZ\Yi~ie doorze fimkcjom~jc w przypadku zło~onyr;;:h deni, jednak n.ie w-~y.~
ono dnkonMia 'korckmy ja nośl: i it:n~:ai. o c'il:ym ws~omiriałcm w p,opr.zednim, ~
Na r,sunJ..~ 28. został pokalruiy drn.gTiłm obrazuJący poszcz,ególne kr(lki o~"'·lrle]
•~-chniki. n-atomiast ryi;u1m:·k 28.9 prLl."Sfaw jn ukończ.ooą -sc~rL~.
Rys1tna.k 28.8.
l-f'np_1• Ut wq Nr,iuJOll'l
UirpuJ a.ęi . Cil'rltlł
ffi '0'1'! c."IJUI c;'t r'lir(~
,I, - t,,'11 ~iCidi..
~ do 'fflltr,dlo
prze.'(/rtt•lfr,~go l)t,I
~.
~~'Q
l ~bu!tl'
!lull'I
iffl
RJ!Sunek 28.9.
ltw~co•,~y vbrar
/Jl't!Zt!nłU}~,
~JeJa t·rt•ma
pne.stammeg,1
• t;m ,oozn:i ~ oricz}' om, wian;e pc,d~l3w tochn i •L c,1-emuw.u.nl.!I pru> nn o
W Wd,rn, 2 wl,śći.,,. ·,eh L"Lapó\, c~eniow i i I V.Jlor,y:>1} •anr j L n am m~• n1Dn
· ~nruj:ący óri:gt, i,n!~LntL"rn JL":!JL " ,rzl!'mc g,h,;-b1 Cll!'mJ
Wykorzystanie mechanizmu
verte.X shader w tworzeniu
den1a przestrzenn go
V r: ·ti d ·r "' or.t .1.n · ~ o LW):JJ ~ Lt-cha1oc j ·~ł
111i1:n · , \\ b.;1i;11ól n ~ porównti ię: g do nu c-b I ·1..J1□ 1 k . _
tnxnnyd . D„ n) n~i ,. 4.:jścif'I\:\ :_i,m i · pę~zycj· i · ii:rune 1
,..m, · ""' a.1l
bic--hu 111.il p,~i \ ·I! I.) lku o eh du.·o rb ~, dk?:-.ci łt ~, ,i h·
p17r..-s.tJ7.c-ń i=1rm.1 • oo ~huJcrn U.11~ icsz 7.QTly JCSC w pl ~~ •
'li"iS l
lllC_SQ \\ .
Na ~ tku .,,..,~laJt: obli zon Iloczyn t1.m
r. ,crun u v. ~. H.1 \\1vnik 7.Q.Słi · • m' \'1,'
do \prav. dzeni· , cz_ \\~1icrte'bol,c u·
~wlctlcnia.:
r() . . • t· , i:r. ·h
Lt kfJ · ~n
I li} 11 °\\I
Jnswll.l cp s l 'l sp1'3\Vdm. CZ)~ ilOf.;~yn $1il:Jlarqy rtomwil~j \li,°kQCoołb i W,cktort •
l,\•iada j est uj,:mm~r. Sprawdllnie to odbywa się; pop nez poró\,'113nii: wa""-. . - -~
, , Z('f() znllJ'dUj.łl.~ll Slpt
z. ~'\i rtD~i . W~...o Y- Jcll"I "1.'rnik pc111.-.iWnn
....c. • . -.-.i;:1 •I~
.ma będ~ic \IJ~
r2 ·t zo«a.ni u.s-t3' io fl NLj~en . W przcci~vnyrn ~~u 2 lt pn jm•c
NS!?t-cprue o ~ " 'ill'lOSC J\.~ t mm1Qź0raa PT«.t odltstość, o j ale: Wiim
w::; - ~
$U"-·any, _p ~wr, aną w i:8 x, ~ v.rynik mDóteni.a zapi~ ·any ji:st ~· rl ~ ~-
v.:icłk~ pnes.unfąci'a wi.er,gholb mootorm jest prza ektoc sł,;,iL'fttwany odi tmdłą~.· .
do w1er.uhotka pó czym cal~ jest dodM~ do oryg,inrdnej pnzytji ' " - i i ~ Tl
temu~ • _I.i „ ier2Cltok·k ~ t e ~~:.my w strnnę ś.u1 i~ ~2 pr-0ijmit 'ili'ilJ'lOić ~
~ co 1n.~~CJa _i:3 me bę4z1~ m1 fa wpfywu nu pozy,c.i~_w1e:r2ch□•b. J~i r2. ~
uJi:mne. ~JB ~ 7~ " \ ! ~ W2dtu2 '\li((.-bo.ra ~ .śv.iaihi ao ~eh ~
odlcgłośe nw: rnus.1 byc .mana. pon1e'r1i,1l.t. wr=kwr tel'I r!J.e z.osa.I ii.r czdmeJ 700llllatiza"'
1
Ko1eJrt.e Im.ie mn.j~ :ro zadilll.i oddalic (pr.lesunąć) wi.::r.Lćhul~k od iródh śv. · lub
ka?-t:'LĆ jeg() nic:n111cnio1ti: \.\.'Sp~-dn , N~sL~t11 · dokonyv.'ill'J je.si ost rixme ~ ·
~nic:. ;a \'\"ierzchołek wstBje rumieszC'lQfllY w pra'Sll7.t.'llL ,,,; ~ , ;. Nic ~PT'Q\I;
~ dne oblic,z~ma kolorów. poniewa2 na cyth ~tilp.il.Ch aJnulJizow11ny jes1 jed~'nic błlb
fflflltf)'C) .
J~ oPos .• r1. cO
(li:,;·' (Po'.:.J, r-J, -cl
cp.! ~Po~ z. rJ, c2
d:' ~~s •· rJ. c3
Jak wid: ·• slosunkowD zfozont:j rnch 11;c~ townnysey ni<.-:skompliko..,lr'aD)' kod :s.lJ!.&la.
ajwii;b:r.!1 zło:oono ci cbarnkw:ryzuj e się J d11 - :.1m1.1 .H.pJil11cja.
]
--
- (fi
RówJ_tii: _,.,r.,., lej aphka.c~~ najw3hliej ~ u pt.'TI!C~ 'i. • kon~"' (}ł; _sq_ w f~cji ~ _r. 1
zm11u mahzoW1t dlug,Mt kodu. og.rnntc yić'm się d gerlm> t c,c:rua FUZ ryt o.1cdtn
z d~ócl, óbu~klir.\" ro.ajdujL ych .Liii.: 111a 5le1:nii:. 1iJ r d lsz~j c~ki ilMlizy 'kodu podpowicfll,
j łączyć cieniowł111ie dla '\li~~lldch obiektów
,'OHl pl i..:acJJTt:'(;h.111 , 1 ~--:iJO
[
()JD"'('.l'!(; ()P.• Di,z{J; i! ( Cf O, 0. ' ,.
[);JIJ• ~tq;, oo: ~~t ( "'M4) C! Z, 1""' .c.'f.tT ]) C:7 "il
!02tlX CTORJ({J . O Ił .. ).
,!))Oz Cil);iJ O , O G.-) ,
Żróclło 'wurtr~ znaj cl ujące ~•'t na · ~nić porusza się po tak1cJ m „j drodte ja.'k w p o ~
nim rozd7-1.alt.:, CLyli od Jc1,\ ej tło pr3v.•cJ kra't'r'ęti.Lt iómeJ e~ci ~~n~'· Kitrunek p,3danil
wiana -~ I zawsze ust \ ·ionv. n :<-.rodi,:k .!-tc~n, : ..
a t cas
OJO't Cl .~ [;;. 1.)t anso o· · S1n(Cz S . 9Il O , 0 Of • . o ,
DJ0 IJEt ~._, ' 'i! O D OO P.::~111 ~.li!i.
"!
Domy:;lni4; nie dot zyiem oswi!.!mlenia z jąc~go. j ednak i!itn1cJe rnozliwość )t .~la.
1'.ilCJ i 'Il [POd:sti."'®\\i'_m mechill'I ixm ie cienmjl\C)~m Podobni,c J:t · ~ .P prledn1e:J .flPli . .11~
1
- etapie l!~nd ro-wania ob1ekt6'l.,· w1doc:lnyeh 11 -se ·nie zo tarue , ·012), ~ O!,WI('•
• lt.-n1 rozprasZJj,ąc--1;;
EC'~4 'Ot'.'2en1P o o • {I.O I
).
N ti;pni ~~' ·7;3ńa jest :''ano~ w pól ~~nn, a gł b; w ce-lu u.peYt1ucrm.1. ~,. , a tiP}
•~ raemlł Cłem b1r~, ~pu!, 'l cl3pam1 [) ·r.wi.·wlii.l ob"r,;:l.,1ó't, Gd_ p~ pro,,,.~da.l
'ilka iaz 1;.:nderowama. L J amcJ s.ceny„ błi,,:d)' ;l.lł rJ._glt:n lub il oe , da u z:r.e but r.i
t bi mo · po" odow~c H y t;.1Picn~e !!fok,u rhrvpowacosc1 'j,I. mi j ach. w któtydl
jednt.: p · 1,d!! b\-.d„ mo· t„ tali T.)'Ć k t gł~t,,. a inne n i ·, 071r,;k1 o ·, niu rz~ ·e 1;
z ~8.Jil~. Br ) możcrn) b~ć pc-wni. 1.c dan:a fa, ,a\,sr · , \ yra ·. mimo c w ~ i j
w,1 s~i.ą bard7.o ix..tJobnc \\ anośd _giębi , \V na L"! m pr1:yp dku m,odd 11„ s i:n1e it-
H ~do t •~ u1v.s..zc- .1 priodu pod1,,:1ac; prlt:bcc u fa2 c1icmowan1.3~ 1nkic rm:v.i ~te
zapobi ·ga pl'24; ł, nfaniu •1.1b1ckru [ł17A..·7. fazy 1c-niawan1a. co c.t~ pnw. t do po~ ~-
:n~ p()Wfok1"' ie-ni fi"d c;ily, 11 Qhu.•k11.:m. , il r}'!itmk '!1';_WI ~ id.z.in,y pll~a,:j,; z ~ ·łą-
czonym w półi:,y,m1t,. um\ Z. 7...au11·.w.... -✓.·~ tmaz ję_s, w dal 7>~m daru \\l"J_'. jctJn
ob11:k1 m1 J~~ ,en zn· j tluj -= si't ró"' 1 it:7. \\ ,:1cn1u. r h 11:111, ot;!}'\~ · -~1.:. J . ' mi 001 ·•
r.ach był) o e,c: n · c1c11i · (Kk: 10-rlząc~ od nicl arn h, al z za,,;łm\li nl4."lfll wrwuu.
ClfM V• Taełllllll ~ I I I J r JfJI Dhallti&.af WID ihadlf
Drugie Vii'}rwoł:mie 'flJlnkcji Dra"°lnde-xedf'r 1n1 • P sta11ow1 lak narpraWd( pieTY. Z)' etap
renderowania obtektu. który będzi~ rzucał cum. Obró ·Hi.:m g I umi~ ·ciłern trocrn; w
żeJ względem d n.łgu,:go obi..::kh1. tcby r.luc.:,u1y d1 tt t\ b ·I dobrzi.: wLdoc:my, G malw•Cf!
• ~"1iana 2o~ie zmodyf:ikO\-, ana.. niezbt.;dni: jest ponown · hherenic I m-setm ie ws_v; -
kich ~eklorów przestrzeni obiektu.
D->i»:1 '1.Rota ooY (&Obro , ( I Od\. )f'rf.: 1C~C~11U ) • 000 Of) ;
D lićitr xTranslijt1on(&Pr1e:s1n1ec1e. o u 20 o·. o O').
_p,ii...3cu~rrSw1a d "' c..tn·o• P'ritsu ,ee,~.
:ac e-rzSllaoe ru_ "'C.l~r lSwi:ft
J ... m_tt.ac,e-rz 1
m l'ł4Cl n: iWl ·
OJO~Hatr Tr,mspose( G er zSIH~e d, g :1c 1erz <ter ) .
•
->Set.:~r ~rCon$t,ntC(I
(M»itta.:onjSirrat t . We: ' ~ ł. -4).
,
at~.
.
.,jJ('l~eń~
„..c)(łwztn :w
•..
· • rt~ t(Y'IIP.'OOD
~
1
•...""
J~
.,acJZ~,~ ..,.,......,L._
- , - - . - ,.._, • • o.
1C':'~0, O,,
~() ) .
l)!łk0 \-'i,Jl~"'L"l1JefTI 1eg.L11°jlpl~tl, J\.~ ~ ™157,a mc't.oda ~;(}m popffl\\ffl dłia•ac 'R il \I,
. _b pfahfOmJilCh ·pr7-ę1.0ll ,yc'h:
eOOD·· se~~.rSt.ll~@toJOiłS
eOJ06,$Et.iłkr ~S':.att; ~o 9.5-
tR$lOO:S -11td roo;r~:ocs ·
Obic ~)' fl.~ndlcliO'i' 3om:1 c i,cn ia 'kQrl)' >tuJą łwdc:r [1 ra: 1,tęi»; c,irnia oli'.iil)M
oapoczt(lku tego r rl.r.iall1;
R)'S\iijcmy czarny pros.tokąt s2>1'Stk Le obicby na t"enic- zost tją_ t k samo przydetllnfolit.
ie j0S1 to rozwi mnie <lok-ladm:. Ii.: .;fi.½t jes.t ,vystarczajqro dobry jak oo. i;ot.1"'leby li -
Tale uapmwd~ nic VJYko x 1uj~m„ w tej chwib shadera: prost •itl [)'SOWWł)' pt 112 e~e
.za po.mocą ~deJini® Slnych 'li,•cze~n,ej \ ranoici:
1
,~ Jj g ome-t~a obi,,;l-1 w j~st ~fożoi'I , doda1kou1f pncli,it:g mot~ ~m, owi rproblcm.
Mi u , 'ciąż rń sz mo1h ,.~·osć uhvoracn1 ~zej s.i~tk11 FO" l□ic:nr • b t oscru-.m ".
Oma"- i n3 k'fflJ1ik;.11 wymaga, y . i!l a był.a śc d kJa.dna. ~' pral'lti )'ltl \\')Ta
~ą PQjjwi ię lic:rni:: ru~dok,J;rtdnm:ci . Z tlrug1c,j suony. jest; $1a1 jl':St zb}1 z.fo: Ofl3.
obcią.1.epie j0ClnosLki grnfic-7.Tlc-j mot z zmui js:r.yć, optytnaH7.J.Jj c am rr c-ch.a11iirn 4!t -
iow.a.nia. rro Lem ze .t.byt proS1) mi si tkam~ xwi iany j~• z t m. ·i 'lbyt mal i'
1
tr(iJkalÓ\\'. probl m zbyt r11 · it:j rozd;,;ielcz~t i:!tk1 ro ies;G fOZ."""'·i~ć po~z ~ir;:i
zd enerowan. d1 trój ·a,{ ,v. Tró1kąt 't skie po:r.wul ~ 011 iprte.>U\1- a,me odpov. ~~~111,c_hi
wie-m:hołków z n. rus7llln ia s.pójn · i pozos.t::1'ej l .se1 O'biekru T In~ rt>ZMW,IDI!.;
5elbuje nVidia w 5\-VOJ,CJ ,mplc:nl ·nla ji c ie111 pn..estrLenny~h
r!uno v. tkidi ~•~, cit;niow,n ia pczcstrzenne.gc>. efo ~1 ten "'. ·1ąż poz.rn.•~ ni )ko,.
03J>. lednym z. problemów ·est fakt. ie w „ Lk• cienw pos-u 1~· . lffll m,~k521.a,~m~.
nim,'tMRe' k_ra"·~c. L ii; jest to joortak poobl.cm 1rudt1y do 'W:Z.~'~i\'l-Ui'llll. ron~wM:. ~ L~~,.
i~ te nier-ó,.-; ,oś.ci bior--4- K:r;J., ędztr; c;eni powstaJ~t w fDLe:J · :tł. w klory lit IJ:óJk~
418 ~Y•hallilłllWJMc.n:l:łlt'ID•••--~•-r Iw
R,■untk2&12
•~-,,,• ckli
~
-.,m.tajq,t';l' ~ :b)•I
nub(J m:Jil.tl a.łci
Jtadrl
twonąoe gkbię cie1:1;a ~-i-oi~j~ si~ il'l~ym• ~~mrn abe,: m~i 11 ~n~. l O w
linie c-ci~ii są odJ:10w1ed~1Lin~ :za TirL-erown . mkrnw't~ t1c1J; • w nasttti , łaui1t
dzi;d~ ~ 1edinik~ któta je.si ~wion,.'il ~~ '!I ~ • rL) l'IJ ~
Jnnym problemem jcst co., J~c"- tt.-du\iJ<il""1a, ~c~u_ie ł ~ poprztdni opiera się Tłil ~ - .
=
1
Podsumowanrie
Potklbnic jak ,.,.. pr-zyp,aclłm jnny~ h L~..: h111 k. ;r.1mim L:łC:t.J)1c s2. ,; . korz)•:ny:v. ('fi
nim\;'fill ifi pr.2e~-;1rz..:nne-go. pow in it!'ne: l'\W:W;J2}'i.: \\ _lj stki(: argumenty ~ 1 pmr-iw. . ri.t~
r.en nic j r.: t do~koru1ly, j"-,:loak jego r1.?zultat:, są o \\'1e-le k;psz, niż w przyplliiku SA.Ml '•' ·
cien1o~nia nil pllS.ZCZJmę. 1i.i.c·i :-c h:p1cJ n cl Jr.: s1~ on do ~tc,s(iW;lJliJa w aplik~j3Ch ~
stav.•fają ych wint nec-zy-"'visLy Poza 1ym rnt."Clrmn izm c1 niując> jes• oo 1yle prost'/. e ruc
ob:;iąfa zb„ L mocno jed~t.k i pfi ZI\ej, Ji;,dn.ik:r.i:; ci~nie przt:sttzr.:nm.! m.. ~(l w ~ w ,OS
1
postriępion„ 4;:h luawędz~ r.zor ~mych ~ ieni, jt!ltb1ak nie j~~t to i..:fck1 1.hyt ud~U~ •,
- • łllł:!18.41. m----•••2.c1111rmd1• 111m 411,
f?Ozdzfał 29. _ ...
cienie -- cz.-e 3.
&taPY cieni
Cn:~i.t: ~kie ko ~ _m~r:mat i: ope:rat:je pn.d!_ata1e-ęa ma.ew:~• c·
11to\YM"t ~mCJ111is ~V.t?.ględrui)f(I ~l. u C:~ mj,r1ajc pmiien o b ~ ~~
w ~t1 torzdzisJe amćwtmy mapo\lJEl111~ (ir.mi - ~iki. w której po ~ pi~ w ~ •
. i i:lC _m 11 '"' k.Ol'2)'!;tano.~ł12i111~,y .~icni~'L'.i'ani:i piksett (:mg. pfż,d sh•). J'di
i~ per , ,cl ,g_m~zn~J obsłl\1!1,1.J~eJ tcg~ •·~ ~t'dla11·
kart ' n_iit IJędziC$Z ~ij
t.orn,c ~ 1;.H.w1cmc-J ~ tym ~~AZJ, le, tipli~c:JL tt: :bla.cey ~o OC'l,)'''•.;,sck, k n1t
l-ld1~ C1 do :UfOZIW11A 2: trc:~c•:t t :o rozd:m~lu. , k{Órym ~łan omówione- rut-
::;tt_Pllj Zl.l admtt'IJ' :
Dla dowo]:m:go punk:tn w prz.e-słrł:el'li mot.na ,,y.znaczyc, ktor pomiędzy tym pt1okttm
a ll'Odkm ·\•.riatł~ a 1121~nit: ublic-:r.yć jcg dług~. DluSość tą NłZ)'Y,amy łleąoi~
odlegfoscią punk1u od żrodla :świalła. J"'tU na drod~ od żrodlil s ·folla dO, punktu d.ooc-
lowe •o n1c .-.najduje sii: tadt-11 ob1ck-r. omac l.3 to. ;re puokt ttll ji:S-t lx:zpoś1edmo OS:\'l,1ie-
1laoy p~z ,o ŻJ-ódio ; tym wnyn1 1t1 e :z1tJjduj~ stę w c1en•~ (w odniesieniu do L~e koo·
1-:n?tn~go irodła ~wi11Ele). Jd1i nalmni asl pom,i;dey zródlem ~wi ·Ltł11 a pu.nhem (kic-elowym
2naJduji; ::i i 'i Jaki · obiekt (czyi i 01.Ue,głosc od żród~a do Lego obie lu jest mniA:j ~ nit
odfc!!:głoś.ć: lbt:2pośn:dm11), punkt doecłowy jcsm \\' dc:1iu rzucanym pr~ei t('ln obie.k \~ ~
wi c. t.c mustmy po:zniłc ht:1.po · li'i=dnią ·i r/,ec0 ,·i~U\ odk~łość. jaką pokonuj11: $1t\ intlo n;ł"
1
\V tym mie"j~u z pomocą pr~ychod· i rn.;c!h 11i:im ci ~n1ow n1 a lębi . cpi ::my rni·
d2jate 2 . Dow icd.xi1dc-s 1 _ \•i.rówc-zas. ~ me)i.ń.fl ut,'il'017.)' taki mechanizm d\:niov.lJl~
tóry rentknn, by odle~tość z.a pomocą różnych kolorów. nkit 1102Wiązanie d ·~~le
Mcllaije się do, ~orzys.t.ihia ,,,.f tr,;chnice m po, ~mia deni.
~ ~~
.. ~ ff• ,
~.
O\,J.jt'łlM
,dal Z) nl c-Lapie :ws.taje ~korzy U.ny mechanizm cieniowama pikseli. łi,1 6ty porńw-
nllje odłeglo bezpo
· red111
· ł (_pt'2e w w:lrtości koloru pikst:fa) ... ,...,ł,1 1 •
ho......1,,
... _ ... ___ 'rlll
u ..,... cg o c1ą
pokon •an !rz~ •
sw~• _O rta w -UUL.C uu z:ódla ~o dan~o punkm (kł ro przechov.rywa-
M ,es-4 w ~ks!Y-rr2eł· J~-sl1 wartość ~ !oru J ~r w,ęk za mi.. wan _ tt>\slury, mecnanizm
cieaio~an•~ p1kseh_ ,,..,e, ż,;; dart_ . ptksel ~Jduje ~łę w cieniu, w 1~ rn ż. mu przyp; ć
„
• " " r1:d111ą .anosć ko!on1, Je:)ih natommst te dw,_c łłrtoSCi są równe lub pra,'V'i równe.
s.łano\\1 i lQ tnformti1cję. że- pik. el nie jt."St 7 ~icniony„ Cała procedura re ulacjt ·a~oru
p1 •1a w zależn •d od cł1eglo ·ci zo · rał a . 1.:C2ł! ółowo opi · n w rozdziale ...3'1 , tlC'I
jed□ak paini ro o paran1i.:1rac-h w n icj 'i.V}'Slępu.jąr:ycb.
rew c-i~ni.
Ta · w skro ie pr7.cdst~WL3- sri; idc.'ł . toJąC::J ;(_;.'l mapo\\ ::1mcm -~eni. \V rozdzi li; 2 · 1 m:
u(zyle · się oblic-:rnć wano. c1 I ·h1. hip \\'anie. ci~n~ kol'Z)•sta z k_1Hm 110" ·eh 11~l dz,
poróv. nuJ~C~fch 1-: , •anośc z wanościorn1 koloru p;ksdi. ko1eJJlj'Ch podrozdzi lac_h
1 ,~l
omówi~ kjlka n.o, )'Ch z~gadnień. któl"}ch 7.rozum,enic jest nit:zbędne "'' cełu ~l-OIDWallLII
on:1::1\\ ianc-j mech mk i.
.. O Q16 Y • T....... W)fłsU:W.b.11.,a ~ ~ ....._
Rf•uneJc 29..3.
r„ 'IT_ll'a· n ~ )
-......... _-
nu rj tro-:4:Jd<=&l--.
r.tl'tl't ,::DłlU %pll.lT~
ud:emu
Pl'Z} L'\\'\lrllniu obu r; sun ·ów d ·, ·~ ~ ~ll!f i:, o" ama ~ t~lll,i .ue był 'i.\: ;kol7}'S't ' :U'! 'TlltCh>.
nizm cienio..,,.anir• p1 ..;di - w1<l.a~ r1.1 nach tylh• t,;l Lur"· zrrr pł'\ '3r1ą n ~~- Wrhv.
1...b,t rus i 'J ro7.d.7. dt'zoś~; jt' 1 OCZ} "'~·isl ·• \V 11w1n ·ncu: po,o, ·nyYi-.ani~ lcglet5(1 n
mcdwl,m, ii:niO\\ :-Jni.a pik ~d1 utwmzt,n_ • ...:J...: i h} lb:- kani:1a.c;;L i pMLrb;f~ony. 1t: ' 1
Io CK'0"" i ·ie po1~d.1u~· ..: t'ckt. L"tin,1k " p,·;cy1-.:.11H„11 ni..·zb)i ..,.. }daj nr-go spr~u wb l:vm.k1:
'l;ij,•oln ·j pamk~• le ·r;fur ;,..i.a-sami tr:1..cb:1 1;iki n!.1ultJ1 lrt.:tki.:..:p1n.wać, \\f ~ ;m ·-•
le: · Lur.a J2x32 jc:!!i1 DUJ~ :rs:zyrn r,r7,}'(',Ldlw:rn. R~ ·un~. 29 pr1:oo.i;~ ·ia po m7. ,mci ~
·•alk :i:t:Jl.\:, wkrorL"I tym rJ.ti;rn w~k( r.1}~t.111 H lslur~ -i5~:-:_..Shp1l el1.
J "'id r:fc ·t kL Tktl\\') jcs.L prali ·1c I k 5ar no dohr) J · w pł"l.}1}adlru te ~ °"
r-0· t3ni::J :na r:> sun · u :2() 2. mim o A"" teru zo..,,~d..1 .r.:c-10 o\\ .ai a te · tum o rozm 31"~ lłli6
~ 1rn1lnl.!'go rol'.rn1.aru l.nuh:.a~mi.: d lni.:J grnmcy ruznuaru IC · UJ)'.. rPrlY ~r ~ · ~~ ~
zacbow:u,_ ko111pro111i pon• IXlt) ltdffloŚCi sc~r•s 1 ":rd3jn,os-.::1Q Jej n.md,!7(.''~ nt ~
kw Iii e ~ • m~JllÓ\\".
1enderawan1e do tekstury 1
\\r roz ~owii.;dl:tali: ~1 •• ": Jaki po cit.i prztp u\l. ,1 1.43.,; r,;nd(!ro\, ~nh: ~ e-ny
131,: :- •
;i: ru;. \ ami;m ,,dorn,, C:JI •l ·bt Z fl' 1.:7A'llluv.. !'IR) "-t:.i\~ ·.1....u. pt~-l,,lad pr,b„'P'fO\lo 7. I
rrodemv-nn1.: do ri:k,tul) . ,t pu r.?:i!dni ti trc,m,: d~ s ·u1c.n\. h ~m)' 1 a l~m· i 1..H.i,po1w\·,eo-
n1 o \.\, •boltl nu miai n kk I ury - \V 1...-J L"h\\,·m pci:fr das.i: JUŻ \\, S.l} Ll.,ti.: dt:11\i,;nty. aóre
01us..sl ,~• \.\ I :dm.1 c:11l .'
l',7,:\,'J)(lfflmJ bie · '-' o run ·13 1 · " P<" pr.r,..~mc-h 111 1.mł eh \ .' k,lf •
cowr:- fi · rt:111.lcro\\,. n i. uptL·ra.ly ~ie.; na pn. · sztlJ.ł ·c ·
łk1 na OOp.o'l.i. 11.'"1.i m,.... n1 1t " h5 arite v. · 71
• p- ~ ",d I i1.lr1..1 ta.:~ n· L:.1 ~ prLt:'k~zta Dt:J ni eh
ł°'\Lmrj m~1' ·mal_ c-1:n:'J :Zilft:-żm pomif to~"t111cn\ p „ 1e
'1 -~-m mu" prl.t.:-.Lr.1.~rii" rem, T<• S-11110 mnrnu. i10w1 ·d •
J v., ko Z} l:tua Ja
1 i1:kt JocduW) p r ·t•su r..:- d~cow tJ•:i K.u.d ll"ksd
n i.:, i: zm1JdL1Jt" .u; \'Ili' lon,>'111 rni...-jsru m.1n dtw;ki ,a tf1So\,\: 1u odpO\\ d-
ni fi 1k.:n rnall: 1,,. 11;-..: zn a..·li.
,.
Rpunak2'9.&
Wldbk.: ptr.,.w:Ji
' lo .mwrła
~-
~,.,, ip,.,Y htln)' na ·widó
W$E:j tkojtsl tak.j1Jk by,c powirrnu. o. p1awic .. '\\r pótrz~dnc te '· łury rnąiąWaftOKi
od zera do j„'t'len. :a 1.akrr.: ten me jes.t zakre em. w jak ;m odb. ·ają ię: przek natcenił
widoozn4:"j praes.trlln i. Mu.si:s:r 1 tern do ·c,n3 odpow,i.:dnreJ 11nod}f-fii~ji maci~·
•il.
pr~~"- M ,:i(.n wykor1.. .!łlaQlł '1VlW 1 odpcm ie :nim dzi&l~mij.'ffl m:darutycm)m.
l lutSi pr1.e ·1mąc I pr-..«: ·1k:3]ować p07.0Sl3.~t! pr.1.d.cs;ttiikenia Il~ odpowi dnie wspólrzęd.")C
rekstm. ~asti;puJ:tC)' m1(rr'rl(7iJ! kodu pokazujl"'.. v.·Jiilki • pt:l&)b rnożnll lak maoitaz utwOl4) ·:
301.wi. '. >wc1e z1~ ~tw.,•.
lo.:it Prz s O S1 • CD 5 f floa f\ D
Ze ri1C!.NG~1er1Te,~tJr. s~zeo•(03D~N
t1erz ~stur1 _1: • OS .
H - erzl f Sfory 22 • ·O Sf
HdCt\! I e!~ ry -:n -
l Of.
Hiac1et2T su .:41 - Pr7.e~.
:idc1erzl~k$tUr) 2 • P~t~s
-~~ •
c-1erzT stur. ... Ot · .
ftl8dl8RIZIII c1en1owm11a wierzcholkew
- - Ili •
•o,. co
,•O. C
of'o:, l, O. '!'1
S."'. ', 0, CJ
Kod t«- j~~ opio, any z shadcra [ ,r,1'e(lep • W••"'=-•"•i---'- l......,J,. ,.-· om. bc~poś,rcdt1;ą ndl~
pomiędzy f.n.'idJem v,•iatra a wLt"ilchałkiem• . ~ i e od jfttuje odl~ ad D,O\\'ej p4~
cqznr~a ,, n~k n:mo:ry pro!ł' współc-r-~nik ·k-:de,.,.a,nia_ P1as~ctyma i wspt',kz:)'lllll ·
·alow.ill1m muszą b · tak ie sa_ mi:: dla obu prze-biegów tendi t'O' acua. oovrism \\ pmciw-
ll}m '!,\')1)3dku rm; h<.,-d~ie poil-itaWY do porównyv.jW'lia- Kooc-<lWa \.vaftOS - glęm "l:3'1i )'\\' ilili3,
jw~ r l i:
~ rl.~. O. :·z
s r l, r: l, t ,
l rl.i!, l"'t !.. C OC
1apisaną lt~kstur2e.
iJO , r UL2
Ołwiethmie na scenic nie jest zlo2one i slclada 11t ;r, ctęści ~
ołwietleniem otaczaj~:
dp3 ro, -es. va
!Md o00, '- r.lf. ,6
- •
!I~ i'
W ~ lej~}~h limaeb .oh!i~ są ~'Sp6łrądnc ~~rur w opi~y v . ~
śn.ieJ w JC'd:PIJS-ke (: 1emowam11 z.()Slnło wyznae:&one poloZcme wirmc:bot~· '\\'Cłt..
staniem pnek$:itakeń kamery zawartych "' stałych ci) do c3. W:s~ i "i)'~
naromium opaJite mi iiw.ck ztałceniach ~wietła. które mwicraf •ę w saa~: ~ '\
~le te _pr.l'A?('howuj!l mat'~erz kcmka1l:1owanl\ z mac{erzy świ;:nJaJOt:ąz ma •. t20 Qo tt.'3,
tekSłt.U)'- Om.iwii1ma j4,.-dnOs_dm Ct~iUJą_c.a dtik>onaje obl~ezeq J!l()pł'ilVt"llY{;::z ~~
tdc$.Wry ~ pc:rspektywy f.rooła ~m1tJa dh\ ~tlć@O obiektu majduJl\ćego ~
pod warnnkiqn, że od_pnwiednie wartości stałych nie rostały Z-modYiiko sir. na ~1e,
pierwszym a dnmgim pr~cbie,giem~ • wape l>Olri,~.
, 'l ,. 110, cEO
• r2 ~, vO. c:21
~ r2 ;_. "10 . ~
dl)4 r.2 fi . •O, e_l3
Pierw zą_ r.leczą. jaką fHi.lt:źy wykonai: 1 j i,;:!ol .zdi::fin ic.1,,,.-:-:111 Le s,ałych:. Pii!n,\·sza stab ~-
chowuJe w,n1ośc pE7.esuni"i ia. ln3trukCJa r-r-1 p ,rÓ\\'DUJC daną \\':.'u1o\i: do o:. l~k M,:C
istnieje p,otr,_eba !i.korygowania pc.lro\, nyw. nyi.:h wa,1osci o 0.5. Kolejne d~•ie 'St&te·w~•
czają Iub \'t.'}'łącznją \\'ill1~ć ~ wi..:-tlcnia dla danr~o piksdtL Je-dnu. tka cieniowł.lr-ua ptkseh
i;: •-.J-nl,
s;konf.1gurm" ana je ~ tik, ab)· całko\\'licie 7at: ieum iac obie kl mfljduj · i~ w cieniu,. j L'W~
może z w rym mtcjscu dołączyć j~zczc jedną stalą w edu 7,a ymulmvwia oiiwu,:d1..1lUI.
01aczająccgo:
tf tO
~ :r.atern rozwciąit p~es parówn)lwania od .
· .12.....Jc,5Ci tw,Zpl)§ri.-dttieJ. Wynik będzici wsie wa' 1C! '=J1;1'UJą~ 'PO"")'~ Odli;:gło~ od
~ ~ SZV ,ub nm.1ny tero;
rl 11. (I
• ńi łJ. c2. l
a ·oaku wart06Ć rO 20 raj przcmli'loł~m prae ' W10$Ć oświe1.le1111~~ co ru..-ąo.a b,ądź
Vi, ł ~ o " ·ceclcnie dla mIDli:zowancgo pik-sdti~
l ril. 11!. O
Apli.ja
()JJ.sane: ,O'Ml} ej j ·rln~1lu ch.:niow:ania Y. _ ·om~łl: wi k zosć ni 1.będncj pr.lCY, jcdollk
pli'lrncj:1 fÓ'-'"'lliC7 w~·knrzystujic kilk~1. irtlm!~,ują_cycb fun tjL llo11thez:i nie obj:;1-
in:iaJf!l'r'I ' Willioś.ci p] ikó\\· n.,gtowkowych. j oon~k \Y OnJ:)WULł ,j k."tnnlCe dd"iniO\\'iln)'dl.
je$~ ~l~ka nn"- (:n składow,,•ch "·"·iątnnyc:h z rcnderow:]n1cul do te=ksrury. N351~ptij 1;)
1
łaDO\" • część ph ·u n.;Lg fó"'"'' ·o"'t: •o ort1Jiłi'i-\'iantj al]1ik~j i. P •,lny od Zlliajdu, si~ nn
zonym CD:
~ ~o~un~\t( >.
l'0\'1 1Q'C-U$t(IC[kl(elPl'O' J
~f Ut z ade O.
ast~ic buf« \\'ierzcholków R!ndauje nkwit!lki prostokJ\t. kto')' słuty do
tdl:stul')'; ~
I...P(HRt'.CJ fRlt. FfE est8u root ll!r? l
To b-yły nowe kJadowc apJikacji. Ti.;rn.z pr.Lyjrzymy się L'liduórym pośroo funkcji '"1·
korzysta.D}'ch , samym kodzie. P,milcj YTl<ł1Jth1j c st't fmgment funkcji Ut rlSkla • 1,
Po urv ·on.cniu uwtM:b jedna~tek crenio\\ania wi~rJCholkt'~w n~ tęp.uje z.al1Jdęwamc: i 1Jł\\-o
r"4en~,; j~dnosUd ch:niowania pi I< ·et; ~ r~xt.:: l s.hadr.,--ra ):
Pixcl oo.tlc:-r jcsi mrmlow;my dokładnjc \\' taki sam ::,,po~ób, jak był · monlOW-ll.llt:: " ~·
vertc;i,;: shad'.ery. ~, p~erws~cj J~n1i 7~ ·fi11Jiowany jest rod:z.~j hi!~.h~ra. a od kolejl.iłaj liii.n
rozpccx:yn się w~ ciwe monloi\lamc sh dera:
l (F lLED( □Wt.As~ leSrnioo Fr ··, p
1,a\\ aders\\Srniw.'Wil'\llp ~ -•
D. , L o-rSh~f~.
· ... t~ ,:.iSnaiie -a~
re lll E_fAIL,
{
Niljpieffl' .zosmaj e um'it orzona tek~rura., ktora będ.z.•~ celem renderowania~Jej rozn~ar po-
winien być roWI\ co najm111icJ .?5óx2~6. Ol.rulo11y jesL jedeu p01.iom mip,-m~.P{ffl':tnil..
7
poocB\.vaź tylko jtiden będzi4; \Vj'korzysty'\ ttny. Dziek~ 211ac:rniko,; i edu -renr:forowania
u('IJldzeme wr .• że dam1 1ckslura ma hyć celem rc11dcwwani~. ·eez tego znire:;JLUm rtn·
~erowanie do 1e·k~tury 1.akończ.)'«)b7 się r1icp0,wodzen~m. Jdt~ Two.is l(U:la graficzna
obsługuj~ jednostki cieii iovnmia p; ks.di m w;erz.cholkÓ\\.\ oic p,oy.1inny ""'Y~•ąpić tadne
p,abltm'IY poprawny111) ,,,•ybnrem celt'lW ri;ndc-rowanl'a. Zdefiniowany fonnat ies\ fonna-
•~m okf~lajqcym wyłil\Cznic.- kolor.
1t FA]LEO(OOOXCredl t?Te. • ., ~(m_..-.1.lr i:-,d1fl 1eD.1D. lEX_Dl~NS! ',
T-:·{ o• · s·• ••
1. OJOUS." 1E. 1t[•;U(R t/.P.CLi. OOUt IT_ l ~ -
DJ.OKO....rF tAULf. .. ·~T~~sturaCte, Ht))
1
_m ,1s1 •
lf ·
'
lt :,i.1: .
C ńl CU! id~}
Zanim rozpocm oma"'i nie fu nkcji RenderuJ, powiem pa~ zdań o k;J ~ cłem
kr~ 3.1. st~Uflf.:o,wo wamc. t~z ni ·wym gają_cyt~waąi k odu ~ódJ~ ego. Po pkrv.~
n:tll!fy ,µ nuętać o c-qsz~nm ~'-l'Q~~nych obt~to,,.,._ podobmc Ja · to ro~my 1, a:idym
innyni obitl-.."tc~- ~ 11a.sz~J ~_pllk ~• Jt." t to r bmne w tand1udo"!' po$6b, s.osov.~
dot •chC'ZA!i Ji!ł1 t \t kw~1k1 ą poprawne. pm:-'k~~~ne "ą datef 'J, p~ypadku p' d
shade-m. jt--go uc,hwyt zos1n;,~ prac;:kazyu n y do funkcJ• D„ e eP, x.e Shade •
1
apJibrj; iwom.my .,es4 rów i.a: btifor wb.:r...-..dio1kó" w którym ~jc:my P~)"A-~
\'\l
nkwic::Jkk okno poJllO(...H przy d~bugowaniu. B1.e..Izie to prostokąt um· rzooy z P ~ -
ronyth wspoł-rxędl'lycb, Kod oo p wiedzi ln · 1..:1 jego twur-L~n ie jt:St idenl)'czny j óJa
pełnoekranowego czworo· 'la ;,, poµrtĄ..-d.111e~o rozJ;,J~łu. Jt:dnak tym ra;,r.crn jego ro1J11· ;
są mmcj~. Prosto ·ąt tt.11 bę<lzi~ pokA:1.}"' ał cek_turę bł,;;;, wpł~ 'U madr,;~• te lUr}' hlb
1fJ0$7.czcjóln„ eh ~nó, 1cks1my, oo moit: p ryda sit; '"' proci.:sii; IL'illwania e·w11.·ntualnyclt
bł dó„i.· w kodzie apl ikatji.
\\'•~ szos.ć opcrm;,:jl kon} \ '.111 ch 1est jak r." yklc: pt71.!'/. fonkcj · ender J.., P~1i.:
1
j k ,v p . pnedn ich apłika j 11cl1. nie ukrywcim, ii..· n ii: j ~~l to "cn.J:3 zopm ntahzowaM
Gd}' zrozum~csz ju.'l d:tii.lfar1ie pos.zcz ·g{1ln. (·h opi.:mcJL moz4'"-ii1 spróho'n-ać zrnoo~ft ·o-
wać •re~ć funkcji. prz , p2cszaJ jcJ dz i11łnni ~
·11 poc;n1tku fim tji twn~1. n11 j~t mactt! z te · ·tu~ opi · tn) ,,-rz-'---sni j w spo b. W ·o-
r1.:y. tuji.: f'unkcjf qe deru J" • by fragn1ćnl h~1:1 hy~ dobrze v.•idoc1- r1y w k l'LC", joon:1k w.
napnnt tlę nie ma sensu tworz1,.;nic I j m:.1cu.:rzy ł'•.1 kai:d} m razc-in. b:-pJCJ bytoby I\\ o~·
Jq na początku aplikacji oraz tylko w l}'ch mcmlentad1, \, kl 1f} eh zrnu.:niaJą si~ rozrm.31)'
lekstury.
DJO ' TR]): ~ '""te r-. e •,SLU 1 ,
lP •OS T (0 5 I { lo )TE _Dl
zeou DJo~IR 1 )) •
U'lebowa kLC1 w~d swrntt~. t:r.. tor ,ac::runku ustawiMy J~t do ~lku uli:ffldu" pół-
ra~tl} Ch- a zamo1 _zo tam~ ~"') ł~) ~o bad.era pr.1.~pro\\·adzam j,;go n0t1maliza · .
Wt 'l11 samym l.:.1.S1c ddinnu ·m. mev. u:łką n ć oświetleni oraczają.cego: J
t O , 0 Qt , 0 0 -. 0 0 ' } • Ol "' at I d ,
a la}.
t(S er~.. 1a la. ~}:
C „ rn.oc. •O
_..4J1z~d2~1tJJO- t(6 oczen,e. !).
Do mworaenia mac 1cr.r. ,., 1doku dla ko1icow go rend~ro" ·:mia W) kortyStuj my pozy ·
J i ii ni~" 1<.0 r7}~l} ,.--1hhy,my anun:!cji, rna Lerz ta mogłaby ZOM~ uh\·orzona 7,am2
po rozpo<..'7 cm d11abnfri ap1•kacJ ~-
03D C : 5 O'. O
OO(J1 tr <l.! u A(OOO )Pe Q
o . o o~.
O· JO· , ),
ci ritt L:
~TRIII łiaelff.ż,Sh.111:teraT S 11rf • a •
1/Ji~l• •
e-ril'etst1R:,:
n..,.,.. ......... r, Jt.ans e," zSilader:.,Siiii;, I • c ..,
_ ; : r Jr-a,nsf)l)Sf.( t!f"l.t;mdel'-t! a . AMac !I .
\\f c.7Jl5ic kW°dnja pienvsmgo przebic..-gu zo~Je wykor✓.)rstany tabz sbllder ·o cl~
rom fÓII}' w mzdljal~ 23;
era--1.: ruisl~uJe ba~ '"'arna faza rcnd1,;;m\ll; ani a. !\"s początku mu im określ tć: oo rtfl"
dero\"'ania. czyli LC~turę. - nst "pnie cz szc1:ł,.HłC s~ bufo - ~ :i~ ta w:ykorli} ;r.~ !l1
jesl prL;ed każe! r.amk{b ·e\1nak jest 10 czyS?tJ".Cmc domyś~go bufom t,ilnego, a nie -~~ m
c~ht rendeirowan 111. cl czyszczony jt!'S·l n,, kolor bmfy, który dlo sbadt"rai odleglo. c1 Jest
J"Orln•nozn _czny z najwięk zą mo,t liw o lkglo:kiq.
c1erz~~ a 1~. ~~ .
yek~m.. do ktÓrll,!~ nast~~ rr;ndcro~n ie. 7.awi~ tcrsz sce~ z mlc~o~~ą głębił\ utW~
r20rnt z punlmJ ~ r~m(ł ~tdl.a "' mth.1. Czas więc na wykor.eyStann:. Jtc~ da IUltwommia
d.eńi n ~ 1s.tt;J ce1rue. IPli.:n\' zą r.~2 " którą p{)\1 ~m ....~iz zrob"ó.j._-st Prz.)"Vll:'6cenie
dorn „ hii)·ch celów renderowan~ 1 domyślnego wziemika. Po tych d,,rffl:b opcrnc,ja.cb
urządzenie je l pr-itygoeo~ran • do ,vyrcndcrowania, ~1.r"y'kłt::j s.cen;a.
~ iiif.l{"!all";,~ru eroo- •;Y-- R.~a~ I a get{ ro\.~ or1y111 ' łoi tir Zł:
- zadzemeD$0 >St>t ~1•t(! ne-:11' , ln:;}. -
~n-a mi: je~L jes:,..czi.: kompletna. \\f )•lą·c-z.am_. pu.d shackr, ab; ni11: miał wpfywu ani rn
małe okno, o którym 1TIO\h 1lism "czc:rnicJ (:ł CÓT'C mt'l~ hyć rromo-rne prey U!UTK~JU11
1
Rysujemy pomO\."flJcze okno w pra~'}'Til góm} 01 rogu gló" ,ie- o okn1.1 aprn<2cji. T~
je. L wył ,ezony. wi~ r,,md(:rnw.anc j...- t wv~ :;.Liw, cu 7.najduje ię 0:1 ~ mrie. Po ll3t)'5-0-
,,.aniu okna. $I.an}' rr.:ndcrn,.,·an.ia są prtywr.:lcanc ,.fr.> ,.i.•artosci ·tandafldO\,')' h~
_.. u za<12e 1eD30 ··S D,
_iJr-?~dl nteO:;:D- ·S El.
_1t,tJr„aClle 1eOJO S •
1_..,Ur1:,ad1.enf e000 >S • fZCI l •
l .- ' ))_
Zał12em ero ..;,,Df 1 •ii l U3DP • • O. Z} •
zod2e"1en~-jse tatecDJ 030"..ll.l
_ zadze- 1~30-,.Sf· a ff 030 · _ .UE), -
}
\Vatt0 rb\i,mjc z,.\,Tóe ił wA·agę lflil fak1-i że v.-ymagru il mmejsza ilość pm;bic~· ~w po,.
.rtiv,;mmiu do poprz dmch ·tccłm1k) n~ w pt~vnydi s tu c:jach l'\~1ęks.ryć \liJ)'d jnoś.c
rL-ndt:rcm ,a.11i;J C3~ko"•jt)' ,..L-. k1 ' zalety jodnak od itopnia złooorioŚici ~~ orJ.Z oó ~gp.
jaką t.-:J~c ffiOC)f p 7k~arlama pikseli mozem " korqst3ć.
P·odsumowanie
cicmiowiltpbsli (us.pwt8'»rwJ, flitle leCbnild ~ 9-
~~ w kólcjnyda rtmbialac~ Z.im jadnik PłR.idc do 1"'11111·• :":"'!I~
t W mzdzi.ili: J2. ..,rmpkm-=111..w;p li.!'Chnil per „mi::,;. _jnł;o 11źchnrk per p,xc-1 ... ~tln
1
om ',ll,' i9fle s~b rt.'11denml'ilnf:a ni$'kcw.k1,-v.-egr1 om.z odb, 1, wy '.On') taniQJ ce l'mili
JX"I"" ptxi:l P.ti~,la d.:llą~LY~l pr-..-yk dom ~-'"' 1..-Sl -s.i~, w ju:.:, :5-p0s6b 11-wo•na 1:ilil~"JIV
'll'..sflJ.e tm:ftni"1(, z (r "'1e'tkllŃ:li'r'I pi..-r pi:\t:], nhy 11Zysk:ac JC"V'A.:.te li:p:szie it:fę fy ~ o ~.
,rozdział 30. •
eśWVietlen1e
reflektorowe per pixel
',Ja' wm roZ(Ui.1k pora,;: O"Stalni z.ajmę ~,,w: 0 ·ę:tt.:o·~fll. "'""---
,l\\1~j :t ~wi,:Llffl itm.. o świafł.acłl \I, Dit~X ... r. .. ~L ~~~
1
· rnowt1cm o morii
•·ó . I,,. • ' '1:,1;;"\'1,r,;UCfll!J w J~•,.,,-b • . .
li, · 17'C□Ob, w I troc-11,: o mu.pach ~w i:tl'lt'IJ ~ 0 kt,6- h ~ c:1m1 LIi
,m -..i.r1U111 tL"JOO~lł t~go roz~· hl h..... , _ ~ d 1. • ry,: . ~\VIC;m łcilk-a sł \'Ił · rh"'·~lę.
w 0 :; •. . • •-.r..,..u.te J no... .Z:Lg;Jd uienH: dYltlm·... $ •
l"!ł,f° pixd { ' ~ • g;idmL"n z tym :zv.~~nuci] -liZ 7. . •- ,,.;me ·o Cr:,,\\~ r.=l1En1
J'•· .r , - .C.L.. I J :J'li.lX1',. [l3il.nmj::Lf4 □DW,: mob:J,a -...la.,-r A
~ n tętJUJ.l,C~ SJK)>t-1 ~ - ·~ l'lr
\\'i• S2'..ł e7-.,_:~c te„ o r 1d1. 1ał u zaw lt;J1J omó""li i:i1H!' tochllik ~D.d l'lrult:tu, j~nak n po-
~ I u opuw Jem Lrud1i: o OŚ\\ i~llen~u ~ pj!(el, kt(n,i: ~'-'JC' s r,r oru pows.11:..,,hmi:j:s:~e".
DJ k115Ję rozpocz:r1i.,: od map :,,\\ cetln ·i:h.
Proste 1Rapy 1
świełll n e
~ruka mi:lfl \,\ i.::Lfn_.:ch byłJ ~O!->O!IVBfia, 1V1 dłu_gl,} pr:,~d po.j11Ml!J11-tm !iL ukfadów \'!'.'rt~.x
i SNXCI łlildt<r. P mysf ~ ykor.f~ ~ł..a.JH[! map świt:Llnych J~r ~ ) pros.ty K~i'd · obi k1
ZAhti1je pclayi co 11aJm n icj tl'f.\'u111„1 ró-11lym.i tclu:ruram i. Jedna '" nich. 10 Z'J.\)k •r:k.5
ddi111uH ,;1 " . •l"'td ob l,;"~tu. r}ruga oatomJ t Je-54 mppą ~ j~LI I oolJ na1i;>.i.-n11! wi:i,łui
dla kaJ.dt.-go 1c:ksi:.: l.t. \\";lnoś --i 111~y ·u · t:tl ni.=J modulujq warh* 1 m P„ z ,,,( ~taJl\«J
z,~,yld ,t.'łrsrnnc. cz,l'l i po pro 1u a pn:~z ~11.:bjt ·mnoioflle. Dl..l\: i t~mu1 C! rnn, ob Z.V)'
mapy ·wrt:tlnej L11c'°ji:.:mni. ~ ro(ls1;.1wową u:ksturi;, o;1 j.tu.ni: - m;.i.:j.1s,11i a E~-- ~t młaej
opentcji j{"St zdc1,.!.yLlowan 11,; Ii:~1r nii. cfokt pł()!",,l:t.-gu, IJ6.\\' icdcm11 ~,· j ·ri:che>lk1.W•°"-"8-0·
RJśłfflł,C 30.l!..
- ~ MJ
O.li l~HO '1GI •~J{J
Tceflni · ta :nic ote-n_tj • w 7)"·tkich m o~lhAiQ$Ci. Jak iie ['iOSiada pdna rna1)3. wie:Lll"la , •
"OflfilUł w E«hnolog.ii rac1~os1tir. jedn· k jt.~1 Letłun'k"wo fotii ~ do oimo\nm.iii. }il:,, Pfl)'•
kład, jt.-śli pz ~crz~li 1 • lampę (llkJ:lOk:,:;i-~ną ll3 ry unku). mofl!!:-7. sptmVI~. by lnafli
~" ·ieiln z~;;, f:ł się ·oł) a , dzięki odpowiednim p17c ·sll, lceniom re śtur_i,1. bili
.mi.szczy l~mpę. mut.csZ c..atko,, i · 1"1: w_ tąic:0·ć o wii!'Lfi:nic, u tawi.J.j , pó!n~c
mk~ · b)' ( i(:łllflY b&1. r map}' ·wi ,lm:j Ztl\?:,Lai n.1zt:iiJ~11n~1:,,- n:i ł-ą ścia.ni;,
1
bwiym pr..::yp,adku maro· Ś.Vi.'1edri · \\'}'11'1:1Jajr~ z;i >iO ow::inia prlynajrnni ·j d" oob ti..~
J li ~k:tń rue wmiffiwu1 mutm:ck:ilurm, ani::i, ~"(ł1t't. mu i l'L~ ,vyreod rowilll!l" d"' h
Jnxtbi ga "h, W pie-ri. ,!"_)'ffl r..:nd1.m1wan..: h) ł) h} tc:k, IU ~ poc.h.La.\un,.·..:. 21 w drug.im 2;0-
WI) b).f nam><int: H apy świedm~ i pr.1qm1" .:1dzo110 b_:,. opc cat1•· nmn:iłnia obu t kswr.
rawriu IPCZ)' mul 11 te-ks.l11rowrm•u, J21 · 1n łlr.r.yp.. dku d\!.'u-:..:h pr'l.-c'lnr-=go"' końoo"'')' e:
bl;dzit lilki s.im. Jł..-'flnJ \\ tym dru~,m prl)rp."lciklJ I l~)Ś(' 11.•; nde-tt,~ anych kl::iti=k ct3 $ ( ~
~nc (l(Z)'\'i,'1ŚC:1c mn1~j~ Spr.1...;rowie mulmi..' JotllfO\ł. .u,il' ,\ ;,.rn,1i.::tąc • pcNlb :t\1i·ię_b:z;a
w:,daJ~ EW,Ot'..ocni ~ny. umofhwi:-.Ją_C' Ft·ttrl rr ,.~, .amt.' ob11 [!!'k'.!,,,11Jr \\' tym · mym lu!3$ł('
z jedn ~ą modyll oej ą: koltm.1,111 . Vi'L ·k.:-tu,5(- k;i rl ~ rn fio· n,·d~ zgodn 'l"h tt :spec· li•
ka:ej.ą Dir('"lX 7 poś1ed.a fimki..:ję m uJt11 r:i,.;~n.H·ou.•.1m:.1. tł:1. 1ęl-.J , ...-~mu nutp)~~-·wic.-tln.c '
się do::.1~1me dI ·;1..t!ro.k1eJ nt.~.l) oobion. r·n-\ •
\\' Dj:n;ctX 8 wprowacb-on() b ~lugę jl'<lno~h.; • p1xt:I _i adcT. kturt! cunov.•ią kołi:jtl}'
niB r mc11i" pul::Jcj, na pozmm1 ~ poJeJy:m.::1 ·c h p1k~d1. ~i'il..i cmtu
1
v. foclwice os.wie1 lc:~ 1
pów~ia •~łiwo · ~ \i,,-ył:orey~Lyw:1ni III J C:t:t: b;nd.r1i::j 1trr)on ch i d nami ·zn) "h m1.1
1
oświr.:llania..
Oświ',etlenie 1
r eflektorowe per pixel
Oblic.mm= o ·wieti DIB n:flektorow~'IO per verte · jes,. mało \,')'d:ł.jnc: 1,: ,, zgl~u na &11}
Q~zarów umhm i JlćflUmbrd i wymaga zn 7.JleJ li zb '"ie zcholków, aby mer.ma b)~g
zauważy Oil\\' • tak cx:zywi t, d'c:ktjak obsz o ró-"mym n t :że.niu oś,. tetlenia. P~-
km<I z roLdzmłu l 1, pokAZal nam~ że k ncowy i.:t;;kt o · vit:tk-11 ca rełlcktorowi;go w dun:J
,mer.ze za_leiy od gc;sto. i -talki o ~wjetlancgo fragmentu. \V miarę j□k ,, . &j nost rt
_grafic-mycb ~ittljc: tę OQf:!7, ię 'sza iatki nhic tów robią c;i~ (,,'OJ'al ~ • tszc. jt."4.inak v. ni .
rtó:yeh prrypadkacb iatki zaw ze p02osłoną ra dJde.. a przykład pła'iika ściana labuynru
żtłwsze będi:ie utworzona pr.l'..CZ iatkę o n1~k1cj rozd71t::kzoscL. jedna rnu I a,y 1111cc mok
Jiwo:.;c \llfgc:nt.m,,ranm na niej zaawanstm:t!nydi efeku'm: oś,, i~llit!'ni~. \V takit:h sytua. Jxh
z pomocą przychndZI o ·WJ ·tł ~nie refkktmowe per pixd.
T~ hfljka o wit:1lema reflcktorm ·ego p!.!r pi:ii: ·l j ·st podoh-n.1 do mapow:mia cti.:ni omó-
wionego w po~cdnim rozdziale:, Podolmu.· Jak .rnllpy cLi.:n1. o~wiclkflic to pol1.-ga na
prtijckcjj 1ckshH)' .z k.iecnmku lródła viatła na sci:m;, · ym r-dJ,cm t ·kcurą lą n,c- je~• joon.lk.
'' ~nder wany 1: odditli obrai ceny, kcz ~Lm obraz,, ·wi ·L]cm. rnf1c:ktl'H'"'4.■go
eirc-em o~wunfcma n:tlektornwcgo per p1. el JC!)t tcks.n,ra o ·re ·In.Ją; a ks.zin.li wrn1ra
rzuainego ze i.rodła rieflektoro\\ ~go. cenarms7 metod~ p1.: \'e-rle~ "~ m~g1d 1.~blicz n
w 4."Crlil określeniia, r::zy wii.;~chołek znajdc,wal si w ubs1ir/c umbra czy ~rmmbra. Je ·1i
w ~numb:ra. to m1riali.:s okrcslre wart<,~ współczynnika Jamk:::i.nin. \Jeradll pt:J ptxel jt~
0
wr~te ~ , ~J zloźona, gd rz w~Lki • te obi icz~nio są bezpo~rt.-dn io "bud wam.· w le · ' t ~
,f fiiwierkmr1 f flcktorowc:go. Przykład '41k1eJ tekstu z1 1al pokazany n.L ~ $m,ku O, __
pamiętH:S~ macica r.rutm, aml::I dr:tiniujc stożek :ci~ ,, który '""'YZllaczon j4,,,-st przt:z
płaszczyzny ogrankzają1.:c i ·ąt patrzcnL, Gdy m Clt!'rz le zen.tanie"' ~or:eysUoa jako
nutuJąca m3cjcrz rcksluruj. c;-t, :ci~t • sto.r.-ek okn.{la kszt.alt i:-z-1.1to,..,11mt0. ~ przypadku
kdo\ ego 0;1,·i~th:nia ri..:fl .torow go. ok~ły pr,ck.rt\j poprzt:cmy definiuj~ toikm°lj
ol,szar rzulO\van ia. co .1 tało pr,cd~r.'l\ ion na ry:'iunk11 30.3.
Widać "" minii;: powód dla kt1.Srcgo ohnu :wiada rdlekloro,vcgo powmaen w :a!o: ci
pokrywać• 1ck. tu~ . Je fi" pokrrcie JCsl praw!dłowc. • r, .. ; wa'doi.u
!Uli •· maci~ny _ rzmc.,w· . nta .
\I.I\: - - b . bra J ·1·
...1-zna.cza iaI"aZl.!m kąt nbszar , w pt.'flUffl FU I urn ' e r- ~ _-.: •'1 =vi1'!. ·n zM
V odpów1
•
cdnm
.t. ~.
..... J~
· lY . ·r~ n,wruc
-~ · • (l .1.. \" f·1"n t''
. kąl ośwac:t fl!ll aa tt! 1.;~torowe go. ,., 1 -~ ... - o l 1n m..
lalc:an. ńlu\1111.\:
"t7~11 iei, 24; L- "'f J.e r u1...... -1.ł'lym el ~ktcm tek. rurowania roJIUJą~go. \l ·.zrs•k~,. «> mu •~z
~ "Af
1
~ - · k ':di t't na sciem
~br , to 1.J75Uto, ć Leks•ur~ śwmthi rełł1,; toro,v~ !O na obie znaJ tlJ~ • · ·
.... Ce,M VI • Teallnlld ~ ..... aMin•
JłyaUflekS0,4..
Oht-iirlłi'N~
rtjklafJTYJ.W
k pmb)u
"ii l1'.iłSXylT1 roZWlązu.niu brakuje jedn3k pewnej istolncJ o..~hy - 1arnbnia Śll'lillh"'
odlcgf śc1 od źródła ie SUVJ.owiloby to probkmu. gdyby oo1t.-gloici na scenie bylyu 1i1iide
mni :.fSh! w porÓ\! :ru:iruu z wi~lkością oś.wiellan~go obszaru. 1-·unkqa zanikania nie jcu
jednnk nrudnt1 rło :r,.aimpfem~•llow~11i,p "' nas?. :i ttplikacj;.
Aby j-ił dodać, mlls,imy zakodować w ,,.·,erzcoolkach ,.,,,an.oset odkgłosd i um02.liwit ith
infl!'rpo]~.cJ~ z pikse!an,i. by EU ~bić, koni~ ~~ Jc.-:r,;t "'C .rt:::.TI 1cJ::;.1c poi ii.;:zi;11 i~ w j~ce
cti:niowani:ct ,,.,w:rzc~ odleglo.ści od ka.aJ~ć), icr✓.ch,iłkH JL, J!J'ód.hl ~wi3lla. ~glłl
odlegjośc ta musi 7.c,JS.tać 7nonnalizowam1 poprzez podzi-elem~ prze:, zas.i~g dzl:i.lanil re-
rlektó/3. Je~li fimkcj:i mnikahia yłahJ 1;niowa~ móglbys Ją łan,...o zakodować do \.-olaru
m;;,.pmszenia i wykorzystać do modulow,i1,11ia \\iar1ości t1.:kstury. Z::mm~st \\ kolor.xt mipm-
..,zt:nfa, funkcJę zan ilca.nia moma również llmit:śt;i ~ " ro h:kstu~. 4;0 ;:ostato pok~
na r-t'sllfi:ku J0.5. Piksele zn11Jdującc stę b~isko żródh1 ś,viar~~L są n,mh.1ki,\' 1m prl4.'Z 1.0;
pik!; ·k spoza 1..asi~-gu działania n..-flcktoTB otrzyrnyw·alylry :-.1ał~ w~mos.ć ,anikama rov..11ą;O.O.
Rr,iun.ek :ł0.5.i
Ti ·ksllfftl :amkama
vettex ~ • r .stosowany w technice
oŚ1fietlen1a reflektorowego per pixel
PiwJ sh der w lu:imtj~ operacje ~11 p~ksclach. jedn k w i ~ przygotowuń odb ~a
~ w vern:. shadi:rzc. O _ta1ec2m ·, p1 d h11de~ obli_c1.a v.•a~~ ,,.r oparciu O te ~
i k~r~ry a ~c:rtex sbader Ji.: r ""Yinag.a~., do .obhcfen1a wlaś •~-ych ,, póhzędnych tek-
M)' 1 J.oform • kt6rc :w:s~.ł'ną w <lalszeJ koltJ nośca do5larczo11 ~ do pi el s'h dera. Shad.:r
(k;\\ ictknia reflektorowego ku PcrPiJ.4!1Spn/Jigf1r.~'S,r:
umie zczony je~, " pl m
f\'a poez.ątku W)'JHOW~ dzam: są przeks7tałcon~ ·wartości poloteni~. Om1r" ·iana technika
jl!'SI zgodna ze w zy Udm i shadcmmj odi: ształcaJ ~cym i geom4!trię obiektów. Prunii;taj
jćdn k. źć częś · omłtwianego •cncx badt:Ta związ na 1:. tekstuTnw;;u11en1 rLutuja. ym
opie-ra i~ r1a z,ałotc.(niu. źr,; gemnetri nie je~t zoicks.ztak;:mą. Jeśli zmieri i t gc-ometrię
obiektów na cooie. up;wnij się. ż~ wcżmiesz tt'n fakt pod uwr1g • w f11Z1c eck.srumwaniai
rlUtującego.
-·"· O. cO
· oPos .y. •,O. cl
oPos z. r(I, a
~ Ot?os • vo, c3
1ut~pn blok kodu przeksnałco potozeTiii= w ien.thulkil wej dowego, ,, . Orz)' ~llj · c
ma(:rt.'ra! tek$tl.lf0\•'ania rzutuj ąc.:~-go or-'1.7 U.'i(awia wart~i ~•spóhĄ~ycb pi~"!V.'.S?.ł'J •~-
S\W)'. Operacja ta podc>bna je , ro ,,-czdnicj :; gn pneksziat „n,a ~ ~em ~1doczn:J•
lecz w tym pnyp:idku przekształcenia odw: orowują wi "'rzcholcł:. d~ P'7. 112.em Ił( sturr-
\\~a.r,ciwąnmcren Tekstury omówr~ podczas analuo" 1ja kodu aph~ ~1. Aby popra,i mte
lJiZu•ować rnacicrz. b~d.zies, pou·1ebować ws.zy tkich cztcr eh ws.porrzędn)'Ch.
i:4 o 0.:-:. 110. c~
~ oTO •• Jłl. c5
010 z. o. có
r-' o O. , ·,O, c7
W koJc b Jimach następuje obliczmK" odk-glosd ?cl
&6dla św~ "' .,.,._
~
cB do ~rz,dtołka.
Odnaleziony wektor odJcgJ~śca
7. póm~ 'llStnaktji il Clti~
( )o zosrijc podniesiony do kwadratu. .iisl~pmc s~adcr obhcz.a octw~._,_ ~
::!,dnitoW"llD, uzysbn wymk odwraca, o11rrymuJ'I<' w len 'POsób "'llltość .::::::::,.
~I.a rO • . IJ. C
ittł"ll r(l w.ro. ,1)
SQ 1 ,. . irO 'ił
l'CO r .,;. rJ
tła.druk rejestru c9 zaw'cra oo\l.'ml~ośe zasi~gu „wimhi. Zos1aje on Pl:lcfflll.oto
obliczorn\ powyź~ wW1o "ć od~cg:fośe1_ \li celu 1.1 • sk ma, llf1o~i %.anikarn.a. OsDy Pl'lq
war1os.ć zoscaj~ ZUJ)i n do prcrw '2.eJ kl dowc., v.•sp61r7,_ęd11eJ drugiej t e k ~ ~
m.tJk :i.kładowe .w,stają w zerowoo ": .~
: • r .,,,...,,;,,_ c9 •Jt
Na końcu :zos taJe wypro\,.':\'Jd7,.0n.ai war1nść koloru to2p1r0Qem J ·1i fnllkcja l.ari .
śwj.1tla bvi liniowa. alr'~,. man wal1oś mogłny w korzystać dlo modu~l·i w _Ił
I.. ana!<:1
ośwJetlr.:oi:a n:flckttu-owc.go, bez lkomcc:-znose1 stos,owama ru.xel $110.tłera. Doki.aa.,
• • • • r •
Kc,lej~a li~i je l altema~\1ą_ ~~r ·p1,1.j_r,; lcilka._~ tnich linii poprzedni~ shanera. Jt)
zadamem Jt=cS:L ,.a.kodC'l\Y ~u; ,,,,,_spół~~n_llrn ?..a1!•k~1a d? k-o!oru ~msZłZnta., to tw.aloia
rru,~ 1t · ·twy. Taklc rozw1qzame n:t_i lepu;J funk~Jonl!łJ~ % lmm~ funk(Ją zmihnkil. W'1t.(l:,t
odJcg!o \ci zos.ciJjc pr1:c ka!o,van:i p:rzei 1..a~1'tg osw1eilr.:nm. a ,1.')mik ooejmowa.n-)•jts:1:
od I .O {c9 . ... . Od tego momcńtu kulor rozpros7_enia p:.Lechowuj~ wartość ws~'tW .
xanikanra.
- cr ro. rl ~- c x c0
N:i ~unJcu 0.6 zo-.1:--1 fa pr71.:dsta\\.'10na apl I kac,:j ::! z zasmśOv.'.aną metodą kodowilflia zmi..
kania w koh ,rzc ro1.pn1:r,;7cnia.
()IJ'",l_?IJ17i8Il)~ wyri,k :ro ta3~ ~• drug1eJ hru~ pemn.oio~y prz~i kolor ro,lpTI)S1it."flliił. heder
i.J-H,: diziałat popr:awme ł)'11ko ' ówczasj gdy w J~tce ci~11towilń1a wk~cholk:6w
en ~· t· h =,..... •· .
lłie zosmła 'lh·lą_cz..(Jnil a rematywna ~c n~ wy.:.cuzy toJąea kolor nxliproszeni~.
I r0. ~. 1 il
-,i, ff). rO . ,,'{)
Opfsane jedno5-łki c Lenio\;i.'a nr~ wynwgtSj.a oczyw,. cie zdćl"iriiowt1n-a odpo\vi..,'dni.cl1 stałych
i maci~rzy w kml.1.ie ilphkai.:j i.
Apli1
ka,cja oświ1 ellenia
reflektorowego per pixel
VI ~ d .,...,.... ,,,_,, I
_._. ,,,,,
mcłl :ian
Jełll w· Twoja k.m1a ~ nie obslugu~ ~ -jcdnMtek. ~ • ...,._ ~
08 ~tcn)wnik re&rencyjny. Pamię~ Jednak. że ~e zmiany
.-
p0c:~..._
~:~Y
~
::.w(dii
dek wydajnosci rendcrowmna sceny. • ,ceruc n:ndeJow8Q.y ~J!l •
4 j ednostki, Oczywiście ~iana tcchrub 1Jie•-.
rowne.i
dfuao.ŚC, ń Jazaałt
na obiektów - wybrałem sZł'Śc1an, ~ wzgftdu na~.._
tactnych ogram~e ""'•Olt
w implcmentacJ•·
K<Ml ~towanej aplikacji. mkj~ w popr-Lcdruch pr.zyJdadach. nic j ~1 Opt:)'tnaln~; l1lałe
byc w wielu mic=Jscach zop1~tmahzov.•m1y.
vo1d l'J ,.acJ. T ir 11€ Re~ JO
{
Na początku u aa,i ~11m~.• reksrurt ih,viartla retlektomY,•~go dla obu faz. 01\lga f1tt.a wy~
ny ,~·alNl jese t Um w technic,c piL~e••.· huded~O. OOdlm\ OzyW5ą ta~_.~Q~figurowwie, a] 11
....,. . a... orto:sci wykrnJ zaj~e poza 7J1"-n!' • . . te pakselt Zllłl•du· .
o- da. •. ,...zy Ul.....~-
o~m11., w • • . • od li !)lłtC-c
•
Sli poza "'.o
- :2.Jtiem :.wi;adi!t ocreym
- .
!,fą wartos.c1 · pow,a aJ ce ....raW\'\uJ tek,Stuli'\.! b..=...
. •ł . •.J . •.il-lllW.,o
w.atne jest więc. ab)' 1e-~cle n;a JCJ kr-.iwęd2t b!f ·y czarne.
,,(f~d ,z ,eOJP-"Se e· uret tł. _ fi s urc15 a i o,t..- l e ~ r ).
- r"adie, co . > Te)( reS ageS a e(O . OOOTSS_A~E$SU, 03DT/.004<~5_C Pl .
""'w jrli! .liM1Ed10- S~tTe rut eSrageSt te ro, 03DTSS_A!XmE~ • 030T łlORt..S.S_C ).
- 2dd2erne0 ->SetJe.r,; yre U . m_ ife .stur a91111 at l0Ref e-•.t c }.
- ~r".UI ieoteOJO- SetT~x reStd~ Stat~( I. OJOTSS_· ESSU. O~DT~OORESS_C
r.,_ zadzff!1e03D·>Set ł?lt ur~Stogl?State L . DJOJSS _• $SV. roDT 00Rt.'$S _C. • J.
Dddarowaru1 zmienna c1JlSQ" j ·st pomocni) w unkc'ie „m1macj1, \V. koreysluJąc j mo--
ksz np. przemieszczać I obmcać żród fo ~wiatla. obs.~n1,•ując efekt · gene ,wan pr'b:z
ornawi:mq technjk ·.
l Mt Czas • { loa lGet , Col, te
astępnic: del7niuj,em>r mati4.:n:~ jedno ·tki
c1t:mownnia~ Akrualny 'kod me okrcsla zadnydl
prze :itał eń "wiała. jednak je:J i eh~ , , możc~.7. j4.: wprm. .·.i.dztć. Je~li zd duj'--sz ,ę
na zm iunę pofo~~ia oka. Ul"'l.4 dzcme . amo zadba i L• prawidtow1; n:nderowa...nic efekttlW
na cranach ześcbnu. kt ';re me ą be?pnsrcdmo widoc1J'lc. Je ~li rue widzisz żadnego
o ielhmia. pmwdopooobme : \...·iatlo odbiJa si· na ścr:u1ach n;cwid czn)•ch dla dooego
polozCJ'l ta oka. \V takim pnyp dku spróhtij ✓moci~• likowac poloźenie ir<Klla wiatła.
030.'!VECrcflJ Po1 „a(5 o . o o . o ).
030:Qldc lxLoo'fAtt H( m_ ae,e~z 1do u. Poz ~.
AOJOXVEC OR3(0 Of, OO~. O O• .
D3DX1 CT lCO O. 1 O, O O)).
D30~AATRI c1erz · dera - _ •.1 c1ę zS;,,'la , m_ . 1c :z
c er. R u•u.
ll30 tr 1x ranspose Clerzsr a, tleriShauera},
·-~ rzao,e-meOJO -·Se e· e·•SMdc• Cons ~ rn . . cie i de a. ~) 1
D~• zbió~ maci~ny ueyw:m j, l do rzulo\ -~min tekstury. fdy rcnd~rujesz mi e~.
ma terze widoku I m..cow !tli \\ ynmczaj na ekrame po7)' j · wier1.chc Hen. .. n~tomfłl! 1
1e:-,.-er. st ·r-y. s 2M'(D.3D •' ~ JX)}.
11 C 5f .
. 22• os.
-l-
- ·~ - 1 O'"
Pr.~s.
,r ~2 ., ! I ,l. ~ •
i' _
ur;t _.i1 • ! O
Nast amie ma~L~rz 7.4~taJą poi, czom~. a wyntk przesyłany j~"ł do s.h:uf(!1'n_ Z"1róf uw::,gę
m korejność mnożeni. ma~•~r✓._'i, :
ld(l r,ls.,. ~at l 1 • ,.-,c3 lo.,,. :. ., S,;ldl ~Ut.LI * ,.,~. c- •rt ,.s ur.,
000.t „ r nspo ( ' c,P--;S 1d' la, Mac1e:i-?- 1 la).
1
_ Jr,Mit1eri1e03D > _•t',er"'e:-. J,ort sta:1 C4. !Mdt1erz •a li. 4}.
ftraz pa:eb~lc1m o wri:clcnii: llo prlcstrLcn~ obiek,u. ·J'lOC!ai 1m,sz mplibcj~ nie
.PO I da przeks.z1ake-~1ia śwfaa... tu j~dmtk ragmePł ten h dzie: mezl"t-d'11Y w pt:""t:ypadku~
gd)' uchoesi: sam-odz1cl111 i~ dndL-te pr.tcks.zł lc,enie.
03llUtĄ'fłll Jt ~ S e , 1 łt.
OOO)Jl!tł" łJ.ln~.rs , ~ 1t . MUU• .._ltKletzSwl IU) ,
D»lY« taMf Oł"IM &Po:SvtaU a , l(~'llCroRJ -~zSw;•t la • &Odwf lX'órr,sw,~t. ) •
_...UrlddZef'll~?S.tVtł' t.xShide~toł'tl(ł, ~1-at ~. 1).
Oi11ó, ion ~ trzy s ·ładniki a d:tją si~ na cały ~ fckc o ·, ietl ·n1a ri.:tk ctomwi;go. Aplika.ej
doST".Jn:Z'B dane: do j cdno. tkr cieni01r1.-ani~ ,,vief"IXholków, która / olei przygotowuje
i" •sylii do jdłn~• · ch:niQ1.v anio pik 1,;H, pa.eprowad:,,ające-J ko1icowe obliczeni Po•
dobn ro,Z\, iązan re może.s1. za lo ować d CJś:wi tltmia punktowi.:go.
D' f x: v· . , :]
l - l- 7 - •-LR+R li
!t:ksmm zanik:m ia dJa oswieEłen ia rd1 krt~rnwego posfaulłd hnio\'i y grsd; ·n, w • ·Iktl
Jl.!dn)m k\~nink11.1. ponic.:, ai 1.anillomi~ 11. tęp walo wzdlu.1. '\1o·c-ktora ś•w iad . refld ttoro-
w ·go. Oświetl mi.: punkltlwe ni · ptl$Jada wyromione~ \ dctora. wi grad1i;nt powmu:n
być d uk.icrunkoi,,i, .', co 20~tal0 przedstawione n ry UJ1ku O• .
Ta.k jak· · \Ili'• oś, it.:tf..:niu
t. I
reHe.k torowym~ 1c1kstu:rn l.Jlllkiłll,a t.ta'IH)\\ tn:.on i
.
"- 1....
ca, ąJ:0 l:ICM.\11
n.....niu•1 [ł; ;mm Ct!,r..S urn me wysta___rc_zv -
V'lrl.,J •• ■ ••v
nntnebne . ,_ · -~-z-
....nJ .-...,._ -..1po
'-",i WU!
dn.u: $1tm.1CI)'.
1..-.1
IS 1.1
-a •• ril.~
to,uJi:ffiY trl';ł,Cl.i\_ ~~~wą do pie-l'Wszej v.: s~dnej drugiej leklnlry. Stana"A'i r,,i
w pólcZ}'RIJ~k zan•lmrl1 :
(I on 1<. rO z
koP'CLl wypłffl adiruny :z bia@m kolor JOZpm5.Lemfa:
ro . 5
Sr.ala cozrm•kra '"arto • I.O "'~• ·puJqca_" nas1..ej fuilkcji. ln~tru.l::cje te ł duj po-
wioo'.nfo wartości tek~IW)' z lckslury J'"11n1kania. a smm.1 reks-tura jcsEt EOSOwat'l:J. "'-'
fazach tiJhtut;·.
. l O. 1 O. • O. l O
LL. l!).
~ T , me;. ~
t:'i!l'lt4 i!I, lJ.
• <1. a. ci ai.
. O. I. D. l).
e RIP. G. B. l~. 2).
zmny pi I shader.
vtl.rzad.z ·030· Shac,e
(
,.
J].
Ełf1 u~k,30.10!.
o· ~,Jem'•
pun.ram,'t-'
Gg,an1
iczen1ia prezentowanych technik
Głównym ogran i ~i..:mem t1mó,•1,1on}i.;h technik n. wic1 lcnia je~c i ~h 1.ale-.moś od pi I
•had ra oraz fak:L, ~ 'W}'lkor,y tuJą kirka fa1. n:ł: :tury. O ile Tll0"1.ć: pct.Srufyć sit Hm mi
lrdmdairni, które w mnieJ 1ym S1op11iu 7Jllt!:h\t: ~ od j~"(!m.~ cek pixel ~adeT, o tyl11r bardto
lrudrm będzie i ?rczygntH\'ltĆ z \\")'korzy ry,,Bn1.a wielu faz, . a obecni dost~nyrn
POllsuaowanie
Oś\11erlcnie per pixe1 pc.n:h:n1t,•1011c J , ,, itlu ogranic.i:,cń i wad oŚV\'tt."tlł!n;a pc:-r ertc ·,
Umoili\i\r1a równicz gę;-ncrowamr: dokfaumcjS1ych k z1ah6w zu n~ Mat~:t i !oso-
lllllr,; funkcji zam a.rui.l. Bez kom czności W)' on) 'Jma s ·runplikowan}•ch ub1ic:ir;ń
m . z dodać d~, cen 1:ln.1one dclct\' uswii.:tb:nia..
J •
· ma jednnk ni zn Llartno. s,~uj~ oś" it11'l'n1c ()t!'t' ,•i.:f'lC' mugle ~ umitśdć " ł i(ódd
światła naj1.;dncj so:mt. 1.!cly.i. ugranic11:;mi.: 1kwito ,, tnstmkcj~h dtex ha~. pr;:z}:•
padku o Mticrlcuia per pi x ·t ugram~ ;.eru~ ma r,.,. 1ązr.:k z 1lesc1 ilZ ,~ks~~ra, kt .. ~
jest D wiele mnieJ lmplcm~ntncjcł \\ Jedn.cJ se ·nit! , pojed}'l1 zym pro:b1 • , v.1elu 1!f!kt
opartych na teksturach jc:-.I b~rclzo trudn:i Jo rcali1. ej•. aw t dyb 110 przt.-bie~ '
nic s1ano1,•da og;ranicz~nia, ,., ciąż wano pemi~t~e. k kany grofic1.ne ob ługu,1ącc. ptxcl
shadcr n1e sąj~szc.t:c ✓.h) r popularne.
1•·
L.,.1mo pn tisw.wiotl}'Ch
·
1, ad o.:-.,,.'1t!tlcn,1• e ~r pnre-1
•
Jest n11prav. d bafflYl d.obl"!l
1 •
,''"1_ tt hni
1 w11rto rozumfoć mt..-ehamzm j ti d m~ nia. 0 " wiś ,c ,ue: Io Jc!d n~ L c:hmk.,, kt61'}te'1
rcalizacj umożl hvia p1 d h tł r. Pos.t,;p ,v dt. konakrnu ·art gr fit l eh 1 1' r1-emu
ł · fil i~rz rzultl\s.. nia definiuj~ . toz~ ~~, iatła reflek.tol"O\vego, określaj po !Jfost\J
c~ ć stot.ka "vyciętą d woffiłl irÓ'\.\.'OOh:głymi plas.z(' muni. Kąt pola widii:ni.3,
(FOV, ng. Fudd 0/llie•~•) ma icny r.lUtownma. d.:łiniuje k, t ol>~~ ?1,-'Dllmbra
poo WJrun!ciem, ż.e ci=k~u ra została pop1'!wnie urworzona Kąt oh.szaru umbra
J~s• zależny odjcgo wzgl~dnc-j 't,'i,•ielkosd, mt:kstur..zt ,
+ \Jcr1ex ·had"r ośw ictk-nfa refle,k1orowc o w~ onujl! Jhliczeniu Li.:k~turow::una
r1:u tuj ~ o oraz koduje \ e w pc',tn-~dnej LL-kslury Ollh,.Lgto.: od :iródla Ś\\·iatla
do \\'icrzcholka. Tli! · tum I okreslB teksturę '.i'łtnikru112 ~hnałła.
ł· Ośwjcdem refie tomwl.:', ze w:1. •l'iclu na s.wój ma.te-mat) CZ.tł) mcchaniirn.
zu11~e. wił',ło w dwóch kicnmkach. Gd · zd ·c •dujt:sz t · na sto ·owlni~ tej
tcchni i w. wojej apHkacjł. mu. 1 i uw2rl~dmć lę nicdo'" od11oś ~.
ł echmka ośw;iet.k-nia punk.tow go róWiiicż w ·kor.r,ysmjt: ti:btur ·• j~ak t~ks.rut'il
t~ okreśJ 'li artości nalę1..cn ia S.\1;,•i, tła d Is funk ji zam an ia ,\ b · otrl}m \\ arto}- :
t:..fnlkU, Il rl!fy od warhl C3 l;lpi □ eJ ,v lit'k~lurlt: <1tgą~ l .0.
f cnt::."C -hHd..:r o \vjcrlcnia punkt, wcgn koi.luje,, c ,.,1_ p(1lu dnyr.: h t~kstw)'
·
~ równo k1crunck..Jak i dtugo~ć wektnn odh;głoś~,. \\ spółr-1.t,:'dni.: t ~ te . tU]j'
w_ 1.n c7.ają 117-y wspói .zynniki funk ·Ji na1.;żenj~.
♦ Oba r dzajr.: o ,ę\\ n.:tl ·nia moma ·toS<lwae hcz ~ ,·kom·. 1 \\'ania 1edn 1„Jck
cicmiow.mia, Jednak Jz1ęki ich z;a tosmvaniu rn~yniant: ~~zult cv są tep z~.
a samo rozwiązani· - bardzi.:j elastyczni:.
Rozdział 31. _
0Slfietlen1e per Pixel
..- odwzorowanie nierównci-ści
wpopm=cnim ~ Je ])0%nałeś tecltni~ per piM.iel k 6m . .
Jl ,c!llłt kiU(:lego pfIt la osobno. jednak waJrtoki Le ~~ . oblicv..at ~ośd ośw1eUc~
(~ot.em,J SilID}rch wicr7..chołków. V.' lyrtl rozdźiale amó e~~ zależr,~ od_ lwnlt!trii
~ metodę, któni puzwate na definiowani~ wlakh,•o -wnę ~~wanie D1Cń\\i.11Dśei
,.-u-o C lu reL.INI I Mal'. ~ Ili[!! 'I icrzchQi~,6,: n-:.:,,.1
g._c:om~tllc~nyc:b, m;yi.,,lljąc do
Cl
· · Lłvl!, I ,emu mD:liiYli'r! Jest se . . ~
1 ...:, f •
'"'a , • n,::,•....,..,. • •
~1JOSCI na powierlthn,, kcora 'I. [P:UDFdu witheni:a wie bOŁk:ó ~ M'?\ltallJ~ np, me.
wrozdziuli: omówię n~lt'J'lllj ,re zagadnienia~ l"'LC w Jest ~de:abnc Mwni
' hł~ 00\17.0fflWanma nicró, mote,.
• T\ omunic i korzyst1m1e. z m.Jp nonnal'nycb.
• Dtfinjowanic ,v.ck1orow ,,,. p-r&e507.:er'Jj rus.tury.
• Odwzorowanie nii.:rowności z Vi1'knrzystanit'ffl jt.Jnt¼v ąz teksinry,
IR zej jest na sunku .J • ·- · \V osi i-nieb kilłm ro~zicala ·h dorwicdzmtl;ś si ż.L■ \-e'kstu~'
ruht nic lyl ko do tworzenia I dl\, eh ptrwierachnt. y.,r rym pt%)'płłdlru ~t-k~ra ~ ~J ·
zmapo"1t!aoo na pow&l:17.dtni~ i ,-.uwiera dBne o ,-.,·ek.to ad1 Mnnaln~ch pikseli 1;1iillJdl.'!j -
c~b :si'f na t ·j ,pow ierzchm.
en li Vł • T. . . . . ., . . , .. ., . pluł ......,
lłyawlc3U..
1\.wz.tlllt!
olwłdh"Rłtl
: W,,~h'.Dfli'm
IIOr'lliuJn, -cl,
:tt'ta"U"'11fflK'
Rysunek U..2.
Q.,rn /1!'l/t-,i,r:
- ;;a, IMO'f.:Yl/1/t:ru
weborów
11ormuln 't11Pl rei•
Rye.unek 3:1..3.
ial u ohrcktu
? m1lolcmJ'fl11
mer6",wfr,am,
fhlii 1_. as. • Ołwłetlunle ........ __......
~ . •n1eror~w•a1
pą ,:;ęk•
~o~~ polega na \I.
••52 Jll2. J • ~ oclw
k naniu il~~an,c n;c,6wootc, w·
Im
wności pole . do ~ wtkt
ltładme ""•tła
n('SO· ()dWZOll'Owana m . •csz, ~e MWtetl
.,,ji j,....iq< jednak " 'iel" elementów ~ 6 .., •~m':,, , - . . . .,.;:::::
• I L ,1•-•nk·....... ""' ,,.. • re-
\\'tel Cfllll " ........ ..... ..... c ..... n e.tne Je t b . -.Ją omaw·
od"'"~n1•· • )'l'n. W "''""'- · ·
-..ueJ imp\emea.•
:-a na prt,stl.l oś." icrlemcm k1eru.nlm•~· • Y~ zapamiętał « 6dl:aną •ccnnikę ud l,Ą,"Vklca. 9
r-- r ,..ym ~ I . ! ~-
weklOr)' re r-vlC :nc ~ z mnpy Wektorów •.• ,.........yfiłcow.mymi ,.....c n1cr6wnośc1
.....J,,. " • W7.0JQ'IA.""'..,. ·z 0
noJ11J11łn'-'~h
~ • w k1C'JraJll1 "'----1
• •Vll•IIWJ nym1
•
flfot'Zen•• ~•P wektorów no
i l(ol'ZYstan1e z nich nnalnych
MBP>' "·e1'toroW nolTillllnyclł nic jllkinuś • _
s1,~ienn kh 7,.a~• rtość nic Jest jednąk zv. ~al~ym: te t\lrami. J imi b •tv
ctioWdJą 7_non11ahzowam; \'J.1 artośc1
• y ·I ')z WCJkna.t Kuno.I)' RGB k.af,h.un liKO"" z ,e ,knp._ffi3J>Y
f.eł1 ~
pochocl1.ą
UJl}::t\.l. or'l'lfUllllc.: lt; ~,, czai~ 7 Jt." -"a::b! ora nom,a\ncgo
1'11IleJ le sh1ru dh1 \(! •
o VJ"..re.~,oaego
··•· pt7,e■
P . •.... ,. tzw. rn pv v. • •
M"I'• "'I okośc,
• Je I · 10 naJ '\'>CieJ 1eks1u~
.a ''• -·-• .
uu tc:n,ach ·7 · . o c,
pqstac1 nalęicmn oś.wii.:tlcm:3 •aifnrrna.c-· . O arok1, k1óra pt"fA:w.tąwi
·
;zakodoWaI1 ,, !,
\\)kii rz)' ·() :i.•BJle są ' rc.mderowaaiu Lcr,.;nuw "di _Ję ~-sokuś.cl Map)' talcic t„:sto
.k t • I • ' e le- s-1anow1 ~ w od . """'
coi,;J;.l.Dlll v, ~ o 1 punll'i..t.ow nn ::;aa~ ~ w ,.,, ,i:k.'v'oś.tL ...._ . g l'I.) sposob repre-1en-
O
sci
. O. O( ololl' zam)') t odpo\"' iada .lero,,. i.:J. "~ ok ,. pr.r.yprulkov. ank'ns) ma
, - 0.SCl nad nnl\O.m~ n,, ,.- v."afto-
· LCnlB. oa1on-u . mleUS}'\\TIOSC fÓ\\'Tla 1.0 ... I b·· ty r„ m v·u~Z<., 711)' odnie-
f
lfł!1IIMIC 31.4.
jtJpolr,1 O ISCI
~-emo
pn, l:Jdo~ 'j
~-::n)
onnaln<! zawart • " mapie nonnaln_ eh ·ą iwo zune m, pod. ta\, ie ·1mi," w informacji
?wy okOSCi. \ rozd~ialc _ I, mówiłem Ir( ·hę o Jl'"'ub1e obb ·,,mi• k,\_\ll hylcnię lmii.
J<dnak nie podejmowałem ~ •~ ":li ."/.. nia t"l!'' na ·hyk-nia dla dow, łoi ")'brancso punk.Ili
Dl 'odwzomwan~a nicrÓ\\ ności jt:~110 1ylko kwesti:1 d iał,ui ~rytmct):CZD b.: 'a l)':sunku
3l .5 _lOSłala prl'.cd ·ta, riona ro~La jedno\\ n,,arowa n:pn:,.ent~ja \'il_ bram:go , ~ t ~ mo_p
" oko ci. achy len i~ I'° ·L zccó1nycb fragmcn\/," mu1cm)' w~ 111 ~z. c o-deJmUJ:'I
wartości jednego teksel a nd nast~pncgo K:,;dy Lcbd JC ·t lx,w,cm 'ów ma 7',tązanY
nachylonymi (K{cmkamj w przypadku jcdn<?w,rrnimowej 'repre:tentacji jest to od _
po łcwej i po prawej !itrOnce tekscla.. ~ch>'!en~ Pn>' ~dy.-n z Lekseli ~ ~iE
korzystając z n chyleń tyc~ d,,tóch ~ut.du!ą~b odcm~w. ~etoda maj~ PQdo\,na ,
us11ednicmia nolffl:ałnych wterzchołków 'li siatce_ Dla pro!i,teg.o Jednowym1a11owego d(i
padku wektor nonna.tny jt-st .skierowany w tyn) samym kieru_nku co wektor 11 thjif=r
Dla pr-.l)'plldku dwuwymiar-oweg;() spraw~ staJ~ si· ru~~-oordktl'ej złotana.. Motes2. '1.1!,•,
.w~czyc np.('ny~mia "'w-młuż dwoc1, osi. it;ez w celu \leySIWIIIII 'li e Ol8 normal1Mr"go nędii
pott"l,ebowal ob1i<:zyć iloczyn ~kalamy ty~h dw
eh w~iktoró\\' .. dy~W}rzna.ceysz V.'t ~
normaln , musi z go zn.om;1ahzować, wowc?.A będrz1,i; on w1crał waJ\ości z. m~
t:
od -I do r. Wartości ~ają, ?.o~t~ć zapisane w ka~tach kolorów: których zakr,~jes1
00 odol . wii't-t wczce meJ wartoscm le n lezy pomnozyć p.rz.ez 0.5 , dc,dać do nich os.
w· t n "posób ich zakres będzie poJ)Jlł\Y11 i będą one mogły wstać zapisane do •ł3d«,.
w 'Ch X. Y i Z składowych RGB\\' mapie wektorów nom1alnyeh .
Powyższ , opis mote branieć znie ·h~cająeo. Dostępne są jednak nan4ed:1ia. k'too: alJtQ.
matycznic wygenerują mapy normalnych za Ciebie. \V n.eczywislo~ei dokom.1.Ja ont
u~11edniama normałnych t,,:ksch z ,vykorzy ·umiem wri:lu ~ icdnich t~ eli. dzięki cze,n,
olrt;ymanc; norma lm: są bardl_icj 1 ladkic, Jeśli nic polrn h u.j ·sz. stooov.•ac d)-nllfflic:rJwc
map normalnych, go.rąt."O poJec-Bm \Vj'kornystanii.: jcdlflcg-o z tak1ch narzę-clzi .
Ryrunck 31.6 pr~i..-dsta'llvm m~ wysokości i odpnw 1ada_1ąt.·ą jej map't '"~ktarow normal•
nych. Rysmlk1 są\'!,' sk;.tli swosc1. więc mogą me naJf p1cJ 1 lustrmvać. omawianą t.xbnik-.
\ idać J'-·dnak. że m13pa nomJ" lnych zawiera inform ację o\' daorni.:h, k1óra .lO. tnła od~r
lana i: mapy \i.,ysoko •c•·
~ys.unek 31.6.
.\łapa ~,~axovcr
• f1d;m~1adując~ it.·1
"14/10 ,un·11wl" •1.:f,,