Export de modèles Static avec 3D Studio max

Écrit le 12/12/2004 par In_head
Dernière mise à jour : 06/04/2006

Introduction

Ce tutorial doit commencer au moment même ou votre model est terminé (modelisation +uv +textures), vous devez avoir installé le pack de plugins valve dans 3dsmax/plugins, et le sdk... Disponibles ainsi que les sources.

note : n'oubliez pas de créer un dossier pour votre projet pour vous y retrouver plus facilement avec dedans le .max, le .tga et vos futures exportations.

Avant propos

Tout d'abord vous devez ouvrir votre model, vous assurer que vos textures sont en *.tga 24 ou 32 bits et attribuées au model, et dans une puissance de 2 :

les tailles au dessus sont déconseillées, les cartes 3D de type DirectX 7.0 ne gérant pas au dessus de 1024*1024.

Préliminaires

Vous allez devoir vérifier l'état des normales de votre model, 3dsmax ayant des algorithmes de traitement, le model tel qu'il est sous max peut finir complement différent dans un moteur 3D (scaling/normales), pour cela une fonction de normalisation a été créée : « réinitialiser transformation » (en fr) / « X-form » (en us)

Allez tout d'abord dans l'onglet outils / Utilities http://www.game-lab.com/images/tuts/hl2_models/utilities_ico.jpg

puis dans la liste de boutons ci-dessous vous devez avoir « réinitialiser transformation » (en fr) ou « X-form » (en us), si vous ne l'avez pas, ajoutez-le à l'aide du bouton « ajouter » / « more » (à ce stade le model peu commencer à montrer ses defauts)

http://www.game-lab.com/images/tuts/hl2_models/xform1.jpg
http://www.game-lab.com/images/tuts/hl2_models/xform2.jpg

Cliquez donc sur votre bouton X-form, et retournez dans votre onglet « modificateurs » / « modify » http://www.game-lab.com/images/tuts/hl2_models/modifier_ico.jpg

clic-droit sur le modificateur x-form, un menu apparait, faites « rétracter vers » / « collapse to »

http://www.game-lab.com/images/tuts/hl2_models/xform4.jpg

si votre model se trouve avec toutes les normales inversées vous allez devoir selectionner tous les polygones de votre model (en polygone editable / editable poly), et utiliser l'option « inverser normales » / « flip ».

http://www.game-lab.com/images/tuts/hl2_models/normales_invert.jpg
Avant inverser normales
http://www.game-lab.com/images/tuts/hl2_models/normales_redraw.jpg
Après inverser normales

Micro anime

Nous allons passer à l'étape de création d'une micro animation d'une frame (1fps = 1/25 de seconde).

Vous allez donc selectionner votre objet, aller dans la barre du bas de max et activer « set key », cliquer sur la clef à l'instant 0 pour créer une clef de base, et décaler la timeline (la barre de lecture des key) à 1, créer une nouvelle clef. Evidemment avec ce genre de clefs, le model ne bougera pas, c un Func_static n'oubliez pas ! (un objet du décor). (pour la création d'un squelette pour un personnage, et sa compilation j'y reviendrai plus tard).

http://www.game-lab.com/images/tuts/hl2_models/key_0.jpg

vous devriez avoir ceci :

http://www.game-lab.com/images/tuts/hl2_models/key_1.jpg

Exportation de notre model, en format valve *.SMD

Exportations de notre model, en format valve *.SMD

Allez dans fichier > exporter / file > export, exportez votre_model_reference.smd qui sera le model visuel, une seconde fenêtre apparait cochez reference_frame
ex :

http://www.game-lab.com/images/tuts/hl2_models/exp_reference.jpg
http://www.game-lab.com/images/tuts/hl2_models/fenetre_exporter.jpg

Allez dans fichier > exporter / file > export, exportez votre_model_idle.smd qui sera les coordonnées d'animation, une seconde fenêtre apparait, cochez skeletal_animation.

http://www.game-lab.com/images/tuts/hl2_models/fenetre_exporter.jpg

La 3e étape qui consiste à exporter le model physique nécessite de créer un autre model englobant le précédent pour les tests de collision. Je vous conseille de le créer par dessus votre model de base, puis par la suite supprimer ce dernier.

http://www.game-lab.com/images/tuts/hl2_models/model_collision.jpg

Vous y êtes ? vous pouvez exporter votre_model_phys.smd, dans la seconde fenêtre cochez reference_frame.

http://www.game-lab.com/images/tuts/hl2_models/fenetre_exporter.jpg

Compilation

Vous avez enfin vos 3 models désirés et allez donc oucrir le dossier du sdk : (sachant que vous pouvez compiler où vous voulez du moment que le chemin de desination ne contient aucun espace, et un gameinfo.txt à sa racine.) /chemin_de_steam/steam/SteamApps/email@email/sourcesdk/bin/

Créez dans ce dossier un fichier .txt renommez-le en vtex.bat, cliquez-droit, choisissez modifier et collez ceci en le modifiant selon votre config :

set VPROJECT=%chemin_de_steam/steam/SteamApps/email@email%/sourcesdk/cstrike_sample_content
vtex.exe -mkdir -shader VertexLitGeneric %chemin_de_steam/steam/SteamApps/email@email%/sourcesdk/cstrike_sample_content/materialsrc/mon_model*.tga
pause

créez un fichier .txt renommez-le en studiomdl.bat, cliquez droit, sélectionnez modifier et collez ceci en le modifiant selon votre config : (qc de base fourni)

SET VPROJECT=%chemin_de_steam/steam/SteamApps/email@email%/sourcesdk/cstrike_sample_content
studiomdl.exe %chemin_de_steam/steam/SteamApps/email@email%/sourcesdk/cstrike_sample_content/mon_model.qc
pause

lancez le vtex.bat, il va donc vous créer des textures au format .VMT et .VTF, le compilateur ayant un probleme de displexie nous devons maintenant créer les nouveaux repertoires : models\mon_model

%chemin_de_steam/steam/SteamApps/email@email%/sourcesdk/cstrike_sample_content/materialsrc/models/mon_model

et dedans y coller les textures compilées format .vmt et .vtf qui se trouvent

%chemin_de_steam/steam/SteamApps/email@email%/sourcesdk/cstrike_sample_content/materialsrc/mon_model

lancez le studiomdl.bat la compilation devrait se dérouler sans accroc.

Lancez modelviever du sdk de valve, choisissez ouvrir et regarder votre model pour voir si tout est comme vous le souhaitiez.

J'espère que ce tutorial vous aura appris à maîtriser la chaine d'exportation pour hl2, si vous avez des questions : in.head (CHEZ) gmail (POINT) com