Principe
de l'éditeur
Création
et manipulation de faces
Création
d'une couleur
Plaquage
de textures
Chargement
et sauvegarde d'un objet
Rappel
des touches
La complexité de la conception du simulateur 3D auto/moto nous a ammené à choisir entre 2 méthodes:
Le but de l'éditeur d'objets, donc, est de faciliter et d'accélérer
le processus de création des objets du simulateur. On pourrait bien
sûr imaginer qu'il puisse servir à la fabrication d'objets
pour une autre application.
A l'origine,
l'éditeur avait été conçu sous MS-DOS. Il a
ensuite été rapidement implémenté en Java et
finalement en C avec OpenGL, cette dernière bibliothèque
apportant l'avantage de travailler avec un moteur graphique 3D déja
programmé, optimisé et fournissant des fonctionnalités
complexes diverses.
Un avantage
certain, en ce qui concerne ce projet, réside dans l'obtention d'un
rendu graphique similaire à celui obtenu dans le simulateur 3D puisque
le moteur de ce dernier est le même que celui de l'éditeur
(ou l'inverse !).
Cependant, il semble important de souligner que l'éditeur d'objets
est d'abord un éditeur on ne peut plus simplissime. En effet, celui-ci
ne permet de manipuler que des polygones 3D grâce aux touches du
clavier. De plus, il ne fonctionne qu'avec des coordonnées entières.
Cela permet ainsi de faciliter le placement manuel des points du polygone
sur des positions exactes. Cette fonctionnalité est interessante
pour lier précisément des faces entre elles.
L'editeur
3D est aussi capable de créer, d'importer et de plaquer des couleurs
et des textures rgb sur n'importe quelle face de l'objet. Différents
types de rendu (filiaire\Plein, transparence, etc...) sont intégrés.
L'ensemble des éléments chargés en mémoire
sont en permanence affichés. Dans la partie gauche se trouve la
palette de couleurs et textures, dans la partie droite, plus large, se
trouve la fenêtre principale affichant l'objet sous un angle voulu
en déplaçant la souris tout en cliquant avec le bouton gauche
sur la fenêtre.
Il est clair que sans lui, la conception des objets de la scène, et en particulier celle des vehicules (auto & moto), aurait été rendue beaucoup plus longue et délicate.
Création et manipulation des faces
La création d'une face se fait de manière simple. Il faut
savoir que l'essentiel des manipulations dans cet éditeur réside
dans les duplications, les translations et les déformations des
polygones. Cependant, il a été nécessaire de fournir
une petite routine de création d'un polygone de base, bien utile
lorsqu'il n'y a pas encore d'objets chargés dans la scène.
Cette fonction est présente dans l'item 'Objet > Nouveau' du menu
déroulant que l'on peut atteindre en cliquant avec le bouton droit
de souris dans la fenêtre principale de l'éditeur.
Une fois que la face est créée, on peut soit la bouger en
appuyant sur les flèches de direction du clavier, soit la dupliquer
en appuyant sur la touche [INSER] ou soit l'éditer en pressant sur
la barre [ESPACE].
Cette dernière fonction fait passer l'éditeur en mode 'Edition
de sommets'. Le sommet sélectionné du polygone est représente
par un point rouge. Les touches de direction permettent alors de déplacer
le point (et donc de déformer le polygone). Appuyez sur la touche
[TAB] et vous placerez la sélection sur le sommet suivant du poygone.
L'appui sur la touche [INSER] par l'utilisateur permettrait de dupliquer
le point, et la touche [SUPPR] de l'effacer.
Cette dernière
touche permet également d'effacer le polygone sélectionné
lorsque l'éditeur n'est plus en mode 'Edition de sommets'.
L'éditeur de polygones 3D permet également de manipuler les
couleurs.
En appuyant sur la touche [BACKSPACE]
par exemple, on change la couleur du polygone sélectionné.
A chaque appui sur cette touche, la nouvelle couleur est choisie parmi
celles de la palette chargée en mémoire dans l'éditeur
et dont le contenu est affiché sur la partie droite de l'éditeur.
Il est cependant aussi possible de créer sa propre couleur en utilisant
l'éditeur de couleurs intégré. Ce dernier est accessible
via le menu déroulant en cliquant sur l'item 'Outils > Créer
une couleur'.
L'appel de cet utilitaire fait apparaître une deuxième fenêtre
comprenant dans sa partie supérieure une plaque 3D colorée
de la couleur en cours d'édition et que l'on peut faire tourner
en déplaçant la souris tout en cliquant dessus avec le bouton
gauche.Dans la partie inférieure sont affichées 4 barres
verticales représentant les 4 niveaux des composantes de la couleur.
La première barre à gauche correspond au niveau de rouge,
celle à sa droite au niveau de vert, suivi du bleu et pour finir
la transparence (paramètre alpha). L'éditeur gère
en effet les effets de transparence (si ce mode est activé).
La permutation entre les barres
de couleurs se fait par l'appui de la touche [TAB]. Pour monter le niveau
de la composante séléctionnée, on appuie sur la touche
[PAGE UP], et [PAGE DOWN] sert a le faire descendre.
Enfin, pour valider ou annuler l'édition de la couleur, un clic
du bouton droite de la souris sur l'éditeur de couleurs suivi du
choix voulu (OK ou Annuler) permet de revenir à la fenêtre
principale de l'éditeur de polygones.
L'éditeur 3D sait gérer les textures au format RGB. Une fois chargées, leur utilisation est quasi-transparente pour l'utilisateur. En effet, la sélection d'une texture en mémoire pour un polygone se fait comme pour les couleurs: par l'appui sur la touche [BACKSPACE]. Il est néanmoins possible d'interdire l'affichage des textures à travers l'appel au menu principal. Une idée de l'affichage obtenu est la suivante (appliquée sur la moto)
En appelant le menu et en cliquant sur l'item 'Outils > Importer une texture',
l'utilisateur est alors invité à entrer le nom d'un fichier
contenant la texture au format .RGB. Ce fichier doit pour l'instant contenir
une image de taille 256x256 pixels pour être valide.
Une fois la texture chargée, celle-ci est représentée
sur la gauche de l'écran, en dessous de la palette de couleurs.
Chargement et sauvegarde d'un objet
Le format de sauvegarde des objets est un format ASCII (donc lisible et
modifiable au travers n'importe quel éditeur de texte).
Ce dernier
est stocké d'une manière spécifique à l'éditeur
et il y a donc fort peu de chances qu'il soit utilisable par un autre logiciel
3D du commerce.
Cependant le parseur de fichiers compatible à la lecture du format
est facilement implémentable avec n'importe quel langage capable
de lire dans un fichier.
Clavier:
[F1]
: Aide
[TAB]
: Sélection successive d'une face de l'objet:
[ESPACE] : Edition d'un
face - (passage en mode Edition de sommets)
[DROITE], [GAUCHE], [HAUT], [BAS], [PAGE UP], [PAGE DOWN]
: Translation (d'un polygone ou d'un sommet en mode 'Edition de sommets'):
[SUPPR]
: Suppression (d'un polygone ou d'un sommet en mode 'Edition de sommets')
[INSER]
: Duplication (d'un polygone ou d'un sommet en mode 'Edition de sommets'):
[BACKSPACE] : Changement de couleur/texture du polygone sélectionné:
[ESC]
: Quitter
Souris:
[BT_GAUCHE] : Rotation de l'objet
[BT_DROITE] : Affichage du menu:
Objet > Nouveau : Vider la mémoire et créer une face
Objet > Importer : Charger un objet. L'objet en cours est effacé
Objet > Exporter : Sauver l'objet en cours dans un fichier
Rendu > ... : Différents switchs de rendu
Outils > Créer une couleur : Créer une couleur avec l'éditeur
de couleurs intégré
Outils > Importer une texture : Charger une texture en mémoire
![]() |
![]() |
![]() |