Home Index Search Links About Us
[LinuxFocus Image]
[Navegation Bar]
  News   Archives   Companies   Tips  

Povray'e Baþlangýç

by Antonio Castro

by Murat Koç


Giriþ

Povray'in Çok Önemli Özeliklerinden Bazýlarý

Povray'in Elde Edilimi

Kurulum

Ayarlama

POV: Povray'le çalýþmak için bir kullanýmaracý

Bu yazý ile Povray ýþýnizleyicisi hakkýnda bir yazý dizisine baþlanmaktadýr. Bu yazýnýn amacý POV-Ray'e baþlayacak yeni kullanýcýlara yardým etmektir.

Persistence of Vision Ray-Tracer (POV-Ray) Copyright 1996 POV-Team.


Giriþ.

Povray (Persistence of Vision Raytracer) temel olarak bir ýþýnizleyicidir. Bu terimin anlamýný bir takým ayrýntýlara girmeden açýklamak zordur, bu yýzden bunu ayrýntýlý olarak açýklamayý ilerideki bir yazýya býrakalým. Bu an kabataslak olarak ýþýnizleyici dýþýncesinin ne olduðunu anlatmak için; nesnelerin ve onlarýn þekillerinin, ýþýk kaynaklarýnýn, noktalarýn ve bir kameranýn varlýðýnýn belirtimini yapan modelleri kullanarak bilgisayarda tanýmlanmýþ sanal görüntülerin oluþturulmasýný saðlama tekniði diyebiliriz. Bilgisayar minimum iþlem zamanýnda olabildiði kadar gerþeðe yakýn bir görüntü oluþturmaya çalýþýr. 

Mýmkýn olduðunda POV-Ray doðayý taklit etmeye çabalar. Bazan POV-Ray doðal bir etkinin öykünümü (simulation) ya da için uðraþmak zorunda kalabilir. Bazý kýsa yollar olmadan bir imgeyi yeterli zamanda oluþturmak olanaksýz olabilir. Iþýnizleme algoritmalarý büyük tutarda ýþýnlarý(ýþýk ýþýnlarý gibi) hesaplayarak çalýþýr, bununla beraber bu ýþýnlar gerçek optik ýþýnlar gibi davranmazlar. Doðada, ýþýnlar ýþýk kaynaklarýnýn içinde oluþurlar, boþlukta hareket eder ve fiziksel bir engelle (bir yüzey gibi) karþýlaþýnca saçýlýr, çarptýðý noktada kameranýn filmi veya retinaya giden yeni bir ýþýn oluþturur. Öte yandan, bir ýþýnizleyici ýþýnlarý ters yönde, retina veya filmden nesnelere ve sonra ýþýk kaynaðýna doðru hareket eder. Bu algortmanýn nasýl olduðunun ayrýntýlý açýklamasýný gelecek yazýya býrakalým. 

Povray'in niteliði mükemmel ve çok yaygýn ýþýnizleyicilerle karþýlaþtýrýlabilir. Iþýnizlemeye dayandýrýlan tecimsel (ticari) tasarým ürünleri bütün nesne türlerini rahatça tasarlamak için tümleþik elaygýtlarýna sahiptirler. 

Povray' de, deðiþik baðýmsýz kuruluþlardan veya biçim süzgeçlerinden modeller kullanmak mümkündür, kullanücü genel olarak çok sayýda elaygýtýna sahiptir. Bu Povray'i kapsamlý olarak kullanarak güzel veya güzelin de ötesinde düþlemsel (fantastik) tasarýmlara eriþilemeyeceði anlamýna gelmez. Tüm gereksinim duyulan þey imgeleme gücüdür. 

Bir baþka önemli nokta kaynak düzgüsünün (kodunun) toplumsal olmasýdýr. Bu, bize kullanýlan çok çeþitli teknikleri sýnama olanaðý verir. Povray'in yazmahakký elyordamýnýn A ekinde betimlenmektedir, linux gibi o da ücretsiz bir lisansa sahiptir. Ayrýntýlar için özgün lisansi inceleyin. 

