PovRay - Zestaw 1
Transkrypt
PovRay - Zestaw 1
Zajęcia z grafiki komputerowej – Pov Ray – część 1 Projekt zaczynamy od dołączenia bibliotek z predefiniowanymi elementami i teksturami: #include #include #include #include #include #include #include "colors.inc" "stones.inc" "textures.inc" "shapes.inc" "glass.inc" "metals.inc" "woods.inc" // Pliki zawieraja predefiniowane elementy sceny Pierwszym istotnym elementem sceny jest umiejscowienie kamery. camera { location <0, 2, -3> look_at <0, 1, 2> } //umiejscowienie kamery //okreslenie kierunku w którym patrzy kamera Następnie umieszczamy nasz pierwszy obiekt na scenie. sphere { <0, 1, 2>, 2 //polozenie srodka sfery oraz dlugosc jej promienia texture { pigment { color Yellow } } } Zamiast stosowania predefiniowanych kolorów (np. White, Blue, Pink, itp.) możemy zmieszać dowolny kolor ze składowych RGB (Czerwony, Zielony, Niebieski). Parametry pracują w zakresie od 0 (kolor czarny) do 1 (kolor bialy). color rgb <1.0, 0.8, 0.8> Ostatnim niezbędnym elementem sceny jest źródło światła. Współrzędne oznaczają jego umiejscowienie w przestrzeni. light_source { <2, 4, -3> color White} Teraz można wyrenderować swoją pierwszą grafikę i zobaczyć efekt. Warto pozmieniać parametry kamery, obiektu i źródła światła aby zobaczyć jak wpłynie to na kompozycję sceny. Aby tło nie było czarne, można ustawić dowolny kolor lub teksturę. background { color Cyan } Poznamy teraz kolejne obiekty jakie możemy umieścić na scenie. Zaczynamy od prostopadłościanu. I przećwiczmy ułożenie pudełka pod różnymi kątami z pomocą komendy rotate<x,y,z>. box { <-1, 0, -1>, < 1, 0.5, 3> texture { T_Stone25 scale 4 } rotate <0,20,0> } // lewy dolny rog // prawy gorny rog // tekstura z bilbioteki stones.inc // skalowanie wielkosci wzorku tekstury // obrot wzgledem osi y Kolejnym obiektem jest stożek, który może mieć ścięty szpic. cone { <0, 1, 0>, 0.3 // polozenie srodka podstawy i dlugosc jej promienia <1, 2, 3>, 1.0 // jak wyzej, dla drugiej podstawy Open // usuwa podstawy, parameter opcjonalny texture { T_Stone25 scale 4 } } Szczególnym przypadkiem powyższego stożka jest walec. cylinder { <0, 1, 0>, // polozenie srodka podstawy <1, 2, 3>, // polozenie srodka drugiej podstawy 0.5 // promien open // usuwa podstawy, parameter opcjonalny texture { T_Stone25 scale 4 } } Kolejnym elementem jest torus. torus { 4, 1 // duzy i maly promien torusa rotate <-90,0,0> // obracamy abysmy go lepiej widzieli pigment { Green } } Ostatnim elementem sceny jest płaszczyzna, która może odgrywać m.in. rolę podłoża lub ściany. plane { <0, 1, 0>, -1 //wektor normalny do plaszczyzny i jej przesuniecie pigment { checker color Red, color Blue } } Na koniec, w celu wyrobienia sobie intuicji przestrzennej, należy wyrenderować bałwanka. Więcej informacji można znaleźć w dokumentacji PovRaya: http://www.povray.org/documentation/3.7.0/t2_2.html#t2_2_3_1