Foire Aux Questions Terraform
Auteur: Robert Gasch, Mis à jour par David A. Bartold,
Traduit par Raymond Ostertag
Ceci est la FAQ pour Terraform, un générateur/modeleur
interactif et fractal de paysages. Il y a des chances pour que vous rencontriez
plus de problèmes que ce que j'ai prévu de répondre
ici, donc si vous avez une suggestion concernant ce document envoyer moi
un email.
Tour d'horizon de Terraform
Cette section couvre les questions qui appartiennent entièrement
à Terraform.
Qu'est-ce que Terraform?
Terraform est un générateur/visualiseur interactif et fractal
de paysages. Il vous permet de créer un terrain fractal ( aussi
appelé Height field ) et le transforme en utillisant des algorithmes.
Il est pensé pour être un outil pour ceux qui veulent générer
des modèles de terrain numérqiue pour l'utiliser avec un
raytraceur ou autres simulations. Il est écrit en C, utilise les
librairies GNOME et, en tant que tel, à une interface utilisateur
graphique.
Sous quel systèmes fonctionne-t-il ?
Terraform a été écrit sous Linux (ou GNU/Linux ) et
devrait fonctionner sous tout système type UNIX qui a les bonnes
librairies et compilateurs installés. La liste suivante est une
liste de système dont je sais que terraform a compilé dessus
avec succès :
-
Linux ix86 Debian 2.1 glibc
-
Linux ix86 Mandrake 7.0 glibc ( gcc-2.95)
-
Linux ix86 Mandrake 6.0 glibc ( pgcc-2.91.66, gcc-2.95)
-
Linux ix86 Mandrake 6.1 glibc ( pgcc-2.91.66, gcc-2.95)
-
Linux ix86 Redhat 5.2 glibc ( egcs-2.91.57)
-
Linux ix86 Redhat 6.0 glibc ( egcs-2.91.66)
-
Solaris Sparc 2.6 ( egcs 2.91.66)
-
Solaris Sparc 2.7 ( gcc 2.8.1)
Les versions de compilateur données ci-dessus sont destinées
à servir de point de référence pour une plateforme
particulière et le compilateur l'accompagnant. D'autres versions
de compilateurs que
gcc
et
egcs mpeuvent fonctionner tout
juste ou même mieux, surtout si la version est supérieure
à celle listée ci-dessus. Le script configure vérifie
si votre système à les librairies requises et si votre compilateur
supporte toutes les fonctionnalités requises par ANSI C.
Quelles dépendances a-t-il ?
Terraform nécessite les suivantes :
Le script configure vérifie si toutes les fonctionnalités
nécessaires sont supportées par votre système. Typiquement,
vous devriez essayer d'avoir la version la plus récente des librairies
requises d'installées sur votre système.
Comment est-il distribué ?
Terraform est publié sous licence
GNU
GPL et, de ce fait, le code source est fourni. Fondamentalement
vous avez tout ce que j'ai. Terraform est disponible depuis son site
web
http://terraform.sourceforge.net
et peut-être depuis d'autres sites tels que
Sunsite
gtkbuffet mirror et
Linuxberg.
La raison de l'utilisation de la licence GPL est simple : j'ai énormément
profité ( tout comme l'entière communauté Linux
) de la disponibilité des logiciels libres qui sont publiés
avec leur code source. Je souhaite que le processus continue et voir la
GPL comme la mère des licences logicielles open source ce qui assurera
la continuité de la disponibilité/ouverture des codes sources..
Pourquoi le développez vous ?
Parce que je pense que coder est agréable et que je n'ai pas d'autre
vie :-) ... la vérité est que je cherchais quelque chose
comme les gforce et hf-lab de John Beale mais avec une interface plus jolie.
Les outils de John sont très bien mais ce sont des commandes en
ligne ce qui souvent n'est pas l'idéal pour l'infographie.
Jusqu'où est-il complet ?
Eh bien, c'est lentement arrivé jusqu'ici. La première version
publique ( 0.1.0, version 07dec98 ) était très rudimentaire
et contenait beaucoup de bogues.
Avec la version 0.2.10 ( publiée le 07avr1999 ) les choses semblent
un peu mieux : Terraform est maintenant un peu plus complet et ne plante
pas autant tandis qu'il a gagné de nombreuses fonctionnalités.
Avec la version 0.3.1 ( publiée le 23mai1999) les choses semblent
à nouveau un peu mieux. Les dialogues ont été améliorés
en un dialogue avec un aperçu temps réel et j'ai résolu
un peu de bogues, certains d'entre eux causant apparemment des plantages
aléatoires sur certaines plateformes.
Avec la version 0.4.4 ( publiée le 28oct1999) on a un joli ensemble
complet de dialogues et un moteur qui peut conserver plusieurs terrains
ouverts en parallèle.
Avec la version 0.5.0 ( publiée le 20dec1999) la code source
est un peu plus sain/propre et terraform supporte maintenant l'internationalisation.
Avec la version 0.6.x ( fev2000 ou plus tard ) la plupart des bases
fonctionnent, la plupart des dialogues sont débogués/terminés,
l'application ne plante plus très souvent et généralement
les choses se passent bien, excepté pour les bogues occasionnels
qui frappent soit terraform soit Gtk--.
Avec la version 0.7.x ( 18jun2000 ou plus tard) les scènes POV-Ray
sont ajoutées et le début d'une interface de sélection
émerge. L'opération Déplacement fut ajoutée
et de nombreux bogues corrigés.
La version courante ( 0.8.x ) fonctionne sous le bureau GNOME , a un
code interface généré par Glade, un nouveau code de
lignes de contour, son propre format natif de fichier, un rafraichissement
plus rapide des écrans de visualisation du terrain, moins de bogues,
et une aide en-ligne. Ainsi ma progression sera au mieux constante mais
certainement pas rapide comme l'éclair.
Quel est votre but/mission avec lui ?
Je n'ai pas exactement une vision claire ( je ne vais pas m'asseoir et
faire une charte de développement ), je voudrais éventuellement
qu'il convienne à GIMP comme terrain numérique. Voici certaines
choses qu'éventuellement je voudrais que terraform ait ( si vous
n'êtes pas sur de quoi je parle jettez un oeil à The
GIMP, d'où plusieurs idées sont tirées ) :
-
capacité à 'dessiner' votre terrain avec différents
'pinceaux'
A propos de rendu photo-réaliste ?
Typiquement j'utilise POV-Ray pour
le rendu des paysages que je crée. Cependant, il y a quelques temps,
sur www.slashdot.org il fut mention d'une application Windows (blah!) appelée
'terragen' qui produit des rendus photo-réalistes. Je ne l'ai pas
téléchargée/installée mais leur page web semblait
très belle. Bien sur, dans le monde merveilleux de MS Windows, il
ne semble pas avoir quelque intention de publier leurs sources.
Si l'absence d'un outil natif de rendu photo-réaliste achevé
vous chagrine, je vous invite à répondre à mon appel
à contributeurs ci-dessous.
Comment puis-je contribuer ?
Faire de Terraform une application complète et aboutie va demander
quelques efforts importants ( ou au moins obstinés ) de ma part
( ne retenez pas votre souffle pour attendre la version 1.0). Pour sûr,
si vous pouvez contribuer à quoi que ce soit ( code, déboguages,
suggestions, documentation ), lisez mon Appel à contributeurs ci-dessous.
Appel à contributeurs !
Si vous pouvez contribuer à quoi que ce soit ( code, déboguages,
documentation ou même suggestions ) j'apprécierais de vous
lire. Une partie de la philosophie open source semble être "Fais
le toi-même", voici votre chance.
Prouvons au monde que l'ensemble de l'open source fonctionne vraiment
et que nous pouvons faire quelque chose qui n'a pas à honte face
à terragen ( ou peut-être même mettra la honte à
terragen ? ). Si vous êtes capable et motivé pour aider de
quelque façon que ce soit à arriver à ce que terraform
produise des images photo-réalistes de paysages, s'il vous plaît,
contactez-moi.
Nous avons fait quelques progrès sur cet aspect les quelques
mois derniers. Le support de POV-Ray est maintenant très bon
et est encore travaillé. Le support de l'OpenGL est passé
d'affreux à basique-mais-acceptable, et nous travaillons ( ou du
moins pensons à ) l'intégration avec quelques autres interface
graphique agréables.
Super. Qui êtes-vous donc ?
'The crack pipe, lots of illegal drugs or just a mission'. Vous prenez
ce qui vous semble le plus approprié.
Remerciements
Terraform à plusieurs égards est bati sur du code public
disponible. Voyez les AUTEURS pour plus de détails sur ce ce que
nous avons volé et où.
Faire fonctionner et utiliser Terraform
Cette section couvre les questions d'ordre général que vous
pourriez avoir en utilisant des aspects particulier de l'utilisation de
Terraform.
Y a-t-il quelque information sur toutes les fonctions de transformation
de terraform ?
Vérifiez la documentation en-ligne. Elle contient une description
rapide de ce que les différentes opérations font vraiment.
Si ça ne satisfait pas votre curiosité, il y a toujours le
code source...
Quels formats de fichiers Terraform supporte-t-il ?
Types de fichiers supportés :
File Type |
Read |
Write |
Terraform Native |
Y |
Y |
BMP |
Y |
N |
DEM |
Y |
N |
GTOPO30 |
Y |
N |
Matlab Binary |
Y |
Y |
OCT |
Y |
Y |
PGM ASCII |
Y |
Y |
PGM BINARY |
Y |
Y |
PNG |
Y |
N |
TIFF |
Y |
N |
TGA |
Y |
Y |
AutoCAD Modeller |
N |
Y |
Est-ce que Terraform supporte les themes Gtk+ ?
Oui. Depuis la version 0.3.1 terraform supporte correctement les
Gtk
themes. Si vous avez un thème gtk sur votre sytème, vous
pouvez le mettre en tant qu'utilisateur en faisant ce qui suit :
cp /usr/whereever/THEMENAME/gtk/gtkrc $HOME/.gtkrc
Si vous obtenez des erreurs à propos de ne pouvoir ouvrir les fichiers
de thèmes , vous devez éditer votre .gtkrc et ajouter une
ligne telle que :
pixmap_path "/usr/whereever/THEMENAME/gtk"
au *début* de ce fichier. Terraform devrait maintenant charger le
thème dès le démarrage.
Le rendu avec POV-Ray échoue
Vous pouvez obtenir plus d'informations sur le problème rencontré
en cliquant sur 'Détails' de la boîte de dialogue d'erreur
si elle apparait. Il y a plusieurs causes possibles à l'échec
de POV-Ray :
-
Vous devez utiliser la version 3.1 de POV-Ray ou supérieure,
la version 3.0 ne fonctionnera pas.
-
Assurez-vous que Terraform peut trouver un exécutable POV-Ray pour
X. Dans les options globales, cliquez sur l'onglet POV-Ray et assurez-vous
qu'il pointe vers le bon exécutable. Les noms les plus populaires
sont "x-povray" et "povray-x". Quelquefois c'est juste "povray".
-
Assurez-vous que POV-Ray peut trouver ses fichiers 'include' standard.
Dans votre fichier ~/.povrayrc il devrait se trouver une liqne similaire
à : "Library_Path=/usr/share/povray31/include".
Comment puis-je personnaliser la façon dont les images sont rendues
avec POVRay ?
Vous pouvez créer votre propre fichier de thèmes de
terrain et le mettre dans le répertoire de données des thèmes
(habituellement /usr/share/terraform/themes). La prochaine fois que vous
ouvrez la boîte de dialogue 'Edition> Options' , le menu déroulant
theme va afficher votre nouveau fichier modèle en option. Pour plus
d'informations sur comment construire vos propres textures, voyez le document
écrire
ses propres modèles POV-Ray .
Compiler Terraform et troubles d'ordre général
Cette section couvre quelques unes des choses qui pourraient aller de travers
quand vous essayez de compiler ou exécuter Terraform.
Comment puis-je compiler Terraform ?
Supposant que vous avez téléchargé le source archivé
,vous devriez être capable de faire ce qui suit :
tar -xvzf terraform-0.x.x.tgz ./configure make && make install
Si vous utilisez SuSE, il est recommandé d'exécuter
./configure avec ces arguments de la commande en ligne : "--prefix=/opt/gnome
--sysconfdir=/etc/opt/gnome".
Quelque chose ne va pas. Où devrais-je regarder d'abord ?
Etant donné que Terraform est basé sur GNOME, verifiez que
GNOME et ses paquetages de développements sont installés
sur votre système.
Comment soumettre un rapport de bogue et pourquoi devrais-je m'embarasser
à faire celà ?
Comment : envoyez un email à rng@chello.nl et décrivez ce
que vous avez fait et ce qui n'a pas été.
Pourquoi : Suivant mon expérience, beaucoup de petits bogues
subtils arrivent seulement quand on compile le code sur un autre OS ou
plateforme matérielle. Ainsi, si vous n'êtes pas sur un système
Linux Intel Glibc, et que quelque chose plante, j'apprécierais un
email; surtout s'il arrive à un endroit où manifestement
celà indique habituellement un bogue qui pourrait justement ne pas
apparaitre sur mon système. Votre rapport de bogue m'aidera à
faire de Terraform une application meilleure.
Quelque chose ne marche pas. Comment puis-je voir ce qui se passe ?
Essayez d'exécuter Terraform depuis 'gdb' et faites un 'backtrace'
"bt" pour voir le 'callstack'.
Terraform plante en chargeant un fichier.
Assurez-vous que l'extension de votre nom de fichier corresponde avec le
type de fichier réel. Par exemple : n'essayez pas de renommer un
fichier *.tga en un *.bmp et puis de le charger dans terraform. L'extension
est souvent considérée comme une caractéristique du
type du fichier.
Terraform plante. Quelle information utile puis-je fournir aux auteurs
?
Si vous avez téléchargé l'exécutable précompilé
vous ne pouvez pas faire grand chose dans ce cas car l'exécutable
est nettoyé de toutes les informations de déboguage.La meilleur
chose est probablement de m'envoyer un email me décrivant ce que
vous avez fait.
Si vous avez compilé votre propre exécutable depuis le
code source, s'il vous plaît recompilez terraform avec l'argument
-g ( ajoutez l'argument -g aux variables TF_CFLAGS et TF_CXXFLAGS dans
terraform/src/Makefile). Puis utilisez gdb ( ou un autre débogueur
) pour m'envoyer une trace de la pile :
gdb ./terraform
r [append any necessary options here]
.... this will run until it crashes ...
bt
q
La commande bt devrait vous donnez une trace de la pile qui devrait m'aider
à me représenter ce qui est aller de travers. Vous pouvez
utiliser ./configure --disable-debug pour compiler un exécutable
sans le mécanisme de traçage intégré.
Si vous avez téléchargé l'exécutable statique,
ne vous embarassez pas à le faire car votre exécutable a
été nettoyé de toutes les informations de déboguage.
Merci pour votre coopération.
Terraform s'arrète avec un message d'erreur
C'est une situation qui ne devrait pas arriver; celà signifie une
erreur logique quelque part dans l'application. S'il vous plaît envoyez-moi
un email avec ce que vous avez fait de telle façon que je puisse
reproduire et résoudre l'erreur.