Narsil č. 14

POV Ray v2.0

↑

POV-Ray v2.0

Než začnu popisovat všechny schopnosti a možnosti programu POV-Ray, tak bych měl alespoň zlehka nastínit význam slova raytracing. Takže touto matematickou metodou se počítá, v závislosti na umístění světelných zdrojů, kamery a objektů, celý 3D svět, který se posléze (někdy to trvá třeba i 10 hodin) vygeneruje do pro nás známého bitmapového formátu. Samozřejmě, aby vše působilo mnohem realističtějí, přiřazují se povrchům objektů různé materiály s určitým lomem světla a stanovují se další podmínky o nichž se zmíním později.

Kromě metody raytracingu existuje ještě spousta jednodušších metod, např. shading (pouze stínování), nebo jen prosté vykreslení perspektivy pomocí Z-bufferingu, a jak jsem se nedávno dozvěděl, existuje ještě jakási dokonalejší metoda, jejíž název si bohužel nepamatuji (chce-li se k tomu někdo vyjádřit, má možnost).

A jakým způsobem pracuje program Persistence of Vision Raytracer (POV-Ray)? Narozdíl od různých jiných (jako např. Autodesk Animator, CAD 3D, Xenomormph apod.) jsou v něm všechna data, objekty, světla i jejich pohyb popsána v ASCII podobě, což sice na jednu stranu přinese mnoho potíží při představování, jak taková vize bude vypadat, ale na stranu druhou, není už nutné používat všelijaké pomocné editory, jako například kombinace u našeho oblíbeného CADu 3D, kde bylo nutné v Cyber Sculptu si udělat tvar, pak přejít do CAD 3D a nadefinovat přibližné pozice a pomocí Cyber Controlu s nimi hýbat. V POV-Ray se všechno zapíše do jednoho souboru pomocí poměrně jednoduchého programovacího jazyka. Jedná se o jakousi kombinaci BASICu a C zaměřenou pochopitelně pouze na 3D grafiku.

I přes tento poměrně těžkopádný způsob se s pomocí různých utilit, existuje například převaděč z formátu 3D2 do formátu POV, nebo různé utility z jiných počítačů, jejichž hlášení si všimnete v různých POV souborech od různých autorů.

Ano, POV-Ray je jako jeden z mála programů přístupný úplně všude, což z něj vlastně vytváří jeden z nejuniverzálnějších prostředků, pro vytváření 3D grafiky, na světě. Jeho zdrojáky jsou k dispozici pro snad každý myslitelný stroj (Amiga, PC, Macintosh, Sun) a každý myslitelný operační systém včetně Unixu. Nunto říci, že ani autor původní verze DKBTrace v 2.12 od Davida K. Backa & Aarona A. Collinse z níž POV-Ray 1.0, 2.0 vyšel a ani autoři těchto novějších verzí jako Alexander Enzmann či Dan Farmer (všichni jsou i s kontakty vypsání na konci souboru POVRAY.DOC) na naše ATARI vůbec nepomysleli. Naštěstí pro nás, se však v roce 1993 o zkompilování a přizpůsobení do našich podmínek zasloužila jistá francouzská skupina v čele s RedRackamem, tedy pokud se bavíme o verzi 2.0, nebo o něco později byla generována také verze 2.2 od Dirka Klemmta z Německa. Praktické vylepšení mezi nimi však zpozoruje patrně pouze zkušený ray-trace man (já to nejsem :-).

A protože během svého vývoje doznal POV-Ray velikých změn a vylepšení, které se pochopitelně promítly i do jeho velikosti. Nejkratší verze, a je to pouhé .TTP, má něco kolem 230 kb. Pokud však máte počítač bez FPU , bude kód o 100 Kb delší a jedna jeho adaptace má dokonce přes 500 Kb. Minimální rozsah pro skutečnou práci je tedy 1 MB a čím více, tím lépe. Tato složitost a délka však není nijak neodůvodnitelná. Když uvážíme počet autorů a snahu o vylepšení programu v závislosti na požadavcích uživatelů z určité značky počítače, není se čemu divit, že program obsahuje spoustu opravdu záhadných příkazů, jejichž pochopení patrně zebere delší čas než jedno pročtení 200 Kb manuálu, který je přidávan k hlavním souborům a demo scénám.

Určit se dá, podobně jako v těch nejbombastičtějších 3D studiích na pracovních stanicích, úplně všechno. Počínaje tvary objektů, k dispozici jsou klasické koule, kužely, trojúhelníky, kvádry, obdelníky, nebo méně obvyklé, jako hyperboloidy, paraboloidy, Height Fields (hory), v nedávné době moderní bloby ad. Pochopitelně nové komplexní objekty mohou být vytvořeny pomocí rozdílu nebo třeba průnikem dvou jednoduchých tvarů.

