Grafika Komputerowa
Radiosity (Metoda Energetyczna)
Alexander Denisjuk
denisjuk@pjwstk.edu.pl
Polsko-Japo ´nska Wy˙zsza Szkoła Technik Komputerowych
zamiejscowy o´srodek dydaktyczny w Gda ´nsku
ul. Brzegi 55
80-045 Gda ´nsk
Radiosity (Metoda Energetyczna)
Najnowsza wersja tego dokumentu dost ˛epna jest pod
adresem
Radiosity
Podział na płaty
Figure XI.1: The pat hes used to render the radiosity s ene of gures XI.2 and XI.3. See olor plate C.13.
Cieniowanie płaskie
Figure XI.2: A radiosity rendered gure, with at shading. It is evident that this image is based on the pat hes shown in gure XI.1. See olor plate C.14.
Cieniowanie z interpolacj ˛
a
Figure XI.3: A radiosity rendered gure, with smooth shading of illumination. The red olorof the boxis re e tedontothe nearbywalls, givingthema slight reddish hue. This is based on the pat hes shown in gure XI.1. See olor plate C.15.
Podział na płaty
1. równomiernie o´swietlone
2. wystarczaj ˛
aco małe
3. zu˙zycie pami ˛eci, obliczalna skompikowalno´s´c:
O(n
2
)
Rownanie energetyczne
Wybrano płaty
P
1
, . . . , P
n
o polach
poweirzchni
A
1
, . . . , A
n
.
B
i
jest ´srednim ´swiatłem promieniowanym przez
płat
P
i
.
Współczynnik sprz ˛e˙zenia
optycznego
F
i,j
— ilo´s´c ´swiatła, przekazywanego z płata
P
i
.
F
i,i
= 0
.
Rownanie energetyczne
Całkowite ´swiatło emitowane z
P
j
:
A
j
B
j
.
Całkowite ´swiatło padaj ˛
ace na
P
i
:
A
i
B
i
in
.
A
i
B
i
in
=
P
n
j=1
F
j,i
A
j
B
j
.
Równanie wzajemno´sci:
A
i
F
i,j
= A
j
F
j,i
.
B
i
in
=
P
n
j=1
F
i,j
B
j
.
Równanie radiosity:
B
i
= E
i
+ R
i
P
n
Radiosity equation
B = E + M B
.
B =
B
1
..
.
B
n
,
E =
E
1
..
.
E
n
.
M = R
i
F
i,j
.
(I − M )B = E ⇒ B = (I − M )
−1
E
.
Grafika Komputerowa – p. 11
Algorytm radiosity
Mesh s ene as pat hes Compute form fa tors Solve radiosity equations for B Render with smooth shadingObliczenie współczynników
sprz ˛e˙zenia optycznego
F
i,j
∈
[0, 1]
,
P
n
j=1
F
i,j
= 1
.
F
1,2
≈
0
,
F
2,1
≈
1
.
Pat h P 1 , area A 1 . Pat h P 2 , area A 2 .Figure XI.5: A large pat h and small pat h.
Obliczenie współczynników
sprz ˛e˙zenia optycznego
ϕ
i
, ϕ
j
< 90
◦
.
pole zrzutu
P
j
na sfer ˛e jednostkow ˛
a w
P
i
:
cos ϕ
j
A
j
/d
2
.
cz ˛e´s´c pola zrzutu
P
j
:
(cos ϕ
2πd
j
2
)A
j
.
P j A j n i n j ' i ' j d
Obliczenie współczynników
sprz ˛e˙zenia optycznego
F
i,j
∼
cos ϕ
i
(cos ϕ
j
)A
j
2πd
2
.
Całkowita ilo´s´c emitowanego ´swiatła jest 1.
R
S
i
+
cos ϕ dA =
R
π/2
0
cos ϕ(2π sin ϕ) dϕ = π
.
F
i,j
= cos ϕ
i
(cos ϕ
πd
j
2
)A
j
⇒
F
i,j
A
i
= F
j,i
A
j
.
P i A i P j A j n i n j ' i ' j d
Figure XI.6: Two innitesimally small pat hes P i
and P j
with areas A i and A . The normals to the pat hesare n and n .
Ograniczenia
Płaty s ˛
a małe w porównaniu do
g
.
Nie uwzgl ˛ednia si ˛e widoczno´s´c płat.
Widoczno ´s ´c płat. Ray tracing
F
i,j
= V
i,j
cos ϕ
i
(cos ϕ
j
)A
j
πd
2
.
V
i,j
— współczynnik widoczno´sci.
V
i,j
= V
j,i
.
jittering (fluktacje).
Współczynniki sprz ˛e˙zenia
optycznego. Hemicube method
P i
P j
FigureXI.7: Proje tiononto ahemi ube.
P
j
zast ˛epiony przez projekcj ˛e.
Hemicube method
0 x;y z d = p x 2 +y 2 +1 ' i ' j Pixels on top fa e: z=1. Shows P jFigure XI.8: A row of pixels along the top of the hemi ube. One pixel shows pat h P
j
. The origin is pla ed at the enter of pat h P i
. The top of the ube is the z =1 plane.
cos ϕ
i
= cos ϕ
j
= 1/d
.
F
i,j
=
P
pixele
P
j
(1/d)(1/d)h
Pole pixeli
i
πd
2
.
F
i,j
=
P
pixele
P
j
h
Pole pixeli
i
πd
4
.
Grafika Komputerowa – p. 19
Hemicube method
os' i = z=d os' j = 1=d 0 x;y z d = p 1+ y 2 + z 2 ' i x = 1 ' j Shows P jFigure XI.9: A row of pixels along the x = 1 side of the hemi ube.