Table des matières
Création d'habits à partir de nouvelles textures
Après avoir abordé la manière dont sont composées les textures des personnages et avoir montré comment créer rapidement un nouveau bouclier, ce nouvel article vous montrera les possibilités offertes par les textures pour créer facilement de nouveaux habits en utilisant les formes de corps existantes. Nous n’aborderons pas les couvre-chefs (casque, chapeau, bandeau, masque, …), les armes ou les capes mais le principe est toujours le même.
Article en cours d’écriture
Les possibilités existantes
Dans un premier temps nous allons décrire les différentes formes d’habits existants et la manière dont ils sont implémentés dans le jeu.
Les 3 formes d'habits existantes
Les 3 formes d’habits existantes sont :
Comment cela se traduit-il dans les fichiers du jeu
Les fichiers objets 3D (les cmf) sont stockés dans le répertoire meshes du jeu ainsi que les images des textures. C’est donc là dedans que nous allons trouver notre bonheur.
Pour les corps nous avons un fichier cmf différent par type d’habit, par sexe et également par race. pour les différentes races c’est seulement la taille du corps qui change et donc la texture ne change pas. Autre point important c’est qu’actuellement, le fichier texture d’un habit est le même quelque soit la race mais aussi le sexe du personnage. C’est dans le répertoire actor_defs que sont décrites les associations entre les objets 3d, les textures et les “objets” du jeu. Néanmoins rien n’empêche de faire des textures plus en rapport avec le sexe du personnage mais cela nécessiterait un travail de révision de la définition des objets du jeu au niveau de l’actor_def si on veut différencier les textures hommes des textures femmes.
Dans le répertoire meshes les fichiers cmf qui nous intéressent sont :
Humain | Elfes | Nains | Galdurs1) | Kultars2) | ||||||
---|---|---|---|---|---|---|---|---|---|---|
Homme | Femme | Homme | Femme | Homme | Femme | Homme | Femme | Homme | Femme | |
les jambes | legs1_humanm.cmf | legs1_humanf.cmf | legs1_elfm.cmf | legs1_elff.cmf | legs1_dwarfm.cmf | legs1_dwarff.cmf | legs1_orchanm.cmf | legs1_orchanf.cmf | legs1_gnomem.cmf | legs1_gnomef.cmf |
le torse “basic” | torso1_humanm.cmf | torso1_humanf.cmf | torso1_elfm.cmf | torso1_elff.cmf | torso1_dwarfm.cmf | torso1_dwarff.cmf | torso1_orchanm.cmf | torso1_orchanf.cmf | torso1_gnomem.cmf | torso1_gnomef.cmf |
le torse avec épaulières | torso2_humanm.cmf | torso2_humanf.cmf | torso2_elfm.cmf | torso2_elff.cmf | torso2_dwarfm.cmf | torso2_dwarff.cmf | torso2_orchanm.cmf | torso2_orchanf.cmf | torso2_gnomem.cmf | torso2_gnomef.cmf |
le torse avec épaulières et piques | torso3_humanm.cmf | torso3_humanf.cmf | torso3_elfm.cmf | torso3_elff.cmf | torso3_dwarfm.cmf | torso3_dwarff.cmf | torso3_orchanm.cmf | torso3_orchanf.cmf | torso3_gnomem.cmf | torso3_gnomef.cmf |
Il existe aussi des corps nommés draegoni qui correspondent à la race des Draegoni dans la version US. Ils ne sont pas utilisés dans LE.
Du côté des textures, il faut savoir qu’un objet 3d peut utiliser plusieurs textures différentes suivant la partie du corps.
Les images sont des fichiers BMP en mode palette (nommé aussi indexé). Elles portent le nom que l’on veut. Exemple le torse de l’armure de cuir renforcé s’appelle torso9.bmp.
- la texture du torse est symétrique c’est à dire que la partie droite est un miroir de la partie gauche. Donc vous ne pourrez pas mettre d’armoiries à moins que celles-ci soient également symétriques.
- la texture du bras correspond à celle d’un seul bras. Les deux bras utilisent la même texture.
- la texture du pantalon est également symétrique.
Comment tester un nouvel habit
Pour tester un habit, vous avez 2 méthodes :
- Posséder un habit de la même forme que celui désiré et copier les textures dans le client avec le nom des textures de cet habit. Par exemple, pour tester sur un haut en cuir renforcé, remplacez les textures torso9.bmp et arms9.bmp par vos images de textures.
- Modifier dans l’actor_defs la définition d’un habit en y plaçant les bons noms de textures et de cmf.
Exemple de modification de //l'actor_defs// en prenant comme base de test l'armure de cuir renforcée
Dans player_shirts.xml, la définition de la veste de l’armure de cuir renforcée est
<shirt color="augmented leather" id="17"> <arms>./meshes/arms9.bmp</arms> <torso>./meshes/torso9.bmp</torso> </shirt>Pour changer le nom du fichier texture, il suffit de changer les noms des fichiers BMP.
Pour changer la forme du torse, il suffit de modifier aussi ce fichier en ajoutant le texte group=“torso2” ou group=“torso3” comme dans l’exemple suivant :
<shirt color="augmented leather" group="torso2" id="17"> <arms>./meshes/arms9.bmp</arms> <torso>./meshes/torso9.bmp</torso> </shirt>
Dans player_legs.xml, la définition du pantalon de l’armure de cuir renforcée est
<legs color="augmented leather" id="15"> <skin>./meshes/pants6.bmp</skin> <glow>none</glow> </legs>
Dans player_legs.xml, la définition des bottes de cuir est
<boots color="leather" id="6"> <skin>./meshes/boots2.bmp</skin> <glow>none</glow> </boots>
Modifier l'apparence de sexe ou de race
C’est possible, il suffit simplement de remplacer le fichier XML définissant la race et le sexe de son personnage par le fichier XML de celui que l’on veut tester.
Race | Homme | Femme |
---|---|---|
Humains | human_male.xml | human_female.xml |
Elfes | elf_male.xml | elf_female.xml |
Nains | dwarf_male.xml | dwarf_female.xml |
Galdurs | orchan_male.xml | orchan_female.xml |
Kultars | gnome_male.xml | gnome_female.xml |
Par exemple, je suis un galdur et je veux tester les habits sur une femme elfe, il suffit, dans l’actor_defs, de copier le fichier elf_female.xml à la place du fichier orchan_male.xml
Je voudrais utiliser des habits de la version US
La manière de composer les personnages dans LE correspond à des choix techniques qui ne sont plus utilisés par les US depuis quelques versions déjà. Pour éviter de devoir maintenir une fichier cmf par race et par habit, ils ont modifié tous les modèles pour n’avoir qu’un fichier cmf par habit, le même pour toutes les races mais simplement mit à l’échelle dans les fichiers actor_defs.
Malheureusement, nous nous sommes aperçu que les nouveaux modèles US étaient incompatibles avec les anciens modèles que nous utilisons. Il ne nous est donc pas possible d’implémenter les nouveaux habits US sans devoir refaire toutes les races spécifiques à LE. C’est un travail que nous n’avons pas jugé intéressant de faire car nous voulons nous focaliser sur d’autres aspects du développement du jeu.
Donc toutes demandes de ce type ne pourra pas être honorée pour les raisons citées ci-dessus.
Description des différentes parties des habits
Nous allons maintenant décrire ce qui est nécessaire, élément par élément, pour réaliser la texture d’un habit. Le but est de fournir une petite boîte à outils afin de se faciliter la vie dans la réalisation des textures. Vous y trouverez des conseils et plusieurs fichiers images destinés à vous faciliter le travail.
Parmi les fichiers images mis à disposition, vous trouverez :
- L’image du dépliage UV qui correspond aux contours de chaque triangle composant l’objet 3D mis à plat sur une image 2D.
- L’image d’occlusion ambiante, calculée par Blender et légèrement modifiée, destinée à faciliter l’ombrage de la texture à la lumière ambiante et ainsi augmenter son réalisme.
L’utilisation de ces images sera décrite dans le chapitre suivant : Un exemple de réalisation pas à pas
Le torse et les bras
Pour la partie haute des habits, nous avons actuellement 3 possibilités. L’habit de base qui est utilisé pour la plupart des habits (tenue basique, armures de cuir, habits de peau, …) est le plus simple à utiliser pour créer une texture. Les deux autres ont une petite contrainte qui peuvent gêner la réalisation d’une nouvelle texture. En effet, la textures des épaulettes et des piques reprend une partie de l’image déjà utilisé par la manche. Ce n’est pas bloquant mais il faut en tenir compte si on ne veut pas avoir un résultat bizarre.
Autre point dont il faut tenir compte, le torse rentre dans le pantalon. Donc le bas de la texture du torse sera partielement recouverte par la texture du pantalon. Si vous voulez mettre une ceinture, faite le sur la texture du pantalon.
Dans le cas d’un habit destiné aux deux sexes, prennez les fichiers homme.
Habits de base
Habits avec épaulettes
Pour le haut de corps avec les épaulettes, il faut prendre garde au fait que la texture des épaulettes est superposée avec la texture des avant-bras :
Dans l’exemple ci-dessus nous avons teinté en orange l’emplacement utilisé par les épaulettes sur l’image texture de gauche. A droite, le résultat sur le modèle dnas Blender. On remarque que la couleur orange se trouve à deux endroits : les avant-bras et les épaulières. C’est donc la même zone de l’image qui texture c’est deux parties du corps. Il est important de bien concevoir votre texture en tenant compte de cette contrainte sinon le résultat sera bizarre.
Habits avec piques
Comme pour le torse 2, ce nouveau torse (non utilisé dans le jeu) réutilise des zones de l’image de texture déjà utilisé par d’autres parties du corps que les épaulières :
Dans l’exemple ci-dessus, les épaulières ont été coloriées en orange, les piques en rouges et les protections des mains en bleu. L’épaule ainsi que le haut du bras se retrouvent également orange. Ils partagent donc la même texture que l’épaulière. Au contraire les piques sont à part et donc peuvent avoir leurs propres textures. Les protection des mains recouvrent légèrement les aisselles. Pour cette dernière partie, il conviendra de faire attention pour que les couleurs ne se voient pas trop si le personnage lève le bras.
Les mains / les gants
Les jambes / le pantalon
Les bottes
Un exemple de réalisation pas à pas
Nous allons réaliser un chemisier féminin pour Réca. Pour cela nous allons utiliser le haut du corps standard de la femme.