Export de 3ds à sandbox
Voici la 2eme partie du tutoriel.
Bien sur, si vous maitrisez 3D Studio max, le premier tuto ne vous est pas necessaire.
Egalement, ici je n'aborderai que le strict necessaire pour convertir un format 3ds vers cgf.
Préparation
Puisque vous avez bien récupéré le SDK et placé les 2 fichiers CryExport.dlu et CryExport.ini dans le dossier plugins de 3DS, nous allons pouvoir attaquer tout de suite il nous faut maintenant préparer notre espace de travail.
La texture
En premier lieu nous allons d'abord faire notre texture au bon format.
Le seul format accepté correctement dans farcry est le .DDS, format de direct X.
Il vous faut donc ouvrir votre logiciel de dessin. Ouvrir la texture. Lui donner une taille multiple de 8.
c'est à dire, du 256*256, 512*512, 256*512.... etc.
Dans notre cas, la texture choisie est plus large que notre objet.
de plus, pour faciliter un futur changement de textures SANS toucher au model, il faut penser à subdiviser notre texture unique en plusieurs matieres.
nous avons la partie bois, et la partie papier peint.
Il est donc interessant de la séparer, pour ainsi pouvoir changer le papier peint dans le jeu par exemple. et ce sans avoir à faire un autre model.
Séparation des matieres
Nous savons que le brush aura une partie basse et haute en bois, et centrale en papier peint.
La texture que nous avons à deja une suite d'effets de 'vieux' et est egalement trop large pour notre model.
donc si nous utilisons telle quelle cette texture, nous aurons un effet de 'tiling', de répétition tres visible.
Pour eviter cela, farcry utilise ce systeme de travail :
- des brushs aux textures uniformes et propres pour ne pas donner l'impression de tiling.
- des décals (calques) de salissures pour casser la régularité et la propreté des brushs.
- des normales pour faire un Bump sur la surface donnant volume et irrégularité sur la surface.
Nous allons donc faire propre, mais libre à vous de mieux finaliser les textures.
nous allons commencer par prendre un bout de papier peint. un bout dans une zone uniforme non abimée et faire en sorte qu'il y est un effet de tiling parfait.
même chose pour le bois.
Le tout au format 256*256. et de plus autant faire des textures réutilisables ailleur sur d'autres brushs :).
Quelques minutes passées sous paint shop pro. et voici nos 2 textures terminées
Sauvez les dans un format non destructif, comme PNG par exemple, puis exportez les à nouveau sous le format DDS.
en suivant la configuration suivante.
Le tout sous les noms:
- papier peint : wall_paper_blue.dds
- bois : wall_wood_light.dds
Vous devez sauvegarder le tout dans le dossier Objects/ et un sous dossier auquel nous allons donner le nom de Walls.
ce qui nous donne
- ../FarCry/Objects/Walls/wall_paper_blue.dds
- ../FarCry/Objects/Walls/wall_wood_light.dds
Environnement 3D Studio Max
Lancez 3DS.
Avant de commencer à importer notre objet, il faut préparer 3DS pour l'export vers Farcry.
Echelle
Pour que l objet ressemble à quelque chose dans farcry, il doit etre à la bonne echelle.
dans le menu customize, configurez l'échelle en metre.
Texture
Ouvrez ensuite le navigateur de textures (touche M).
Selectionnez la premiere texture.
puis configurez comme l'image.
Cliquez ensuite sur A (le cadena) et ensuite sur B.
Une fenetre s'ouvre.
Selectionnez Bitmap, et allez chercher votre texture au format dds dans le dossier précédement créé.
http://www.piwiki.net/index.php/Image:3ds_textures_3_FC.png" class="image" title="Image:3ds_textures_3_FC.png">http://www.piwiki.net/images/c/c1/3ds_textures_3_FC.png" alt="Image:3ds_textures_3_FC.png" longdesc="/index.php/Image:3ds_textures_3_FC.png" />
Une fois revenu sur le material editor. dans C, selectionnez Default.
Selectionnez ensuite la matiere 2 et refaites la même chose, mais en choisissant la texture bois.
Profil
Voilà, 3DS est configuré, sauvegardez le tout sous un nom explicit, par exemple, sandbox.
Il n' a plus qu'à importer notre objet.
Import -> export
Import
Dans 3d Studio, selectionez File/Import
et pour l'import, configurez comme sur l'image.
http://www.piwiki.net/index.php/Image:3ds_import_FC.png" class="image" title="Image:3ds_import_FC.png">http://www.piwiki.net/images/2/29/3ds_import_FC.png" alt="Image:3ds_import_FC.png" longdesc="/index.php/Image:3ds_import_FC.png" />
Voilà notre objet dans 3ds.
Formatage pour farcry
Convertion poly
Nous allons maintenant selectionner les 3 élements importés et faire un clic droit.
et choisir, 'convert to >'
Choisissez 'convert to editable poly'
UV maps
Selectionnez ensuite, l'un apres l'autre, les éléments et dans le modifier List, selectionnez Unwrap UVW.
Une fois l'UV ajouté aux 3 éléments, ouvrez le Material editor.
Décalez la fenetre pour pouvoir voir votre model.
puis sélectionnez la premiere texture, et avec la souris, tirez la jusqu'au mur devant avoir la papier peint.
Sélectionnez la seconde texture et tirez la jusque sur les parties hautes et basses du model.
Voila notre objet texturé.
Si vous ne votez pas de textures, dans le menu Views, sélectionnez, activate all maps.
Comme vous pouvez le voir, c'est assez moche tel quel :).
Choisissez l'élement dur mur central(papier peint), puis sélectionnez Unwrap UVW.
puis Dans parameters, cliquez sur Edit... (A)
Une nouvelle fenetre s'ouvre.
Commencez par cliquer sur A pour passer en mode de déplacement des sommets.
Puis sur B pour activer le callage magnétique sur la grille.
Enfin, reconstituez l UV tel que sur l'image.
http://www.piwiki.net/index.php/Image:3ds_objet_4_FC.png" class="image" title="Image:3ds_objet_4_FC.png">http://www.piwiki.net/images/b/bc/3ds_objet_4_FC.png" alt="Image:3ds_objet_4_FC.png" longdesc="/index.php/Image:3ds_objet_4_FC.png" />
Voila notre mur est texturé correctement.
Passons au bas.
Sélectionnez l'élément bas, puis dans sa configuration, mettez vous sur 'Editable Poly'
Dans Sélection plus bas, choisissez 'Polygon' (A)
Selectionnez la plus petite face avec la souris, sur l élément (1) qui devrait passer en rouge.
Et dans polygon Properties, mettez le chiffre 1 dans set IF (B)
Sélectionnez maintenant la plus grande face(2), et donnez lui le SetID 2(B)
Voilà vous venez de définir des calques de matiere.
Sélectionnez les 2 faces en restant appuyé avec CTRL.
Puis mettez vous sur 'Unwrap UVW' et cliquez une fois sur Reset UVWs.
puis sur Edit...
La fenetre d'édition s'ouvre. et ayant ainsi différencié les 2 faces de l'élement, il va etre possible de les travailler indépendament.
dans notre cas, rien de difficile, mais imaginez avec des brushs aux faces irrégulieres.
la fleche blanche indique le menu déroulant ou vous pourrez ainsi sélectionner la face à travailler.
Vous n'avez plus qu'à aligner la texture sur l'objet.
Utiliser la grille magnetique facilite le gros du travail. ensuite il vous faudra terminer sans pour bien aligner.
Vous avez aussi la possibilité de choisir le type de déplacement, vertical ou Horizontal (A).
Voilà, entrainez vous avec le maping. une fois chaque élément texturé, vous pourrez passer à la suite.
Export
Voila, notre objet est au bon format et est texturé.
Il nous reste plus qu'à l'exporter vers farcry.
Allez sur l'onglet Utilities (A)
Si l'icone Crytek Exporter2 (C) n'est pas présente, Cliquez sur l'icone (de configuration (B).
Sur la fenetre qui s'ouvre, descendez juqu'à trouver le plugin de Crytek (liste de gauche).
et descendez au bout dans la liste des boutons à droite.
Si vous n'avez aucun bouton de libre (vide), ajoutez une quantité à total Buttons (1).
un nouveau bouton vide apparait.
Il vous suffit ensuite de tirer Crytek Exporter2 sur le bouton vide créé (2).
Cliquez sur OK et votre bouton apparaitra dans la liste.
Cliquez maintenant sur 'crytek Exporter2'.
Sélectionnez dans votre vue 3d le mur bas, puis cliquez sur l'icone 'Add Selected'
L'élement devrait apparaitre dans la liste.
Maintenant, cliquez sur 'Export Nodes', et enregistrez le dans le dossier Walls de farcry que nous avons créé pour les textures.
Donnez lui le nom 'house_wall_01_bottom'
Cliquez sur Clear List pour effacer le contenu de la liste. Puis cliquez sur Pick...
et choisissez le mur du milieu dans votr vue 3d.
A nouveau, sauvegardez sous le nom 'house_wall_1_middle'.
Et à nouveau sélectionnez et sauvegardez la partie haute sous le nom 'house_wall_1_top'.
Voila, vous avez terminé.
Lancez le sandbox de farcry.
et vous pourrez retrouver et utiliser vos 3 élements directement depuis le navigateur de brushs.
Redistribution
Objets et textures sont dans le même dossier nommé Walls.
Si vous désirez distribuer vos créations, cela se fera de 2 manieres possibles.
Distribution sans map
Vous voulez juste distribuer votre brush pack.
Créez ou vous voulez un dossier temporaire que vous nommerez Objects.
dans ce dossier créez un dossier nommé walls, et copiez dedans textures et objets que vous voulez distribuer.
Zippez le tout, puis renommez l'extension de zip à .PAK.
Ensuite pour que les mapeurs puissent l'utiliser, il suffira qu'ils mettent ce fichier pak dans le dossier FcData de farcry.
Distribution dans une map
Vous ne désirez pas faire un pack d'objets, et ne pas voir vos objets utilisés dans d'autres maps.
une fois votre map finie, vous trouverez le fichier Level.PAK dans le dossier de votre map.
créez un dossier temporaire ou vous voulez et dézippez son contenu.
dans l'architecture ainsi obtenue, rajoutez un dossier Objects puis dedans un dossier walls, et collez les objets et textures utilisés dans votre map.
recompressez le tout, renommez le fichier zippé en Level.PAK et remplacez l'ancien par le nouveau, dans votre pack de distribution.
Voilà.
Conclusions
Ce tutoriel est maintenant terminé.
Celui çi est destiné à tous ceux qui n'y connaissent rien en modeling. Je n'y aborde donc aucun élément complex.
Pour plus de détails, d'autres tutoriels, plus avancés verront le jour.
Vous remarquerez evidement que ce tutoriel s'applique à tous les jeux, et pas seulement à farcry. Il suffit de répéter la procedure correspondant à chaque jeu pour obtenir ses objets sous n'importe quel moteur.
Sources: piwiki.net BerSeeker