|
Mon premier projet gMax
Pour cette première vraie leçon, il
ne s'agit pas de faire un TGV hyper détaillé. Nous allons
faire rouler une boite à chaussures dans MSTS!
Le but est de se familiariser non pas aux outils de modélisation
(d'autres rubriques sont consacrées à cette difficile tâche)
mais aux fonctions permettant d'exporter un modèle vers le jeu
ainsi que les paramétrages de base à configurer avant de
commencer tout projet.
1) Configuration de gMax
Il faut avant toute chose régler les unités. MSTS utilise
le système métrique. Il faut faire de même dans gMax.
Menu Customize, Unit Setup, cocher Metric puis Meters
dans la boite déroulante.
Toujours dans le menu Customize, Preference, dans l'onglet
General, régler System Unit Scale à 1 Unit
= 1,0 Meters
Cliquer droit sur les boutons de Snap. Dans l'onglet Home Grid,
régler Grid Spacing à 1,0m
Appuyer sur le bouton Min/Max Toggle
puis cliquer droit sur le nom de la vue (En haut à gauche de la
vue). Dans le sous menu Views, sélectionner Top.
Vous pouvez aussi appuyer sur "T".
Nous avons donc la vue de dessus en plein écran.
2) Création de la boite
|
Sélectionner le panneau de commande Créer, en mode
géométrie 3D, les Standard Primitives, cliquer
sur Box. Développer la barre KeyBoard Entry.
Nous allons rentrer tous les paramètres nécessaires
à la création de la boite.
Remplir les paramètres comme sur la figure. Cliquer sur
Create.
Cela a créé une boite de 15 mètres sur 3 et
de 3 mètres de haut flottant 1 mètre au dessus du
sol.
Taper "Main" dans le champ Name de la section
Name and Color. Le repère de Main doit obligatoirement
se trouver à l'origine. Sélectionner le panneau de
commande Hierarchy, cliquer sur Affect Pivot Only.
Cliquer droit sur le bouton Select and Move
et mettre à 0 les trois valeurs du cadre Absolute:World.
Le repère de Main se met alors en (0,0,0). Recliquer sur
Affect Pivot Only pour le désactiver.
Finalement, la boite est trop longue, nous souhaitons la réduire
à 12 mètres de long. Sélectionner le panneau
de commande Modifier. On peut directement changer le paramètre
Length en y écrivant 12. La boite est redimenssionnée
à 12 mètres en longueur.
Cliquer droit sur le nom de la vue et sélectionner le mode
d'affichage Smooth + Highlights. En appuyant sur la touche
P (vue en perspective) et en pivotant avec le bouton Arc Rotate
, on obtient la vue suivante.
|
 |
