POV-Ray
Logo programu | |||
Grafika stworzona w programie POV-Ray | |||
Aktualna wersja stabilna | 3.7.0.10 (8 lipca 2021) [±] | ||
---|---|---|---|
Aktualna wersja testowa | 3.8.0-beta.2 (9 sierpnia 2021) [±] | ||
System operacyjny | Windows, OS X, GNU/Linux | ||
Licencja | AGPL | ||
| |||
Strona internetowa |
POV-Ray (ang. Persistence of Vision Ray-Tracer) – program służący do tworzenia obrazów z użyciem ray tracingu, przeznaczony dla komputerów z systemami Windows, OS X lub GNU/Linux, od wersji 3.7 udostępniany na zasadzie wolnej licencji AGPL[1] Wykorzystywany jest głównie do tworzenia grafiki trójwymiarowej.
Cechą charakterystyczną programu jest wykorzystywanie zaawansowanego języka opisu sceny SDL (ang. Scene Description Language), który jest w zasadzie językiem programowania, zawierającym elementy takie jak m.in. zmienne, tablice, instrukcje warunkowe, pętle, funkcje. Geometrię obiektów definiuje się w nim w sposób parametryczny, dzięki czemu odwzorowanie ich kształtu jest bardzo dokładne, a także możliwe staje się uzyskanie obrazu powierzchni nieskończonych lub bardzo złożonych takich jak np. powierzchnie funkcyjne.
W programie wygląd sceny opisywany jest w postaci skryptu, w którym umieszcza się informacje dotyczące:
- położenia kamery,
- oświetlenia,
- obiektów w postaci brył i powierzchni.
Program umożliwia wygenerowanie sekwencji obrazów w celu utworzenia animacji.
POV-Ray wykorzystuje obecnie wiele nowoczesnych technik ułatwiających tworzenie sceny i podnoszących realizm obrazu:
- caustics – symulacja załamania światła na nierównej powierzchni, np. na falującej wodzie;
- CSG (Constructive Solid Geometry) – wykonywanie operacji logicznych na bryłach;
- photon mapping – odwzorowanie przebiegu strumienia światła, pozwala na oddanie zjawisk takich jak np. refrakcja;
- radiosity – obliczanie światła rozproszonego;
- UV mapping - technika teksturowania.
POV-Ray rozwijany jest stale od 1991 r. na bazie wcześniejszego programu o nazwie DKBTrace. Autorzy tworzą grupę POV Team, która dąży do ciągłego unowocześniania technik stosowanych w programie, zwiększenia jego wydajności i zachowania zgodności z poprzednimi wersjami, a także pomiędzy wersjami przeznaczonymi dla różnych systemów operacyjnych.
Przykładowy skrypt
#include "colors.inc" global_settings { assumed_gamma 1.0 max_trace_level 5 } camera { location <0.0, 0.5, -4.0> //punkt umieszczenia kamery direction 1.5*z right x*image_width/image_height look_at <0.0, 0.0, 0.0> //punkt na który patrzy (jest skierowana)kamera } sky_sphere { pigment { gradient y color_map { [0.0 rgb <0.6,0.7,1.0>] //określenie koloru (składowe r-czerwony,g-zielony,b-niebieski) [0.7 rgb <0.0,0.1,0.8>] } } } light_source { // wstawienie światła punktowego <0, 0, 0> // pozycja początkowa światła color rgb <1, 1, 1> // kolor światła translate <-30, 30, -30> // przemieszczenie x,y,z } plane { // podłoga w "szachownicę" y, -1 texture { pigment { checker color rgb 1 color blue 1 scale 0.5 } finish{ diffuse 0.8 ambient 0.1 } } } sphere { // błyszcząca kulka 0.0, 1 texture { pigment { color rgb <0.8,0.8,1.0> } finish{ diffuse 0.3 ambient 0.0 specular 0.6 reflection { 0.8 metallic } conserve_energy } } }
Licencja
Pov-Ray do wersji 3.6 (i pre-release wersji 3.7) był objęty licencjami Pov-Ray i do tego czasu był programem Freeware. Wersja 3.6 była objęta trzema licencjami: Licencją dla użytkownika, licencją dystrybutora i licencją modyfikacji[2]. Licencja modyfikacji zezwalała na ograniczone modyfikowanie programu, a zasady dystrybucji i używania przekierowywała do pozostałych licencji Pov-Ray[3].
Od wersji 3.7, Pov-Ray jest objęty licencją GNU Affero General Public License, co oznacza, że stał się programem wolnym.
Zobacz też
Przypisy
Linki zewnętrzne
- POV-Ray – Persistence of Vision Raytracer. povray.org. [dostęp 2018-08-25]. (ang.).
- Raytracing mit POV-Ray. de.wikibooks.org. [dostęp 2018-08-25]. (niem.).