13. Metody generacji realistycznych obrazów scen 3-D

ród

obiekt 2

obiekt 1

(x, y, z)

prosta rzutowania

Punkt

! " !! #$" % $& !!

" " '

( ! ) ) *+

%,"-. ! ?

13.2. Metody generacji realistycznych obrazów scen 3-D

• metoda próbkowania przestrzeni

• ""!

• metoda energetyczna

13.2.1. Metoda próbkowania przestrzeni

/ &0

1. 1$" ! !!,

%.- 2$& 22

(" !#$"+

Algorytm :

!, !!.$

!!#$" "#$""

rzutni.

!, "! .

" $%&" !!

kierunku ostatniego odbicia promienia.

Prosta wyznaczona przez ostatni kierunek odbicia

! . !!,%-"#

3! "0

ród

obiekt 2

rzutni

obiekt 1

Wady metody:

1. ," "$ !!

.! 2 "!- 2!

#$"*#$"+

2. / & ) ! !

! ! #$" $

3. 3" " ,! )! 2

!!*,"!"

niepotrzebnie).

13.2.2. ray-tracing)

Whitted T. „An improved illumination model for shaded display”, Communications of the

ACM, vol. 23, No 6, 1980.

13.2.2.1.

4"," ., .-. "

.-

3

1

4

2

5

6

kierunek obserwacji

promie5pierwotny

promienie wtórne

6!) $0

obiekt 17 "! 5%

obiekt 27 , ",!%

obiekt 37 " 5%

obiekt 47 !! 5%

obiekt 57!#$" %

obiekt 67 5%!#$"

Algorytm:

Krok13!!&" *+

! "!, 5

wyznacza promienie wtórne.

6,"&". "

,. "!

!! "! .

. .-" 0

5

promienie wtórne

Krok 2&". ,!"!% "

! - 2*-!- 2

! " #$",!+%

!!, ,! .

3

1

4

2

5

6

kierunek obserwacji

promie5pierwotny

promienie wtórne

-

8! . .-",- 0

5

promienie wtórne

Krok 3, !

,! . 8,!9 &!. :

! ,!!" "" .

. % ,!$

9&! 2:

5

+ + +

promienie wtórne

+

3*+ , " " "

9 &!. :,!.

8 "!&" 2! &5 " 0

• metody opisu geometrii sceny,

• " " " !2 $%

• .

" " "! 0

1. 3 - aliasingowe, powodowane

! 5!-2

• 9: .-! ) ,

• ,"! .- )!!

, 2 $ ,

! ! "! % $ .

!- 5! -.

-!-

2. / & ) ! " !!

6! "

!2 $- ! %

"!," !!

3! "0

obiekt

P

5

s

lustro

(! ) ","! %

P ,"! " !!#$" s.

!! %P !!

#$" s " "

13.2.2.2. Podstawowe obliczenia geometryczne w

"! "! ,! ) "

! . 2 !! $

!,) ! !2 $

1. Równanie promienia

= { } = [

{ ]} = −

gdzie

= [ ]7 !-

= [ ] - jednostkowy wektor kierunkowy promienia

$!,"&-. &

),

= +

= +

(1)

= +

2. ;$!! !

+ + + = (2) gdzie

= [ ] - jednostkowy wektor normalny

!! !

7 ". )!! ! "

""$!," 2

3. 3!, !!! !-

( ")$*+" *'+

= { } = [

{ ]} = −

; !-!-$!!.,"u! ,

". )!, " !-

− + + +

=

+ +

lub w postaci wektorowej

− ⋅ +

=

⋅

( ⋅ = % 5$ . "

!! ! !

Dla wyznaczonego u $!,"!,

&-,,

= +

= +

= +

3. 3!, !

!$ 2

!2 $

= { } = [

{ ]} = −

<! 7$ !2 -

!! !,%$&

Przy pomocy metody opisanej w poprzednim punkcie

& !#) !, !

!! !-%$&

"!)! 5! &

"!) ! !! & -!

wieloboku.

= ""!,->

• 6& !! ) !,

"-!!! !"$!," 2

* !! -!! "+

3!! !,%$- ,! ,

na podstawie kryterium:

;! . ,"

$!,"

• ! -!%& "!!! !,

"!,%","!!,

! ,"! %9 $

:!,"!& !!,

-

+

-

-

+

+

+

-

(&!!,

!! ! & "! 2 2

!! 2!! 2!2 $

rzutów wieloboku „po tej samej stronie”, to punkt

& -!

13.2.2.3.

; !$&,! " "! "0

• ", !$"! " !.

promienia

• ",! !,)" "!

• ",., $

1. ;", !$"! " !.

promienia

Dla skomplikowanego obiektu po wykonaniu wielu

!5 & !),%& 5!

obiektu.

= " !- 2

!, %$

powinny:

• 9 : )

• ) !

3! "-%! !

(& "! ,% & 5 !

!-% ! % & !

powierzchni obiektu.

2. ;"! !,)" "!

-& ," $!,!

%$ 5

= "22! 2 !- 2

8 !, !- ,

22!-*!, +

(& 5 ! 9 &!:

22% ! $& &" !

9&! 2:

= " "!!!

3 ,,,- >

• 8, " * ),

$ !-,!

analizowanej sceny.

• !," ,

" *voxele).

• &". ? @" ! ,,

$%$ !, ,

!-

• "! %" ,

? &-. " "!!"

!"-, 22

3. ;"., $

Analiza wszystkich promieni pierwotnych nie zawsze jest konieczna.

Metoda redukcji liczby promieni pierwotnych

• 3 5 ! "!,

dla niektórych pikseli ekranu.

• Dla pikseli ekranu przez, które nie prowadzono

2! ) !!,

- !5