HTML, PostScript ve metin (hýzlý gezinme için daha kolaydýr) biçimlerinde elde edilebilen bir Povray elyordamý bulunmaktadýr. ,Eger postscipt biçimlisinin çüktüsünü almak istiyorsanüz, yaklaþük 600 sayfa hazýrlamanýz gerekmektedir; bu büyük deðer aslýnda Povray'in büyük olanaklarýný yansýtmaktadýr ancak bundan dolayý çekinmeye de gerek yoktur. Bu yazýda Povray'i deneme þansýna eriþilebilecek ve gelecek yazýlarda temel kavramlar öðrenilecektir. 

Povray, onun üstün teknik yetenekleri sayesinde, bizim bilgiçizim dünyasýna ön kapýdan girmemize olanak saðlamaktadýr. Benim bilgiçizim kavramým salt bir tekniðin imgeleri yüksek gerçeklikle elde etmemize yardým edebileceði düþüncesi olmasýna raðmen, sanatsal deðerin gerçekliðe ve tekniðe yalnýz baþýna eþdeðer olamayacaðýdýr. Teknoloji deðerli bir yardýmcýdýr, ama sanatsal deðeri olan herþey ilk önce bizim kafamýzda oluþmalýdýr. Düþünce asýl amaçtýr. 

Çoðu kez gerçeklik ve düþlem (fantasy) düþünceleriyle oynamaktan hoþlanmýþýmdýr. Bilgiçizim bu oyunun binbir biçimini izleyicide ilginç bir çatýþma yaratarak oynamamýza izin verir. 
Aþaðýdaki bulunakta (adreste) küçük bir imge (image) sergievim (galerim) bulunmaktadýr.: 

http://slug.ctv.es/~acastro/infograf/catalog.htm 

Ýþte bir örnek, melez bir tasarým: bir uçak, bir yat ve bir martý. 

Seagull 1 

Seagull 1

Bu ilk imgede daha çok bir martý benzeri görmekteyiz. 

 

Seagull 2 

Seagull 2

Bununla beraber nesnenin ayný olmasýna karþýn ikinci görüngeden (perspektiften) daha cok bir uçak benzeri göründüðü söylenebilir. 

Nesne bir martýnýn karaltýsýna (siluet) sahiptir. Nesnenin Üst kesimde saydam bir kokpite ve iki pilota sahip olduðu kolayca görülebilmektedir. Renklendirme yadýrgatýcý olmakla birlikte ýþýnizlemeyle bu resimler þaþýrtýcý bir gerçeklik derecesine çýkabilmektedir. 

Eðer bu resimleri 5 yaþýndaki bir çocuða gösterecek olur ve ona ne gördýgýný sorarsanýz, onun bir resim olduðunu söyleyecektir, bir çizim olduðunu deðil. Eðer bir yetiþkine gösterecek olursanýz, sýnýflandýrmada bazý güçlükler çekebilir. Ne bir resim ne de bir çizim olduðunu söyleyebilir. Belki bilgisayar tarafýndan yaratýldýðýný bilebilir ama bir makine nasýl olur da bu kadar deðiþik ve güzel bir sahne yaratabilmektedir? 

Bu tür etki tasarýmlarýmda oluþturmak istediklerimdendir. Birleþimli ve yapay yapýlarýn çeþitli gerçek özeliklerle bir araya getirildiði çatýþan imgeler bu doðrultudadýr. Bunun için, kuþkusuz gereksiniminiz imgeleme ve iyi bir teknik bilgidir. Öte yandan çok gerçekçi imgeler elde etmek için teknik üzerinde tam bir kontrole sahip olmanýz gerekebilir ama bu belki de sanat olarak adlandýrýlmayabilir. 

Povray'le gerçekten çok güzel zamanlar geçirdim ve eminimki ögrenen biri de ayný þekilde hoþlanacaktýr.   