Dál se dá samozřejmě určit i barva objektů, buď definovaná v tzv. include souborech, tj. základní, nebo vytvořená zcela nová pomocí složek RGB, přičemž každá složka nabývá hodnotu mezi 0-1. U každého objektu lze však kromě barvy určtit také její materiál či ho třeba potáhnou GIFem (bitmapou). Ale pokud by se vám ani poté nezdála scéna dostatečně realistická, existují různé další metody jako phong a specular highlighting apod. (překlad mi prozatím není úplně jasný).

Pokud máte nějaký zvláštní zájem na animování (máte buď hodně volného času, nebo hodně výkonný počítač), tak jsou samozřejmě k dispozici různé rotace, přemisťování a zvětšování, ať už jednotlivých objektů, světel či kamery v závislosti na čase.

S většinou operátorů můžete prostě zácházet jako s kterýmikoliv proměnnými, tedy dosazovat si do souřadnic například y*5, nebo do rotací třeba x*30 apod. POV-Ray má navíc také rezervovaná slova, která jako proměnné použít naopak nesmíte, věsměs se všechny píšou malým písmem.

Výstupní formát je TGA, dump, RAW, podle druhu počítače a verze mohou být podporovány i další. U TGA se jedná o nepakovanou verzi, tj. co 3 bajty to bod v 16 miliónech barvách. Na řádku je tedy 3 x šířka řádku bajtů a velikost obrázku můžete spočítat pomocí vzorce 3 x výška x šířka. Právě tolik místa budete na disketě potřebovat.

Protože výpočet trvá, zvláště na ATARI ST s 8 Mhz, velmi dlouho, existuje možnost např. snížení kvality obrázku, třeba budete chtít vidět jak bude vše vypadat jen zhruba, lze použít switche +Q (kvalita) v rozsahu 0-9. A pokud se už jedná o konečný obrázek (+Q9), tak můžete končit třeba po vyrenderování 10 řádků a po týdnu třeba od 10 řádku pokračovat. Prostě 100% variabilita pro všechny ;-).

A nakonec po dlouhých dnech renderování si můžete konečně svůj výtvor prohlédnout. Kde? Například v Photochrome v 3.0, který vám obrázek zkonvertuje rovnou do formátu SPC či Dougova interního nazvaného PCS. Photochrome najdete, buď v v Narsilu no. 3, nebo na kterékoliv BBS. A ti štastnější z nás si mohou vzít nějaký pořádný prohlížeč a dívat se na TGA obrázky rovnou v 65536 barvách.

V krátkosti se toho opravdu příliš napsat nedá, a ostatně, ani já ještě nechápu ani pětinu všech možností, protože jsem prostě nikdy neviděl tak propracovaný program. Vzpomenu-li si na 3D2, tak se nad formátem bez barev se plným spousty trojúhelníků mohu jen pousmát, toto je opravdu o nečem jiném.

Teď si určitě říkáte, že takový program musí stát tisíce a stejně byste se k němu nikdy nedostali, že? Ale mohu vás uklidnit, opak je pravdou, celý balík je absolutní FREEWARE, dokonce jsou k dispozici zdrojové texty, které si může kdokoliv rekompilovat znovu, má-li na to chuť, osobně bych to však příliš nedoporučoval, protože chyb má POV-Ray po tolika letech vytváření, už opravdu jen málo.

Po celém světě (bohužel ne u nás), existují stanice BBS, které nedělají téměř nic jiného, než se věnují schraňování dat ve formátu POV a sledování dalšího vývoje utilit a podobných prográmků. Tam, kdybyste si zavolali, můžete stáhnout ta největší díla skutečných mistrů v oboru.

Dokonce i u ATARI vznikla další věc pro podporu tohoto programu, jedná se o POV-Shell v němž si nainstalujete přístupové cesty k include souborům, váš oblíbený textový editor, grafický program, prohlížeč obrázků, jeho velikost a kvalitu, nebo například. animaci. Po sítích se prozatím pohybuje verze 1.4, kterou ostatně najdete i v Public Sectoru. U tohoto programu se však už jedná o shareware, takže má přece jen nějaká omezení, ovšem i ta mohou být po zaplacení 30DM zdárně vyřešena. Pokud by někomu nebylo jasné proč se používá u POV-Raye shell, tak bych asi měl připomenout, že se jedná o obyčejné TTP, tj. žádný komfort není k dispozici. Na druhou stranu díky tomu funguje bez problému pod Multitosem.

Další věcí, jedná se pouze o data, je hyperbáze o POV-Ray ve formátu ST-Guide. Žádné další věci já osobně bohužel nespatřil.

Takže tím pro dnešek končím. Ale příště už se pustíme do opravdové instalace a vytváření prvních vlastních výtvorů.

HEAD