Podstawy POV-Ray'a Diana Doma«ska Uniwersytet l ski Diana Doma«ska (U ) Podstawy POV-Ray'a 1 / 13
POV-Ray (Persistence of Vision Raytracer) jest j zykiem opisu sceny sªu» cym do tworzenia trójwymiarowej graki o wysokiej jako±ci. Aby otrzyma wysok jako± graki POV-Ray wykorzystuje algorytm ±ledzenia promieni (ang. Ray Tracing). Algorytm ten oblicza kolor i nat»enie o±wietlenia oddzielnie dla ka»dego punktu sceny zgodnie z zycznymi prawami rozchodzenia si ±wiatªa. POV-Ray jest caªkowicie darmowy, dziaªa na ró»nych systemach (Windows, Linux, MacOS) i mo»na go ±ci gn ze strony http://www.povray.org/ Diana Doma«ska (U ) Podstawy POV-Ray'a 2 / 13
Ukªad wspóªrz dnych Y Z X Diana Doma«ska (U ) Podstawy POV-Ray'a 3 / 13
ródªo ±wiatªa, kamera (podstawy) ródªo ±wiatªa 1 light_source { 2 <x, y, z> // polozenie zrodla swiatla 3 color <r, g, b> // kolor swiatla 4 [(opt.)] 5 } Diana Doma«ska (U ) Podstawy POV-Ray'a 4 / 13
ródªo ±wiatªa, kamera (podstawy) ródªo ±wiatªa 1 light_source { 2 <x, y, z> // polozenie zrodla swiatla 3 color <r, g, b> // kolor swiatla 4 [(opt.)] 5 } Inne sposoby podawania koloru rgb <r, g, b> color red r green g blue b na pocz tku pliku ze skryptem zamieszczamy instrukcj wª czaj c plik z denicjami kolorów #include "colors.inc" W pliku znajduj si denicje kolorów, do których mo»emy si odwoªywa po ich nazwach np. Red, Orange, SummerSky, itp. Diana Doma«ska (U ) Podstawy POV-Ray'a 4 / 13
Kamera 1 camera { 2 location <x, y, z> // polozenie kamery 3 look_at <x, y, z> // punkt, na ktory kamera patrzy 4 [(opt.)] 5 } Wi cej szczegóªowych informacji na temat ¹ródeª ±wiatªa i kamery podamy na jednych z dalszych zaj. Diana Doma«ska (U ) Podstawy POV-Ray'a 5 / 13
Tªo, pªaszczyzna Tªo 1 background { 2 <r, g, b> // kolor tla 3 } Pªaszczyzna 1 plane { 2 <x, y, z>, // wektor normalny 3 d // przesuniecie plaszczyzny od poczatku ukl. 4 // wspol. w kierunku wektora normalnego 5 [(opt.)] 6 } Cz sto pªaszczyzna jest prostopadªa do osi ukªadu wspóªrz dnych dlatego te» zdeniowano odpowiednie staªe: x, y, z, które podajemy w miejsce wektora normalnego. Diana Doma«ska (U ) Podstawy POV-Ray'a 6 / 13
Podstawowe prymitywy graczne Sfera 1 sphere { 2 <x, y, z>, // wspolrzedne srodka sfery 3 r // promien sfery 4 [(opt.)] 5 } Diana Doma«ska (U ) Podstawy POV-Ray'a 7 / 13
Podstawowe prymitywy graczne Sfera 1 sphere { 2 <x, y, z>, // wspolrzedne srodka sfery 3 r // promien sfery 4 [(opt.)] 5 } Walec 1 cylinder { 2 <x1, y1, z1>, // srodek dolenj podstawy 3 <x2, y2, z2>, // srodek gornej podstawy 4 r // promien 5 [open] // walec bez podstaw 6 [(opt.)] 7 } Diana Doma«ska (U ) Podstawy POV-Ray'a 7 / 13
ci ty sto»ek 1 cone { 2 <x1, y1, z1>, // srodek dolnej podstawy 3 r1, // promien dolnej podstawy 4 <x2, y2, z2>, // srodek gornej podstawy 5 r2 // promien dolnej podstawy 6 [open] // stozek bez podstaw 7 [(opt.)] 8 } Diana Doma«ska (U ) Podstawy POV-Ray'a 8 / 13
ci ty sto»ek 1 cone { 2 <x1, y1, z1>, // srodek dolnej podstawy 3 r1, // promien dolnej podstawy 4 <x2, y2, z2>, // srodek gornej podstawy 5 r2 // promien dolnej podstawy 6 [open] // stozek bez podstaw 7 [(opt.)] 8 } Prostopadªo±cian 1 box { 2 <x1, y1, z1>, // lewy dolny wierzcholek 3 <x2, y2, z2> // prawy gorny wierzcholek 4 [(opt.)] 5 } Diana Doma«ska (U ) Podstawy POV-Ray'a 8 / 13
Torus 1 torus { 2 r1, // promien 3 r2 // promien 4 [(opt.)] 5 } Z r 1 r 2 X Diana Doma«ska (U ) Podstawy POV-Ray'a 9 / 13
Trójk t 1 triangle { 2 <x1, y1, z1>, // wierzcholki trojkata 3 <x2, y2, z2>, 4 <x3, y3, z3> 5 [(opt.)] 6 } Diana Doma«ska (U ) Podstawy POV-Ray'a 10 / 13
Trójk t 1 triangle { 2 <x1, y1, z1>, // wierzcholki trojkata 3 <x2, y2, z2>, 4 <x3, y3, z3> 5 [(opt.)] 6 } Wielok t 1 polygon { 2 n, // liczba wierzcholkow 3 <x1, y1, z1>, // wierzcholki 4... 5 <xn, yn, zn> 6 [(opt.)] 7 } Diana Doma«ska (U ) Podstawy POV-Ray'a 10 / 13
Dysk 1 disc { 2 <x, y, z>, // wspolrzedne srodka 3 <nx, ny, nz>, // wektor normalny 4 r // promien 5 [, r1] // proimien otworu 6 [(opt.)] 7 } Diana Doma«ska (U ) Podstawy POV-Ray'a 11 / 13
Podstawowe transformacje Transformacje obiektów umieszcza si w sekcji opcjonalnej. Nale»y pami ta,»e kolejno± wykonywania transformacji ma znaczenie! Diana Doma«ska (U ) Podstawy POV-Ray'a 12 / 13
Podstawowe transformacje Transformacje obiektów umieszcza si w sekcji opcjonalnej. Nale»y pami ta,»e kolejno± wykonywania transformacji ma znaczenie! Translacja 1 translate <tx, ty, tz> Diana Doma«ska (U ) Podstawy POV-Ray'a 12 / 13
Podstawowe transformacje Transformacje obiektów umieszcza si w sekcji opcjonalnej. Nale»y pami ta,»e kolejno± wykonywania transformacji ma znaczenie! Translacja 1 translate <tx, ty, tz> Rotacja 1 rotate <rx, ry, rz> K ty podawane s w stopniach. Diana Doma«ska (U ) Podstawy POV-Ray'a 12 / 13
Podstawowe transformacje Transformacje obiektów umieszcza si w sekcji opcjonalnej. Nale»y pami ta,»e kolejno± wykonywania transformacji ma znaczenie! Translacja 1 translate <tx, ty, tz> Rotacja 1 rotate <rx, ry, rz> K ty podawane s w stopniach. Skalowanie 1 scale <sx, sy, sz> Diana Doma«ska (U ) Podstawy POV-Ray'a 12 / 13
Projekt: U»ywaj c gur i bryª poznanych na zaj ciach oraz trzech dowolnie wybranych z dokumentacji utwórz projekt zwi zany z por zimow. Diana Doma«ska (U ) Podstawy POV-Ray'a 13 / 13