|
|
Dit document is beschikbaar in: English Castellano Deutsch Francais Nederlands Russian Turkce |
door Antonio Castro Over de auteur: Ik werk in de Computerwetenschappen en ik ben er ook als hobby
mee bezig. Ik geef het toe! Ik ben een van de weinigen die Windows
echt haten. MSDOS heeft tenminste nog enig nut als speelgoed dat
doet alsof het iets waard is en je computer vult met ontelbare
bestanden waarvan je nooit zult weten waarvoor ze nu echt
dienen. Inhoud: |
Kort:
Dit artikel begint een serie over de Povray raytracer. Het doel van dit eerste artikel is om nieuwe linuxgebruikers te leren omgaan met Povray.
Als het mogelijk is probeert Povray de natuur te kopiëren, maar soms moet Povray voldoen met het nadoen of simuleren van het natuurlijke effect. Zonder zulke aanpassingen is het bijna onmogelijk om binnen een redelijke tijd het tafereel er "foto-echt" te laten uitzien. Het raytracing algoritme maakt de foto door een grote hoeveelheid lichtstralen (=rays) te volgen (=tracen). Maar deze lichtstralen zijn anders dan echte lichtstralen: in de natuur zenden lichtbronnen de stralen uit; ze botsen met objecten en worden dan verstrooid. Bij het verstrooien ontstaan nieuwe lichtstralen die uiteindelijk uitkomen bij de camera die deze registreert. Een raytracelichtstraal echter, werkt andersom: ze beweegt van de camera (=de kijker) via de objecten naar de lichtbronnen. In het volgende artikel leggen we uit waarom deze methode wordt gebruikt.
De kwaliteit van de foto's die Povray maakt is uitstekend en is vergelijkbaar met die van veel commerciële raytracers. Commerciële design producten hebben vaak ook nog geïntegreerde tools voor het ontwerpen van de objecten in het tafereel. In het geval van Povray is het mogelijk om modelers van onafhankelijke bedrijven en invoerfilters te gebruiken. Er zijn veel verschillende van zulke tools beschikbaar. Het is echter ook heel goed mogelijk om mooie of zelfs fantastische ontwerpen te maken met Povray op zichzelf. Je hebt alleen verbeelding nodig.
Een ander belangrijk punt is dat de broncode van Povray publiek is. Hierdoor is het mogelijk om de gebruikte technieken te bekijken. Het copyright van het programma is beschreven in de appendix van de handleiding. Net zoals Linux is Povray freeware. De details zijn te vinden in de originele licentie.
De Povray handleiding is in verschillende formaten beschikbaar (tekst, HTML en PostScript). De handleiding telt ongeveer 600 pagina's en is daarmee niet eenvoudig uit te printen. Dit komt doordat Povray heel veel mogelijkheden biedt. Laat dit u echter niet ontmoedigen, want met de basisconcepten die wij u in deze serie laten zien, kunt u al veel bereiken.
Povray laat ons binnentreden in de wereld van de computer-grafiek (infografie), dankzij de uitgebreide technische mogelijkheden. Ons concept van infografie is gebaseerd op het besef dat techniek op zich ons wel plaatjes kan geven met een hoog realiteitsgehalte, maar dat artistieke waarde niet gelijk is aan die realiteit noch aan de gebruikte technieken. Techniek is een waardevol middel, maar alles met een echte artistieke waarde moet eerst door de kijker bevat worden. Het idee is het belangrijkste doel van elke afbeelding.
Vaak speel ik met de concepten van werkelijkheid en fantasie. Infografie laat ons spelen met het spel van duizend-en-één figuren die interessante tegenstrijdigheden oproepen bij de kijker. Ik heb een kleine galerij van plaatjes met Povray gemaakt:
http://slug.ctv.es/~acastro/infograf/catalog.htm
Hieronder staat een voorbeeld van zo'n hybride ontwerp: een vliegtuig, een zeilboot en een zeemeeuw.
In dit eerste plaatje zien we vooral de zeemeeuw.
Het tweede perspectief echter, benadrukt veel meer de overeenkomsten van hetzelfde voorwerp met een vliegtuig.
Het object heeft het silhouet van een zeemeeuw. Aan de bovenkant is de transparante cockpit te zien waarin de piloten duidelijk zichtbaar zijn. Het kleurenspel is wat vreemd hier, maar met raytracing kunnen zulke plaatjes een hoge mate van realiteit bereiken.
Als u een vijfjarig kind zou vragen wat het was, zou hij zeer waarschijnlijk zeggen dat het een foto is, en niet een tekening. Laat hetzelfde plaatje zien aan een volwassene, dan zou deze wat moeilijkheden hebben met de beslissing: hij zou zeggen dat het een tekening noch een foto was. Misschien zou hij weten dat het gemaakt was met een computer, maar hoe kan een machine nu zo'n raar maar prachtig tafereel creëren?
Dit zijn de effecten die ik zoek in mijn ontwerpen. Tegenstrijdige plaatjes waar synthetische en namaak voorwerpen in harmonie zijn samengevoegd met enkele realistische eigenschappen. Hiervoor heb je ongetwijfeld fantasie nodig en een goede kennis van de technieken.
Om zeer realistische foto's te maken, aan de andere kant, is een zeer diepgaande kennis nodig van de technieken, maar misschien kunnen de resultaten niet altijd kunst genoemd worden.
Ik heb zeer veel goede ervaringen met Povray en weet zeker dat iedereen die ermee leert omgaan hetzelfde plezier zal beleven.
Povray kan via FTP gedownload worden. De officiële site is:
http://www.povray.org/
ftp://ftp.povray.org/
Er is ook een elektronisch tijdschrift over Povray, hoewel dat niet meer bijgehouden lijkt te worden. Enkele goede nummers zijn verschenen na het vrijkomen van Povray 3.0. Het adres van dit e-zine:
Er zijn veel mirror sites te vinden, maar geen enkele hiervan is officieel:
Index: (15-Enero-1998) ftp.povray.org
Hieronder staat de inhoudsopgave van de officiele site:
pub lrwxr-xr-x 1 povray vuser 15 Aug 24 11:12 HEADER -> povray/.message drwxr-xr-x 5 povray vuser 512 Aug 24 13:13 povray pub/povray -rw-r--r-- 1 povray vuser 305 Jan 9 01:30 .message lrwxr-xr-x 1 povray vuser 8 Aug 24 13:13 HEADER -> .message dr-xr-xr-x 2 povray vuser 1536 Aug 24 13:13 Hall-Of-Fame -r--r--r-- 1 povray vuser 3262 Aug 24 10:52 MIRRORS dr-xr-xr-x 10 povray vuser 512 Aug 24 11:14 Official-3.0 -r--r--r-- 1 povray vuser 3262 Aug 24 10:52 README.MIRRORS -r--r--r-- 1 povray vuser 3731 Aug 24 10:52 README.MIRRORS.HTML dr-xr-xr-x 2 povray vuser 1024 Aug 24 13:13 Ray-Tracing-News pub/povray/Hall-Of-Fame -r--r--r-- 1 1017 1017 235235 May 14 1996 6x86.jpg -r--r--r-- 1 1017 1017 393630 Sep 30 1994 6z4.jpg -r--r--r-- 1 1017 1017 308 Sep 30 1994 6z4jpg.txt -r--r--r-- 1 1017 1017 154256 Oct 13 1995 astplant.jpg -r--r--r-- 1 1017 1017 2991 Oct 13 1995 astplant.txt -r--r--r-- 1 1017 1017 110322 Sep 30 1994 ballz5.gif -r--r--r-- 1 1017 1017 287164 Dec 8 1994 bell_jar.jpg -r--r--r-- 1 1017 1017 57111 Oct 13 1995 bkntools.jpg -r--r--r-- 1 1017 1017 610 Oct 13 1995 bkntools.txt -r--r--r-- 1 1017 1017 331058 Sep 30 1994 brass.jpg -r--r--r-- 1 1017 1017 254 Sep 30 1994 brass.txt -r--r--r-- 1 1017 1017 284250 Sep 30 1994 bug1.gif -r--r--r-- 1 1017 1017 279273 Sep 30 1994 camera.jpg -r--r--r-- 1 1017 1017 367490 Oct 13 1995 crane.jpg -r--r--r-- 1 1017 1017 2650 Oct 13 1995 crane.txt -r--r--r-- 1 1017 1017 101473 Sep 30 1994 dragons.jpg -r--r--r-- 1 1017 1017 295129 Sep 30 1994 frosty.gif -r--r--r-- 1 1017 1017 777531 Sep 30 1994 frosty.tga.zip -r--r--r-- 1 1017 1017 88350 Sep 30 1994 geodome.jpg -r--r--r-- 1 1017 1017 2252 Sep 30 1994 geodome.txt -r--r--r-- 1 1017 1017 11801 Sep 30 1994 geosmall.gif -r--r--r-- 1 1017 1017 356889 Oct 13 1995 gofood1.jpg -r--r--r-- 1 1017 1017 483 Oct 13 1995 gofood1.txt -r--r--r-- 1 1017 1017 375781 Oct 13 1995 gogadget.jpg -r--r--r-- 1 1017 1017 825 Oct 13 1995 gogadget.txt -r--r--r-- 1 1017 1017 72337 Oct 13 1995 info_hwy.jpg -r--r--r-- 1 1017 1017 1796 Oct 13 1995 info_hwy.txt -r--r--r-- 1 1017 1017 109462 Oct 13 1995 jmwarmup.jpg -r--r--r-- 1 1017 1017 3346 Oct 13 1995 jmwarmup.txt -r--r--r-- 1 1017 1017 628 Sep 30 1994 julia.txt -r--r--r-- 1 1017 1017 50762 Sep 30 1994 kettle.jpg -r--r--r-- 1 1017 1017 295555 Sep 30 1994 kkteaset.jpg -r--r--r-- 1 1017 1017 96 Sep 30 1994 kkteaset.txt -r--r--r-- 1 1017 1017 151503 Sep 30 1994 lionfish.gif -r--r--r-- 1 1017 1017 112 Sep 30 1994 mindmaz1.txt -r--r--r-- 1 1017 1017 341101 Sep 30 1994 museum.jpg -r--r--r-- 1 1017 1017 564 Sep 30 1994 museum.txt -r--r--r-- 1 1017 1017 364856 Aug 19 1995 pcktwtch.gif -r--r--r-- 1 1017 1017 580 Aug 19 1995 pcktwtch.txt -r--r--r-- 1 1017 1017 590679 Jan 29 1996 pcktwtch.zip -r--r--r-- 1 1017 1017 417 Sep 30 1994 pclock.txt -r--r--r-- 1 1017 1017 213426 Sep 30 1994 plntscap.gif -r--r--r-- 1 1017 1017 2558 Sep 30 1994 plntscap.txt -r--r--r-- 1 1017 1017 125648 Oct 13 1995 springeq.jpg -r--r--r-- 1 1017 1017 1129 Oct 13 1995 springeq.txt -r--r--r-- 1 1017 1017 239594 Sep 30 1994 studying.jpg -r--r--r-- 1 1017 1017 244179 Oct 13 1995 subrace.jpg -r--r--r-- 1 1017 1017 2681 Oct 13 1995 subrace.txt -r--r--r-- 1 1017 1017 191332 Sep 30 1994 sundae.gif -r--r--r-- 1 1017 1017 162140 Sep 30 1994 woild2.gif pub/povray/Official-3.0 -r--r--r-- 1 povray vuser 80 Jul 20 01:47 .message drwxr-xr-x 2 povray vuser 512 Dec 16 03:53 Amiga dr-xr-xr-x 2 povray vuser 512 Aug 24 10:31 Docs lr-xr-xr-x 1 povray vuser 11 Aug 24 11:14 HEADER -> ../.message dr-xr-xr-x 2 povray vuser 512 Aug 24 10:31 Linux dr-xr-xr-x 2 povray vuser 512 Aug 24 10:31 MS-Dos dr-xr-xr-x 2 povray vuser 512 Aug 24 10:36 Macintosh -r--r--r-- 1 povray vuser 83 Jul 20 01:48 README -r--r--r-- 1 povray vuser 222 Feb 6 1997 README.HTML-DOCS dr-xr-xr-x 2 povray vuser 512 Aug 24 10:31 SunOS dr-xr-xr-x 2 povray vuser 512 Aug 24 10:32 Unix dr-xr-xr-x 3 povray vuser 512 Aug 24 10:32 Windows -r--r--r-- 1 povray vuser 15055 Jul 19 1996 gamma.gif -r--r--r-- 1 povray vuser 1776 Jul 19 1996 gamma.gif.txt -r--r--r-- 1 povray vuser 3735 Feb 6 1997 news.3.01.txt -r--r--r-- 1 povray vuser 18452 Feb 5 1997 povlegal.doc -r--r--r-- 1 povray vuser 24060 Feb 1 1997 povwhere.get -r--r--r-- 1 povray vuser 110 Aug 24 11:01 www.html pub/povray/Official-3.0/Docs -r--r--r-- 1 1017 1017 413 Feb 7 1997 README -r--r--r-- 1 1017 1017 286517 Feb 7 1997 povdoc.zip -r--r--r-- 1 1017 1017 764628 Feb 7 1997 povdocps.zip -r--r--r-- 1 1017 1017 1601733 Feb 7 1997 povhtml.zip -r--r--r-- 1 1017 1017 18452 Feb 7 1997 povlegal.doc -r--r--r-- 1 1017 1017 24060 Feb 2 1997 povwhere.get pub/povray/Official-3.0/Linux * * * * * -r--r--r-- 1 povray vuser 786 Jul 20 01:41 00_index.txt -r--r--r-- 1 povray vuser 442 Jul 20 01:42 README -r--r--r-- 1 povray vuser 1506794 Feb 2 1997 povdoc.html.tgz -r--r--r-- 1 povray vuser 908752 Aug 1 1996 povdoc.ps.gz -r--r--r-- 1 povray vuser 1678592 Jul 18 13:02 povlinux.tgz |
Voor Linuxgebruikers zijn vooral de mappen pub/povray/Official-3.0/Linux en pub/povray/Hall-Of-Fame interessant. In de tweede map staat namelijk wat niet in de uitgebreide handleiding staat: voorbeelden.
De Povray handleiding is uitstekend, maar een plaatje zegt meer dan duizend woorden. Ten eerste is de handleiding niet goed geïllustreerd. En ten tweede staan in de tweede directory verschillende plaatjes die een uitstekende aanvulling op het handboek zouden zijn. Ik wil niet zeggen dat het handboek niet genoeg voorbeelden heeft, integendeel, het heeft er vé&eacut;l. Elk ervan legt een concept uit en het is goed om je in technische zaken te verdiepen. Sommige voorbeelden zijn ook erg mooi, maar de 'Hall-Of-Fame' bevat een selectie van de mooiste plaatjes ooit gemaakt: een echt infografische galerij. Elk plaatje heeft een tekst die uitleg geeft over de gebuikte tools en technieken.
We zijn ons er hierbij van bewust dat veel van deze tools zoals de modellers en filters, niet beschikbaar zijn.
We raden u de Linuxversie van Povray (ftp.povray.org/pub/povray/Official-3.0/Linux) en de Hall Of Fame (ftp.povray.org/pub/povray/Hall-Of-Fame) aan.
We gaan nu uitleggen hoe de installatie uitgevoerd kan worden. Het zou op elke Linux-versie moeten werken, maar is alleen uitvoerig getest op Debian.
Zoals gebruikelijk bij installaties loggen we in als super user (root). Laten we ervan uitgaan dat de Povray distributie in de directory /incoming/pub/povray/Official3.0/Linux staat. We typen dan de volgende commando's:
# mkdir /usr/local/sbin # mkdir/usr/local/apli # mkdir /usr/local/apli/povray # cp "/incoming/pub/povray/Official-3.0/Linux" /usr/local/povray # cd /usr/local/povray # tar -xzf povlinux.tgz # tar -xzf povdoc.html.tgz # cd /usr/local/sbin # ln -s /usr/local/apli/povray/povray3/x-povray x-povray # ln -s /usr/local/apli/povray/povray3/s-povray s-povray |
De laatste opdrachten installeren alles: er hoeft niets gecompileerd te worden. Er moet wel nog gecontroleerd worden of alle directories en programma's (x-povray en s-povray) voor iedereen uitvoerbaar zijn. In ons geval moeten we deze nog goed zetten, en doen we dat met het commando 'chmod 755 (directory of bestand)'.
De taak van de Povray setup is om de 'include' bestandsbibliotheken toegankelijk te maken en de videokaart goed in te stellen. Veel andere instellingen kunnen veranderd worden, zoals de invoer- en uitvoerformaten.
In plaats van vragen te beantwoorden die zeer uitgebreid staan uitgelegd in de Quick Start van de handleiding, gaan we uit van een algemene configuratie die Linux-gebruikers eenvoudig kunnen gebruiken.
Povray kan taferelen weergeven in SVGA-modus maar dit is afhankelijk van de videokaart. We gaan er van uit dat u een Linux-versie heeft met Xwindows en 'xv' als programma gebruikt om plaatjes te laten zien.
De configuratie kan in nieuwere versies van Povray eenvoudiger. Het is mogelijk om omgevingsvariabelen te gebruiken, maar het is makkelijker om een configuratiebestand *.ini te maken met daarin alles wat nodig is.
Er zijn verschillende *.ini bestanden als voorbeeld gegeven voor algemene doeleinden. Deze voorbeelden geven aan hoe de configuratie opgezet kan worden. Het is mogelijk een verwijzing te maken naar ons originele configuratiebestand in een omgevingsbestand of variabelen te gebruiken om de lokatie te zetten. Het is misschien ook een goed idee om opties als argumenten mee te geven, maar wij hebben de voorkeur om alles in een configuratiebestand te zetten en deze via een argument mee te geven. Als deze methode niet bevalt, kunt u in het handboek andere methoden vinden die hetzelfde resultaat hebben. In dit introducerende artikel geven wij alleen de meest bruikbare methode.
Er is ook een shellscript beschikbaar dat de plaatjes maakt die als voorbeeld gegeven zijn: allscene.sh.
U kunt deze plaatjes dan ook in een hoge resolutie renderen. In dat geval kan Povray met het volgende configuratiebestand gestart worden:
-------------------------8<------------(ini.ini)---------------- Width=640 Height=480 Quality=8 Library_Path=/usr/local/apli/povray/povray3/include Output_to_File=on Output_File_Type=t Output_File_Name=out.tga verbose=on -------------------------8<--------------------------------------
De eerste twee regels in dit bestand bepalen de resolutie van het plaatje dat gemaakt wordt. Het volledige commando om het plaatje te renderen is dan:
$ s-povray ini.ini +i source.pov
Het bestand 'source.pov' is het bestand dat we willen verwerken, zodat we het plaatje met de bestandsnaam 'out.tga' krijgen. We kunnen dit plaatje bekijken met bijvoorbeeld xv : 'xv out.tga'.
Het programma 'pov' is een shellscript dat het gebruiken van Povray makkelijker maakt. Hieronder staat de broncode:
------------------------8<----------------------------------- #!/bin/bash ##################################################################### # Autor: Antonio Castro Snurmacher (1.998) # # pov (ver 1.0) # # Esta versión esta dedicada a su inclusión en la # revista LinuxFocus (freeware) # # Este programa puede ser utilizado, distribuido, y modificado # libremente pero siempre se deberá respetar la propiedad # intelectual de su autor. Esta cabecera debe ser conservada # tal cual en todas las modificaciones. # # En caso de traducción deberá conservarse el texto original de # esta cabecera y añadirse la traducción a continuación de ella. # # El autor renuncia a todo tipo de beneficio económico y no se hace # responsable de los posibles perjuicios derivados del uso del mismo. # # E-mail (acastro@ctv.es) # ##################################################################### # Author: Antonio Castro Snurmacher (1.998) # # pov (ver 1.0) # # This version has been written to be included in # the LinuxFocus magazine (freeware) # # This program can be used, distributed, and modified # freely but always has to respect the intellectual # property of the author. This header should be kept # untouched in every modification. # # In case of translation the text of this header should be kept # and the translation will be added after it. # # The author renounces to any kind of economic benefit # and he is not responsible for any damage derived from # the use of this script. # # E-mail (acastro@ctv.es) # ##################################################################### usage(){ echo "Usage: pov (project) (size=0..6) (quality=1..11)" echo echo "0) 40x30 (STD/20) No backup" echo "1) 80x60 (STD/10) No backup" echo "2) 100x75 (STD/8) No backup" echo "3) 200x150 (STD/4)" echo "4) 266x200 (STD/3)" echo "5) 320x200 *" echo "6) 400x300 (STD/2)" echo "7) 640x480 *" echo "8) 800x600 * (STD)" echo "9) 1024x768 *" echo echo "The projects should be located in the directory pointed by" echo "${HOMEPOV} and will use the same name for it and for" echo "the main source file *.pov" echo "(STD) is the standard resolution chosen." echo exit 1 } newversion(){ mv ${PREFIX}.pov.8.gz ${PREFIX}.pov.9.gz 2> /dev/null mv ${PREFIX}.pov.7.gz ${PREFIX}.pov.8.gz 2> /dev/null mv ${PREFIX}.pov.6.gz ${PREFIX}.pov.7.gz 2> /dev/null mv ${PREFIX}.pov.5.gz ${PREFIX}.pov.6.gz 2> /dev/null mv ${PREFIX}.pov.4.gz ${PREFIX}.pov.5.gz 2> /dev/null mv ${PREFIX}.pov.3 ${PREFIX}.pov.4 2> /dev/null mv ${PREFIX}.pov.2 ${PREFIX}.pov.3 2> /dev/null mv ${PREFIX}.pov.1 ${PREFIX}.pov.2 2> /dev/null cp ${PREFIX}.pov ${PREFIX}.pov.1 gzip ${PREFIX}.pov.4 2> /dev/null } ################################################# size(){ export SAVE="yes" case $1 in 0) Width=40 ; Height=30; SAVE="no" ;; 1) Width=80 ; Height=60 SAVE="no" ;; 2) Width=100; Height=75 SAVE="no" ;; 3) Width=200; Height=150;; 4) Width=266; Height=200;; 5) Width=320; Height=200;; 6) Width=400 ;Height=300;; 7) Width=640 ;Height=480;; 8) Width=800 ;Height=600;; 9) Width=1024;Height=768;; *) usage esac } quality(){ case $1 in 1) ;; 2) ;; 3) ;; 4) ;; 5) ;; 6) ;; 7) ;; 8) ;; 9) ;; 10) ;; 11) ;; *) usage esac export Quality=$1 } ####################### main ############################## export HOMEPOV=${HOME}/dat/pov export PROYECT=$1 export PREFIX=${HOMEPOV}/${PROYECT}/${PROYECT} if [ $# != 3 ] then usage fi export POVRAY=/usr/local/apli/povray/povray3 size $2 quality $3 if [ $SAVE == "yes" ] then newversion fi cat <<-FIN > ${PREFIX}.ini Width=$Width Height=$Height Quality=$Quality Library_Path=${POVRAY}/include Input_File_Name=${PREFIX}.pov Output_to_File=on Output_File_Type=t Output_File_Name=${PREFIX}.tga verbose=on Post_Scene_Command=xv ${PREFIX}.tga FIN # Output_File_Type=t ## Others hight performace options ## # Antialias_Depth=3 # Antialias=On # Antialias_Threshold=0.1 # Jitter_Amount=0.5 # Jitter=On # Low priority, maybe I want to do other things. nice -20 x-povray ${PREFIX}.ini if [ $SAVE != "yes" ] then echo "Warning !! There is no backup of this version." fi ------------------------8<-----------------------------------
Als we aan het ontwerpen zijn, is het handig om regelmatig ideeën te testen, waardoor we stap voor stap dichter bij ons doel komen.
Om het starten eenvoudiger te maken gaan we een shellscript schrijven dat configuratiebestanden maakt, daarna Povray start en tenslotte het resultaat laat zien. We gaan er van uit dat we in de directory $HOME/dat/pov/(projectnaam) werken en dat de naam van het hoofdbestand (projectnaam.pov) is.
Het script maakt een configuratiebestand dat voor de meeste situaties voldoet. Het is ontworpen voor een specifieke manier van werken, maar het is eenvoudig aan andere wensen aan te passen.
Het programma maakt een back-up van de laatste veranderingen in de broncode van het hoofdbestand, omdat we vaak terugwillen naar de vorige versie. Zo kunnen veel kleine veranderingen uitgeprobeerd worden, waarbij we altijd weer terug kunnen naar een eerdere ingeslagen weg in het ontwerp. Zoals als eerder gezegd is, is het een creatief proces dat op schilderen lijkt: bij elke stap bepalen we hoe we verder willen.
Als het script echter in lage resolutie wordt gebruikt, genereert het geen back-up en geen nieuwer versienummer. De lage resolutie is alleen voor oninteressante, korte testen. Met deze testen kunnen we snel een idee krijgen van de posities van de objecten tegenover elkaar. Dit is een manier van werken die mij erg ligt, en die ook erg goed werkt als je geen ervaring hebt met Povray. Later kunt u het script aanpassen aan persoonlijk eisen.
Sommige resoluties zijn gelijk aan die van videokaarten. Andere zijn fracties van de 800x600 resolutie. Gebruik het commando ´pov´ zonder argumenten om een kort helpmenu te krijgen.
Maak een handige directorystructuur om in te werken in jouw $HOME. Dit maakt het werken met Povray en pov van in het begin een stuk makkelijker. In deze serie zullen de oefeningen gebaseerd zijn op het pov script. Hoewel het niet noodzakelijk is om het te gebruiken, zal het wel een stuk comfortabeler zijn.
We beginnen met een eenvoudig voorbeeld om te testen of alles goed werkt.
------------------------8<----------------------------------- #include "colors.inc" #include "textures.inc" #include "glass.inc" // Author: Antonio Castro // The camera will look towards the contact point // of both spheres camera { location <0, 15, 35> look_at <0, 10, 0> } // Source of white light object { light_source { <20, 100, 50> color White } } // Sky with white clouds object { sphere { <0, 0, 0> 200000} // Great vault of heaven texture {Blue_Sky scale <50000, 6000, 50000>} // We strecht the clouds } // Golden ball sphere { <-10, 10, 0> 10 texture { Gold_Metal } } // Mirror ball sphere { <10, 10, 0> 10 texture { Mirror } } // Glass ball sphere { <0, 5, 10> 5 texture { T_Glass1 } } // Floor // It is made with a great sphere that touches the center <0,0,0> // but it could be implemented with a plane. sphere {<0, -1000000, 0> 1000000 pigment {checker color Red color Yellow scale 2 } // Checker texture } ------------------------8<-----------------------------------
Kopieer dit bestand naar $HOME/dat/pov/sample1/sample1.pov. Maak eventueel eerst deze directorystructuur aan. Het pov script moet gebruikt worden vanuit Xwindows met een terminal, waarbij uw eigen login gebruikt moet worden.
$ pov sample1 4 9
Het script zou dan ´xv´ moeten starten en het resultaat moeten laten zien. Als u van plan bent zelf landschappen te maken, raden wij u aan om het Povray handboek als read-only tekstbestand te openen met bijvoorbeeld ´vi´. Het is dan eenvoudig om snel de Povray commando´s met hun syntax op te zoeken en gegeven voorbeelden te bekijken.
Site onderhouden door het LinuxFocus editors team
© Antonio Castro, FDL LinuxFocus.org Klik hier om een fout te melden of commentaar te geven |
Vertaling info:
|
2001-08-16, generated by lfparser version 2.17