Dans cet article, on d�bute une s�rie sur le traceur de rayons Povray. Le but de ce premier article est de faciliter son utilisation aux d�butants Linux.
Persistence of Vision Ray-Tracer (POV-Ray) Copyright 1996 POV-Team.
Introduction.
Povray (Persistence of Vision Raytracer) est un traceur de rayons basique. Il n'est pas facile d'expliquer ce que signifie ce concept sans entrer dans certains d�tails, mais nous expliquerons par la suite de mani�re d�taill�e ce qu'est un traceur de rayons (dans les prochains articles). Ici, nous nous contenterons de faire l'�bauche du concept de traceur de rayons. Le trac� de rayons est une technique pour repr�senter des sc�nes imaginaires d�finies dans l'ordinateur au moyen de mod�les, qui �tablissent des objets et des formes, ainsi que des angles de lumi�re et une cam�ra. La forme dont l'ordinateur essaye d'obtenir une image la plus r�aliste possible consiste toujours en la meilleure image avec les moindres co�ts en processus de calcul.
Lorsque c'est possible, on essaye d'imiter la nature, sinon on cherche seulement un effet ressemblant. Sans ces raccourcis, il serait impossible d'obtenir une image en un temps raisonnable. L'ordinateur devra calculer un grand nombre de trajectoires, mais il ne le fera pas de mani�re identique � ce que fait la nature. Pour celle-ci, les rayons sont issus de la source principale de lumi�re et chaque fois qu'ils rencontrent une surface, ils g�n�rent une source secondaire de lumi�re qui se r�fl�chit dans la r�tine du spectateur ou dans la pellicule d'une cam�ra. On donnera maintenant un unique d�tail, pour anticiper sur la suite. Dans un traceur de rayons, ceux-ci circulent en sens contraire : depuis un point de la r�tine ou de la pellicule vers les objets en premier pour arriver en dernier � la source de lumi�re. Nous laisserons l'explication d�taill�e de ceci, ainsi que d'autres aspects, pour l'article suivant.
La qualit� du traceur de rayons Povray est excellente et n'a rien � envier aux produits commerciaux. Les produits commerciaux de dessin bas�s sur le trac� de rayons sont int�gr�s dans une s�rie d'outils pour dessiner confortablement toutes sortes d'objets.
Dans le cas de Povray, on peut utiliser des outils de mod�lisation en provenance de diverses maisons d'�dition ind�pendantes, ou des traducteurs de format, et en r�gle g�n�rale, une grande vari�t� d'outils. Ce qui ne veut pas dire qu'on ne peut pas obtenir de jolis trac�s, y compris parfois spectaculaires, en utilisant exclusivement Povray. Pour cela, il suffit surtout d'avoir beaucoup d'imagination.
En outre, les sources sont publiques, ce qui permet d'approfondir les techniques utilis�es. Le Copyright de Povray est d�crit dans l'annexe A du manuel, et il s'agit, comme Linux, d'un Freeware. Les d�tails doivent �tre consult�es dans le texte original de la Licence.
Le manuel de Povray est disponible dans la version texte (id�al pour des recherches rapides), en format HTML, et en format postscript. Si vous avez l'intention d'imprimer le document en postscript, il faut pr�parer environ 600 pages. En effet, les possibilit�s de Povray sont �normes, mais il ne faut pas avoir peur. Cet article vous aidera � vous initier � Povray et dans les articles qui suivent, on traitera des concepts basiques.
Ce qui est certain, c'est que Povray nous permet de faire une incursion dans le monde de l'infographie par la grande porte, au vu de ses incroyables capacit�s techniques. Selon ma propre conception de l'infographie, le domaine de la technique nous permet d'obtenir, de mani�re approch�e, des images d'un r�alisme incroyable, mais la valeur d'une image n'a rien � voir avec le r�alisme ni avec la technique. La technique est une aide pr�cieuse, mais ce qui poss�de une vraie valeur artistique doit �tre pr�alablement con�u dans notre t�te. L'id�e est ce qui compte.
Souvent, j'aime � jouer avec les concepts de r�alisme et de fiction. L'infographie se pr�te � ce jeu de mille et une fa�ons diff�rentes, provoquant un conflit stimulant pour le spectateur. Je conserve une petite s�lection d'images cr��es avec Povray dans :
http://slug.ctv.es/~acastro/infograf/catalog.htm
Voici un exemple d'un concept hybride: un avion, un voilier et une mouette
Seagull 1
Dans cette premi�re image nous avons de bonnes chances de voir une mouette.
Seagull 2
Toutefois, vu sous un autre angle, on peut dire qu'elle ressemble plus � un avion alors qu'il s'agit toujours du m�me objet.
L'objet a la silhouette d'une mouette. Dans la partie sup�rieure, elle a un cockpit transparent et les deux pilotes se voit ais�ment. La pigmentation est bizarre mais avec le lanc� de rayons ces images peuvent d�montrer un degr� �tonnant de r�alisme.
Lorsqu'on montre ces images � un enfant de cinq ans, et qu'on lui demande son avis, il dira que c'est une photo et non un dessin. Par contre, un adulte aura plus de mal � les classer. Il dira, certes, qu'il ne s'agit pas d'un dessin, mais qu'il ne s'agit pas non plus d'une photo. Il saura peut-�tre que l'image a �t� obtenu gr�ce � l'ordinateur, mais il se demandera comment celui-ci a pu obtenir un r�sultat aussi �trange et aussi beau.
A mon avis, c'est ce type de r�sultat qu'il est int�ressant d'obtenir dans les dessins. Des images d�concertantes, o� le synth�tique et l'artificiel s'harmonisent avec des effets r�alistes surprenants.
J'ai pass� beaucoup de temps sur Povray et je suis s�r que tout le monde �prouvera du plaisir � l'utiliser.
Quelques caract�ristiques �l�mentaires de Povray :
- rendu partiel d'une image, possibilit� de continuer le rendu complet
- options pour faire des rendus avec des r�solutions distinctes, et avec des degr�s de perfectionnement pour r�duire le temps du processus.
- possibilit� de visualiser une image durant sa cr�ation (en SVGA et Xwindows)
- possibilit� d'aper�u en mosaique.
- cr�ation de logs (registres) tr�s complets qui permettent d'analyser les co�ts du CPU.
- analyse syntaxique avec un bon traitement d'erreurs
- biblioth�que de textures tr�s bien fournie, avec d'�normes possibilit�s pour cr�er pratiquement n'importe quelle texture.
- effets de surface : rugosit�, brillance, reflets, transparence,...
- figures g�om�triques simples : sph�res, c�nes, plans, cubes, prismes,..
- figures g�om�triques bas�es sur des �quations math�matiques complexes,
- figures form�es par des r�seaux triangulaires,
- arrondissement des ar�tes, par exemple pour des figures form�es par des triangles,
- figures complexes form�es par un agr�gat d'autres figures,
- d�limitation des objets complexes au moyen de figures simples pour optimiser le rendement du traceur,
- pigmentation d'une figure � partir d'une image plane,
- figures g�n�r�es proportionnellement � la couleur d'un pixel � partir d'une autre image (tr�s utile pour g�n�rer des terrains),
- figures g�n�r�es par r�volution (model�e "au tour"),
- textes tridimensionnels � partir de sources TIFF,
- effets atmosph�riques, par exemple brouillard, effets lumineux, avec divers types de lumi�res,...
- options distinctes de "Anti-Aliasing" : ces effets permettent qu'une diagonale apparaisse comme plus lin�aire, camouflant l'effet d'�chelle au moyen d'un l�ger d�grad�. Il existe diff�rentes m�thodes pour cela dans Povray.
- un langage complet de description de sc�nes,
- possibilit� de g�n�rer des animations avec diff�rentes m�thodes :
- boucle externe (utilisation de l'option Clock=n.n)
- boucle interne (utilisation de param�tres internes � la source)
- donn�es qui permettent la d�finition de constantes et qui peuvent �tre localis�es dans un fichier include. Il est possible aussi de g�n�rer des animations externes au moyen d'utilitaires ou de scripts qui actualisent ces fichiers � chaque photogramme. Ce syst�me, bien qu'utilis� dans les premi�res versions de Povray, est toujours utile
O� peut-on obtenir Povray :
Povray peut �tre obtenu gr�ce � ftp.
Le site officiel est le suivant :
http://www.povray.org
ftp://ftp.povray.org
Il existe une revue �lectronique sur Povray : bien que sa parution soit arr�t�e, elle conserve quelques articles excellents qui ont �t� �dit�s � la m�me �poque que la version 3.0 de Povray .
http://www.povray.org/pub/povray/ezine
Il existe de nombreux sites miroirs qui ont un caract�re officiel :
Contenu : (15 janvier 1998) ftp.povray.org
Pour se faire une id�e du contenu du site officiel, voici un extrait :
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
|
Pour Linux, il y a deux r�pertoires qui nous int�ressent particuli�rement : 'pub/povray/Official-3.0/Linux et 'pub/povray/Hall-Of-Fame'. Le dernier n'est pas indispensable, mais on aura ici ce qu'on ne peut obtenir dans le fameux manuel de Povray.
Le manuel est excellent, mais il a toujours �t� dit qu'une image vaut mieux que mille paroles. Ce manuel n'est pas illustr�e de mani�re ad�quate. On peut donc trouver ici une grande quantit� d'images qui sont le compl�ment id�al du manuel. Cela ne veut pas dire que le manuel est compl�tement d�nu� d'exemples, au contraire il y en a beaucoup. Chaque exemple illustre un concept, ce qui est excellent pour l'acquisition de la technique. Quelques exemples sont superbes, mais dans "Hall-Of-Fame", nous trouvons une s�lection d'images tr�s bonnes : un authentique mus�e d'art infographique. Chaque image est accompagn�e d'un texte explicatif, o� on explique les outils et les techniques qui permettent d'obtenir ces r�sultats incroyables.
Il faut cependant dire que de nombreux outils qui sont mentionn�s fr�quemment comme mod�lisateurs, convertisseurs,... ne sont pas encore disponibles pour Linux.
On peut n�anmoins recommander
ftp.povray.org/pub/povray/Official-3.0/Linux
et aussi ftp.povray.org/pub/povray/Hall-Of-Fame
non seulement pour le plaisir visuel, mais aussi comme une importante source d'inspiration cr�ative.
Nous allons d�crire une installation type, qui devrait fonctionner sur n'importe quelle version de Linux, bien qu'elle n'ait �t� essay� compl�tement que sur la Debian.
Installation
Comme pour toute installation, nous nous loguons dans le syst�me en tant que super utilisateur (root).
Nous supposons que nous poss�dons tous les fichiers n�cessaires dans notre syst�me dans le r�pertoire:
"/incoming/pub/povray/Official-3.0/Linux"
Puis nous taperons au clavier les diff�rentes commandes :
# 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
|
Cela devrait suffire, puisqu'il n'y a rien � compiler.
Il faut simplement v�rifier que tout le monde poss�de le droit d'ex�cuter chacun des fichiers contenus dans le r�pertoire /usr/local/apli/povray/povray3 et pour les ex�cutables x-povray et s-povray.
Dans notre cas, nous devons dans l'installation modifier quelques permissions au moyen de la commande 'chmod 755 (r�pertoire ou fichier).
Configuration
La configuration de Povray doit servir � ce que la biblioth�que des fichiers 'includes' soit accessible, que la carte graphique soit reconnue, ainsi que pour �tablir les formats de fichiers en sortie et quelques autres probl�mes.
P>Je crois, qu'au lieu d'expliquer ce qui est d�j� tr�s bien expliqu� dans le manuel (Quick Start), il est pr�f�rable de prendre une configuration assez g�n�rale, qui permette � la plupart des utilisateurs de Linux d'utiliser Povray facilement, de mani�re confortable et imm�diate.
Povray peut �tre utilis� en mode SVGA, mais cela nous obligerait � �tablir des configurations pour chaque carte graphique. Nous allons supposer que vous avez dans votre syst�me Xwindows install� et que vous utilisez comme visualisateur d'images 'xv'.
La configuration pour pouvoir travailler sur Linux avec les nouvelles versions de 'Povray' peut �tre simplifi�e au maximum. On peut utiliser des variables mais il est plus pratique de g�n�rer un fichier de configuration *.ini qui contienne tout le n�cessaire.
Il existe des fichiers *.ini fournies � titre d'exemples pour des cas g�n�raux. Cela donne lieu � diverses possibilit�s pour �tablir une configuration. On peut r�f�rencer dans une variable le fichier de configuration par d�faut, o� on peut utiliser des variables pour localiser la biblioth�que de "includes" par d�faut, etc.. On peut aussi passer comme arguments un grand nombre d'options : nous nous contenterons d'inclure tout cela dans un fichier de configuration *.ini, qu'on passera comme argument dans la ligne de commande. Si vous n'�tes pas convaincu par ce syst�me, consultez le manuel et vous vous rendrez compte qu'il existe diverses possibilit�s pour atteindre le m�me r�sultat, mais il n'est pas question dans cet article de d�crire toutes ces possibilit�s, mais d'indiquer la plus utile possible.
Il existe aussi un shell utile pour g�n�rer toutes les images correspondant aux exemples de "allscene.h".
Vous souhaiterez probablement, au lieu de g�n�rer la totalit� des sc�nes avec une r�solution pauvre, en choisir une et la rendre avec une meilleure r�solution.
Dans ce cas, allez sur le r�pertoire de l'exemple et lancez povray en utilisant le fichier ini suivant :
-------------------------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<--------------------------------------
Les deux premi�res lignes d�terminent la r�solution finale de l'image. La ligne de commande pour obtenir l'image est la suivante :
La ligne de commande pour obtenir l'image est la suivante :
$ s-povray ini.ini +i source.pov
Le fichier 'fuente.pov' est le nom du fichier qu'on souhaite travailler. On obtiendra une image 'out.tga' qu'on pourra ensuite visualiser avec xv out.tga.
POV : Un utilitaire pour travailler avec Povray
'pov' est un script pour travailler confortablement. En premier lieu, nous montrerons son listing :
------------------------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 ([email protected])
#
#####################################################################
# Auteur : Antonio Castro Snurmacher (1.998) (1.998)
#
# pov (ver 1.0)
#
# Cette version est destin�e � �tre incluse dans la
# revue Linuxfocus (freeware)
#
# Ce programme peut �tre utilis�, distribu� et modifi� librement
# freely but always has to respect the intellectual
# mais on devra respecter la propri�t� intellectuelle de l'auteur.
# Cet ent�te doit �tre conserv�e tel quel dans toutes les
# modifications.
#
# En cas de traduction, on devra conserver le texte original de
# l'ent�te et ajouter la traduction � la suite.
#
# L'auteur renonce � tout type de b�n�fice �conomique et
# n'est pas responsable des pr�judices �ventuels dus � son
# utilisation.
#
# E-mail ([email protected])
#
#####################################################################
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 "Les projets doivent se trouver dans le r�pertoire"
echo "${HOMEPOV} et on utilisera le m�me nom pour le r�pertoire"
echo "et pour le fichier source principal *.pov"
echo "(STD) est la resolution qui fait r�f�rence standard."
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
# on baisse la priorit� du process si on veut faire autre chose.
nice -20 x-povray ${PREFIX}.ini
if [ $SAVE != "yes" ]
then echo " Attention !! Cette version ne g�n�re pas de sauvegarde!"
fi
------------------------8<-----------------------------------
Lorsqu'on dessine, il faut recommencer � plusieurs reprises, pour se rapprocher petit � petit du r�sultat souhait�.
*.ini, lance le traceur Povray et visualise ensuite le r�sultat. On suppose qu'on va travailler dans le r�pertoire du type $HOME/dat/pov/(nom-projet) et que le nom du fichier principal est (nom-projet).pov
Ce script g�n�re des fichiers *.ini qui sont pratiquement suffisants dans la grande majorit� des cas. En outre, il est orient� pour travailler de mani�re concr�te, mais si vous n'aimez pas cette fa�on de travailler, il est facile de la modifier.
Cet utilitaire �tablit en plus un syst�me qui conserve les derni�res modifications dans des fichiers sources, car il arrive souvent qu'on souhaite, apr�s divers changements, revenir � une version ant�rieure pour s'orienter autrement. Comme il a d�j� �t� dit, le process cr�atif, c'est comme si on donnait des coups de pinceau au fur et � mesure, et qu'on d�cidait petit � petit comment poursuivre. Si on lance le programme avec les r�solutions les plus basses, il ne se produit aucun d�placement de versions ni de backup : on consid�re que c'est un essai sans int�r�t. Ce type d'essai s'effectue pour obtenir rapidement une id�e qui permette de d�terminer si les positions aux traits des objets conviennent bien.
Tout ceci peut �tre modifi�, mais en ce qui me concerne, il m'est utile de travailler de cette mani�re. Pour obtenir une petite aide, tapez 'pov' sans arguments.
Quelques r�solutions disponibles co�ncident avec des modes standard de quelques r�solutions vid�os. D'autres sont des fractions de la r�solution 800x600. Si vous n'avez pas l'habitude de travailler avec Povray, cela vous servira de m�thodologie initiale de travail. Plus tard, il est probable que vous souhaitiez adapter cet outil � vos besoins particuliers.
Il vous faut cr�er les r�pertoires ad�quats pour travailler dans votre r�pertoire $HOME et vous verrez qu'il est tr�s simple de faire des choses d�s le premier jour. Nous baserons les exercices sur cet outil. Bien qu'il ne soit pas indispensable de l'utiliser, il rendra votre travail plus confortable.
Nous commencerons avec un exemple simple pour essayer toutes les fonctions :
------------------------8<-----------------------------------
#include "colors.inc"
#include "textures.inc"
#include "glass.inc"
// Auteur : Antonio Castro
// La cam�ra pointe sur divers points
// de plusieurs sph�res
camera {
location <0, 15, 35>
look_at <0, 10, 0>
}
// source de lumi�re blanche
object {
light_source {
<20, 100, 50>
color White
}
}
// Ciel avec des nuages blancs
object {
sphere { <0, 0, 0> 200000} // Great vault of heaven
texture {Blue_Sky scale <50000, 6000, 50000>} // We strecht the clouds
}
// Boule en or
sphere { <-10, 10, 0> 10
texture { Gold_Metal }
}
// Boule de miroir
sphere { <10, 10, 0> 10
texture { Mirror }
}
// Boule de cristal
sphere { <0, 5, 10> 5
texture { T_Glass1 }
}
// sol
// Il est r�alis� au moyen d'une grande sph�re qui touche le centre
// mais on aurait pu le r�aliser sur une surface plane.
sphere {<0, -1000000, 0> 1000000
pigment {checker color Red color Yellow scale 2 } // Checker texture
}
------------------------8<-----------------------------------
Copier ceci dans $HOME/dat/pov/sample1/sample1.pov.
Si c'est n�cessaire, cr�er en premier une structure correcte de r�pertoires. Puis vous utiliserez l'outil 'pov' qu'on fournit dans cet article, en le lan�ant depuis une session xterminal de Xwindows avec son utilitaire.
$ pov sample1 4 9
Vous devrez utiliser en m�me temps 'xv' pour le visualiser, ce qui rendra votre travail tr�s confortable. Lorsque vous souhaiterez r�aliser vos propres sc�nes, nous vous recommandons d'ouvrir une autre fen�tre 'xterm' avec la version texte du manuel �dit�e par exemple avec vi en mode lecture seule pour chercher rapidement les mots-cl�s du langage et ainsi vous pourrez consulter rapidement sa syntaxe, avec un exemple d'utilisation.
../../common/March1998/sample1.gif
|