Povray'in Çok Önemli Özeliklerinden Bazýlarý

  • Bir imgenin kýsmen görýntýleþtirilmesi. Daha önceden kesilmiþ bir görüntüleþtirme iþlemine devam edilmesi mümkündür. 
  • Farklý çözünürlükle görüntüleþtirme için seçenekler ve iþleme süresini azaltmak için yetkinleþtirme ölçekleri. 
  • Bir imgeyi yaratýrken görüntüleme sýðasý. (SVGA ve XWindows' da). 
  • Mosaic türü çabuk öngözlemleme. 
  • Hangi aþamanýn en çok merkezi iþlem birimi (CPU) zamaný yuttuðunu sýnamamýza olanak saðlayan yanaylama (profiling) bilgili bütünleþik hesaptan çýkýþ iþlemleri. 
  • Ýyi bir yanýlgý saptayýcýsý ile dilbilgisel öninceleme. 
  • Herhangi bir doku yaratmak için çok fazla olasýlýk içeren çok sayýda doku kitaplýðý. 
  • Yuzey etkileri: pürüzlülük, parlaklýk, yansýmalar, saydamlýk, vs, 
  • Temel geometrik temelögeler (küreler, koniler, yüzeyler, küpler, prizmalar, vs.) 
  • Karmaþýk matematiksel eþitliklere dayanan geometrik nesneler. 
  • Birbirine geçmiþ üçgenlerden oluþan þekiller. 
  • Kenarlarýn düzgünleþtirilmesi, örneðin üçgen kesiþimlerinden oluþan yüzeyler. 
  • Basit nesnelerin birleþimi ile oluþan karmaþýk nesneler. 
  • Ýzleyicinin verimini arttýrmak icin basit þekiller yardýmý ile karmaþýk nesneleri sýnýrlandýrmak. 
  • Düz bir imgeden biçim renklendirmesi. 
  • Rengi ile orantýlý olarak pikselleri arttýrarak düz renklendirilmiþ bir imgeden üretilen biçimler. (Kara parçalarý üretimi için çok yararlý) . 
  • Çembersel devinimle üretilen nesneler. 
  • TIFF kaynaklarýndan 3 boyutlu yazýlar. 
  • Atmosferik etkiler, orneðin sis. 
  • Çeþitli ýþýk kaynaklarý ile ýsýklandýrma etkileri, orneðin spot ýsýklarý vs. 
  • Antialias için deðiþik seçenekler. Antialiase düþük çözünürlükte sýk sýk oluþan ve oldukça bilinen basamak etkilerini silme yöntemi ile bizim çizgi görüntümüzü arttýrýr. Povray antialias için çeþitli yöntemler sunar. 
  • Sahne betimlemesi için bütünleþik bir dil. 
  • Çeþitli yöntemlerle canlandýrým yaratýlmasý: 
    1. Dýþ döngü (seçenek Clock=n.n). 
    2. Ýç döngü (düzgünün kendisinde iç parametler kullanarak). 
    3. Bir içerme (include) dosyasý içerisinde tanýmlayarak sabitleri tanýmlamamýza izin verir, böylece kullaným takýmlarý (utility) ya da her bir canlandýrým aþamasýnda bu içerme dosyalarýný güncelleyen kabuk yazýlýmlarýyla (scripts) dýþ canlandýrýmlar üretmek mümkündür. 

Povray'in Elde Edilimi

Povray ftp ile elde edilebilir. 
Aþaðýdaki resmi yöreden elde edebilirsiniz: 

http://www.povray.org  
ftp://ftp.povray.org  
 

Povray üzerine ayrýca bir elektronik dergi de bulunmaktadýr, terk edilmiþ görünmesine raðmen Povray 3.0 sürüldügü zamanki bazý güzel yayýnlarý içermektedir. 

http://www.povray.org/pub/povray/ezine  
 

Bir cok yansý yöresi olmasýna raðmen hiçbiri resmi deðildir. 
 
 
FTP 
sunsite.wits.ac.za:/pub/mirrors/ftp.povray.org 
gd.tuwien.ac.at:/graphics/raytracing/povray 
ftp.cdrom.com:/pub/povray 
wuarchive.wustl.edu:/graphics/graphics/mirrors/ftp.povray.org 
ftp.shu.ac.uk:/pub/computing/packages/raytrace/ftp.povray.org 
sunsite.doc.ic.ac.uk:/Mirrors/ftp.povray.org 
www.hensa.ac.uk:/ftp/mirrors/povray 
ftp.etsimo.uniovi.es:/pub/raytrace 
ftp.fh-rosenheim.de:/pub/mirror/ftp.povray.org 
ftp.tu-clausthal.de:/pub/mirror/povray 
kermit.stud.fh-heilbronn.de:/mirrors/povray 
ftp.uni-erlangen.de:/pub/other/povray 
stef.u-picardie.fr:/pub2/ftp.povray.org 
ftp.ncu.edu.tw:/Packages/ray-tracing 
ftp.vu.union.edu:/pub/povray 
sunsite.icm.edu.pl:/pub/povray/ 
uiarchive.cso.uiuc.edu:/pub/graphics/povray/ 
ftp.flashnet.it:/pub/ftp.povray.org/ 
ftp.univ-lille1.fr:/pub/povray 
ring.asahi-net.or.jp/pub/misc/povray/ 

HTTP 
www.etsimo.uniovi.es/ftp/pub/raytrace 
stef.u-picardie.fr/ftp/pub2/ftp.povray.org 
www.vu.union.edu/~ftp/pub/povray 
sunsite.icm.edu.pl/pub/povray 
ftp.ncu.edu.tw/Packages/ray-tracing/ 
serviceftp.flashnet.it/mirrors.htm 
kermit.stud.fh-heilbronn.de/povray 
ftp.uni-erlangen.de/pub/other/povray/ 
http://gd.tuwien.ac.at/graphics/raytracing/povray/ 
ftp.tu-clausthal.de/pub/mirror/povray

 

Index: (15-Enero-1998) ftp.povray.org 

Burada, resmi yöreleri içeren bir dizelge (liste) sunuyoruz. 
 
 
 
 
 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
Linux kullanýcýlarý özellikle iki dizin ile ilgilenecektir: 'pub/povray/Official-3.0/Linux' ve 'pub/povray/Hall-Of-Fame'  Ýkincisinde büyük Povray elkitabýnda bulamadýðýmýzý buluruz: Örnekler. 

Povray elkitabý gerçekten iyi bir kitaptýr fakat þunu da unutmamak gerekir ki bir resim bin sözcükten çok daha fazla þey anlatabilir. Ilk olarak elkitabýnýn uygun bir yolla resimlenmemiþ olduðu söylenebilir. Ýkinci olarak diðer dizinlerde elkitabý için ideal tamamlayýcý olan çeþitli imgeler bulabiliyoruz. Elkitabi yeterli örnek içermiyor demiyorum, aksine birçok örnek göstermektedir. Her örnek bir kavram açýklýyor ve hepsi de teknik bilgi kazanmak icin oldukça uygun. Bazý elkitaplarýnýn örnekleri çok güzel, ama Ünlüler Evi ('Hall-Of-Fame') yaratýlmýþ en iyi imgelerden seçmeler içeriyor: Gerçek bir bilgiçizim sergievi. Her resim inanýlmaz sonuçlar saðlayan araç ve teknikleri tanýmlayan bir metne eklenmiþtir. 

Elkitabýnda sözýedilen araçlarýn modelleyiciler, süzgeçler gibi genel kurallar kadar henüz Linux için uygun olmadýðýndan haberdar olmalýyýz. 

Yöreyeçekim için salýk verilen  ftp.povray.org /pub/povray/Official-3.0/Linux ve ftp.povray.org/pub/povray/Hall-Of-Fame  yalnýzca resimleri görmek için deðil tasarým için de önemli bir baþlangýç noktasýdýr. 

Tipik bir yüklemenin nasýl yapýlacaðýný anlatacagýz. (Bütün Linux sürümlerinde çalýþabilir ama yalnýzca Debian'da tam olarak sýnanmýþtýr) çok sayýda metin kutuphanesi. 
  

Yukleme

Genel yüklemelerde olduðu gibi süper kullanýcý olan kök (root) olarak girmeliyiz. 
Sahip olduðumuz daðýtýmýn bu dizinde olduðunu varsayalým: "/incoming/pub/povray/Official-3.0/Linux"   
Daha sonra þu güdümleri veriyoruz. 
 
 
        # 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 
 
Güdümlerin son kesimi herþeyi yüklemektedir: derlenecek herhangi birþey yok. 
Yalnýzca /usr/local/apli/povray/povray3 dizinindeki x-povray ve s-povray güdümlerinin herkes için çalýstýrabilme iznine sahip olmasýný kontrol etmeniz gerekiyor. 
Bizim durumumuzda 'chmod 755' ile izinleri deðiþtirmeye gereksinimimiz var.  

Kurulum

Povray kurulum iþlemi grafik kartlarýný biçimlendirmek, girdi ve çýktý dosya biçimlerini tanýmlama, "include" dosyalarýnýn kitaplýklarýna eriþilebilirliði saðlamak ve diðer özelikler için kullanýþlýdýr. 

Elkitabýnda çok iyi ayrýntýlanan sorularý açýklamak yerine Linux kullanýcýlarýnýn Povray'i nasýl kolay bir þekilde biçimlendirebileceklerini göz önünde tutacaðýz. 

Povray SVGA kipte görüntüleyebilir ama bu grafik kartýna baðlý bir özelliktir. Biz sizin Xwindows ile yükleme yaptýðýnýzý ve imge görüntüleyici olarak 'xv' kullandýðýnýzý göz önünde tutacaðýz. 

Linux biçimlendirimi povray'in daha yeni modellerinde daha basitleþtirilebilmiþtir. Çevre deðerlerini kullanmak olasýdýr, ama tüm gereksiniminiz olan "*.ini" biãimlendirme dosyasý yaratmak daha pratiktir. 

Deðiþik amaçlar için çeþitli *.ini dosyalarý vardýr. Bu, biçimlendirmeyi yapmak için çeþitli olasýlýklarý destekler. Bizim benimsenmiþ biçimlendirme dosyamýzý bir çevre dosyasýna göndermek veya deðerleri kullanmak için benimsenmiþ include dosyasýna yerleþtirmek mümkündür. Ayrýca seçeneklerin numarasýný argüman olarak göndermek de iyi bir fikir olabilir, ama biz ayný zamanda komut satýrýnýn argümanü olarak tanýmladýðýmýz hemen hemen herþeyi göndeririz. Eðer bu yöntemden hoþlanmadýysanýz, elkitabýný gözden geçirin, ayný sonucu saðlayacak deðiþik seçenekler bulacaksýnýz, bununla beraber her seçeneði açýklayýcý bir giriþ yazýsý yok, sadece en çok kullanýþlý olanlarýn var. 

Ayrýca bütün örneklere uyan imgeler yaratmak için 'allscene.sh' adlý bir kabuk yazýlýmý da vardýr. 

Belki bütün görüntüleri düþük çözünürlükte yaratmak yerine bir tanesini seçip en yüksek çözünürlükte oluþturabilirsiniz. 

Bu durumda örnek dizinine gidin ve aþaðýdaki 'ini' dosyasý ile povray' i çalýþtýrýn: 

-------------------------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<--------------------------------------
Ýlk iki satýr son imgenin çözünürlüðünü belirleyecektir. 
Ýmgeyi elde etmek için gereken komut: 

$ s-povray ini.ini +i source.pov 

'source.pov' dosyasý 'out.tga' ile görüntüleyeceðimiz imgeyi elde etmek için iþleme sokacaðýmýz dosyanýn adýdýr, örneðin; 'xv out.tga'. 

POV: Povray'le çalýþmak için bir kullanýmaracý

'pov' POV-ray'i kolayca kullanacaðýmýz bir kabuk yazýlýmýdýr. Ýlk önce dizelgesini (listesini) gösterelim: 
------------------------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<-----------------------------------
Tasarým aþamasýnda düþünceleri sýk sýk defalarca sýnamak zorundaydik ve idealimize adým adým yaklaþtýk. 

Çalýþtýrmayý kolaylaþtýrmak için *.ini dosyasýný oluþturacak, Povray ýþýnizleyiciyi çalýþtýracak ve daha sonra görýntýleyecek bir kabuk programýný oluþturacaðýz. $HOME/dat/pov/(project name) dizininde çalýþtýðýmýzý ve ana dosyamýzýn adýnýn (project name.pov) olduðunu varsayalým. 

Bu kabuk yazýlýmý birçok durum için genelde yeterli olan *.ini dosyasýný oluþturuyor. Bu çalýþmanýn özel bir yoluna yönelik fakat eðer baþka bir tanesini yeðlerseniz kolayca deðiþtirebilirsiniz. 

Bu kullanýmaracý kaynak dosyadaki son deðiþikleri yedekler çünkü deðiþik sonuçlar için birçok deðiþiklik yaptýktan sonra sýk sýk geri dönmeye karar veririz. Yukarýda belirttiðimiz gibi yaratýcý iþlem fýrça boyamasýna benzer, nasýl devam edeceðimize adým adým karar veririz. 

Eðer yazýlýmý en düþük çözünürlükte çalýþtýrmak istersek yeni sürümde dahi yedek kopyasýný oluþturmaz: düþük çözünürlük ilginç bir test. Bu test çeþidi ile nesnelerin göreceli konumlarý üstüne fikirler elde edebilirsiniz. Bu kiþisel çalýþma yolu çok kolay. Eðer Povray ile tanýþýk deðilseniz baþlamak için iyi bir yöntem. Belki ilerde bu elaygýtýný kendi kiþisel gereksinimlerinize uyarlamak istersiniz. 

Elde edilebilen bazý çözünürlükler bazü ölçünlü (standart) video çözünürlükleriyle aynýdýr. Diðerleri 800x600 çözünürlüðünün parçalariýdýr. Kýsa bir yardým mÖnüsü için 'pov' yazýnýz. 

$HOME dizininde çalýþmak için uygun bir dizin yapýsý oluþturun ve ilk günden nasýl kolay çalýþtýðýný görün. Biz denemelerimizi bu elaygýtýnýn kullanýldýðý taban üstüne oturttuk. Bunu kullanmak gerekli olmamasüna raðmen sizin için daha rahattýr. 

Herþeyin çalýþtýðýný görmek için basit bir örnekle baþlayacaðýz: 

------------------------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<-----------------------------------

$HOME/dat/pov/sample1/sample1.pov içine kopyalayýn. 
Eðer gerekli ise ilk doðru dizin yapýsýný oluþturun. Daha sonra bu yazýda bulduðunuz 'pov' uygulamasýný Xwindows'dan çalýþtýrýn. 

$ pov sample1 4 9 

'xv' ile görüntülemeye baþlamanýz gerekmektedir. Kendi görüntülerinizi yaratmak istediðiniz zaman örneðin 'vi' da elkitabinin metin sürümü ile yeni bir 'xterm' açmanüzü salýk veririz. 

sample1 

../../common/March1998/sample1.gif 
 
 

Ýngilizce'ye Çeviri: David Escorial   

 

 

© 1998 Antonio Castro 
Bu sanalyörenin bakýmý Miguel A Sepulveda tarafýndan yapýlmaktadýr.