|
3) Mise en peinture
MSTS exige que toutes les facettes soient habillées d'une
texture *.ace. Cela réclame donc une texture mais aussi des
coordonnées de mapping.
Les textures doivent être des fichiers *.bmp ou *.tga de
forme carrée de dimension 32*32, 64*64, 128*128, 256*256
ou 512*512. Les fichier *.tga permettent de contenir une couche
alpha qui servira de masque de transparence. Nous utiliserons la
texture 1proj.ace qui est un
simple carré de 128 pixels de côté de couleur
brune.
Sélectionner l'objet Main en cliquant dessus. Ouvrir le
gestionnaire de matériaux
et cliquer sur New. Un matériau apparait nommé
par défaut Material #1.
Dans le cadre Texture, cliquer sur Open et choisir
la texture 1proj.ace sur le disque dur.
Le cadre Shader peut prendre plusieurs valeurs qui influenceront
le comportement du matériau dans le moteur 3D du jeu. Dans
MSTS, seuls états peuvent être utilisés. TexDiff
est utilisé pour les matériaux opaques. BlendATexDiff
est utilisé par les matériaux transparents ou translucides.
Le champ Mip LOD Bias est mis à -3. C'est une convention
pour le matériel roulant qui permet de retarder l'effet du
Mip Mapping de 3 niveaux.
Le champ Lighting Palette permet de donner de la brillance
ou de l'autoluminescence au matériau. L'option OptSpecular0
laisse le matériau neutre.
Appuyer sur Put! pour appliquer le matériau à
l'objet Main.
Nous allons conserver les coordonnées de mapping automatiquement
créés lors de la création de la boite.
|
|
|
4) Création des essieux
Nous allons mettre des essieux sous cette boite. Encore une fois,
la modélisation sera simpliste: de simples cylindres. Mais
leur mise en place se complique.
Cliquer droit sur le nom de la vue. Dans le sous menu Views,
sélectionner Left. On peut également accéder
à la vue de gauche par le raccourci clavier "L".
Nous avons donc la vue de gauche en plein écran.
Sélectionner le panneau de commande Créer, en mode
géométrie 3D, les Standard Primitives, cliquer
sur Cylinder. Cliquer sur l'écran et déplacer
la souris en maintenant le doigt appuyé. Un disque se forme.
Dans le panneau de contrôle, la valeur du champ Radius
varie en fonction de la position de la souris. Relâcher le
doigt et continuer de déplacer la souris, le rayon du cylindre
est fixé mais la valeur du champ Height varie. Cliquer
n'importe sur l'écran. Ecrire les valeurs suivantes dans
les champs de la section Parameters:
Radius = 0,5m, Height = 2m, Height Segments
= 1, Cap Segments = 1, Sides = 12 et cocher Smooth.
Taper "Wheels11" dans le champ Name de la section
Name and Color.
Pour positionner l'essieu, le sélectionner et cliquer sur
Align
puis cliquer sur l'objet Main. Une boite s'affiche. Aligner le centre
de Wheels11 sur le centre de Main suivant les axes X et Z.
Recommencer en alignant cette fois le maximum de Wheels11 sur le
minimum de Main suivant l'axe Y. On obtient la vue ci-contre.
Cliquer droit sur le bouton Select and Move .
Taper -4 en X dans le cadre Offset:Screen. Cliquer
sur le bouton Array .
Une boite de dialogue s'ouvre.
Dans le tableau Array Transformation, on tape 8 dans la
colonne X, à la ligne Move. On laisse le reste
tel quel. Dans le tableau Array Dimension, on laisse la puce
1D cochée mais on écrit 2 dans le champ Count.
Cliquer sur Ok. Renommer le deuxième essieu "Wheels21".
On a juste fait une copie de l'essieu 8 mètres plus loin
sur l'axe X. Mais l'outil Array permet de réaliser
des réseaux d'objets bien plus complexes.
On obtient la vue ci-contre.
Nous n'avons pas dessiné les cylindres dans la même
vue que la boite. Leurs repères ne sont donc pas alignés
sur le repère World. C'est embêtant car les essieux
ne tourneront pas suivant le bon axe. Sélectionner un essieu.
Dans le panneau Hierarchy ,
section Adjust Transform, cliquer sur le bouton Reset
Tranform. Le repère s'aligne sur le repère World.
|
|
|
5) Hiérarchie
Se mettre en mode Select and Link .
Sélectionner un essieu, cliquer et sans lâcher le clic,
tirer un lien vers l'objet Main. Lâcher le bouton de la souris.
L'essieu est désormais un enfant de Main. Faire de même
avec le second essieu.
Revenir en mode Select object
puis ouvrir le dialogue Select by Name .
Dans ce dialogue, cocher l'option Display Subtree. On voit
apparaitre la hiérarchie des objets telle qu'on vient de
la créer.
Ouvrir le gestionnaire de matériaux
, sélectionner Main et cliquer sur Get!. Le matériau
Material #1 réapparait. Sélectionner chaque essieu
et cliquer sur Put!. Tous les objets sont texturés.
Nous pouvons exporter le wagon vers MSTS.
|
|
|
6) Export vers MSTS
Avant tout, pensez à sauvegarder le projet avant d'entrer
dans le LOD Manager. Il est parfois instable.
Sélectionner l'objet Main en cliquant dessus. Ouvrir le
menu Train Simulator, LOD Manager, appuyer sur le
+. L'arborescence s'affiche. Main est la racine et les deux
essieux sont les enfants. Dans le champ LOD Distance, taper
2000. C'est la distance à partir de laquelle le modèle
sera visible dans le jeu. On peut par exemple utiliser un modèle
à 2000 mètres, un second à 1000 m, puis un
suivant à 500 m, à 100 m...etc de plus en plus détaillés.
Cela permet de soulager la carte graphique du PC en utilisant des
objets lointains simples et à peine visibles. Mais ce sera
pour une autre leçon!
Cliquer sur File, puis sur Export to .S. Sauvegarder dans le fichier
boite.s. Le fichier 3D est prêt mais il manque d'autres fichiers
utiles pour MSTS.
Le fichier *.sd est le fichier 3D étendu. Il contient des
informations concernant le comportement de l'objet dans l'environnement
3D. Le seul champ utile pour du matériel roulant est le ESD_Bounding_Box.
il définit une boite parallélépipèdique
englobant le wagon qui est utilisée dans les calculs de collision.
Il faut y paramètrer les dimensions maxi du wagon.
Le fichier *.wag (ou *.eng pour les engins moteurs) contient des
données techniques utilisées par le simulateur.
Sans entrer dans le détail, voici les deux fichiers utilisés:
boite.sd, boite.wag.
Ces deux fichiers, les fichier boite.s et 1proj.ace sont placés
dans un sous répertoire du répertoire Trainset de
MSTS
|
|
| Voici le résultat! |
|
|