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.

FIXME 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 :

Le corps “basic”
Il est utilisé par un grand nombre d’habit en tout genre. Des guenilles des aventuriers à leur arrivé à la tenue en peau en passant par les armures de cuir et les cottes de maille. Il a servi également à créer les 2 autres corps dont le dépliage UV de la texture est quasi identique.
Le corps avec des épaulières
Il est utilisé par les armures de plate en métal. Le seul ajout sont les épaulières. Il est plus adapté à la réalisation d’armure que d’habit normaux.
Le corps avec des épaulières et des piques
Il est utilisé par l’armure dragon rouge. Comme les Dragons n’existent pas (et n’existeront pas) dans LE, cette armure n’est pas disponible dans le jeu et à priori ne le sera jamais. Il est également plus adapté à la réalisation d’armure que d’habits normaux.

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.

Textures utilisées pour les jambes
Le pantalon / les jambes
Taille 80×80
Les bottes
taille 78×80
Textures utilisées pour le haut du corps
Le torse
taille 98×107
Les bras
taille 80×80
Les mains / les gants
taille 32×32

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.

Comme c’est déjà indiqué dans les articles précédents, l’apparence du personnage est symétrique. C’est un choix fait par les US pour limiter la taille des textures. Ainsi, quand vous faites votre texture n’oubliez pas que :
  • 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

Il est fortement conseillé d’installer un 2ième client LE dans un autre répertoire et de ne faire les modifications que dans celui-ci. Le premier client vous servira pour jouer, le deuxième pour tester. En effet, si vous modifiez mal les fichiers Actor_defs vous pouvez planter votre client et cela vous empêchera de jouer. Dans tous les cas, si vous modifiez un fichier du client, sauvegarder le fichier d’origine sous un autre nom. Ceci est valable également pour la création ou la modification d’objets 3d ou de cartes

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

Image UV Occlusion ambiante
Partie du corps taille normale taille normale
Torse Homme
Bras Homme
Torse Femme
Bras Femme

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.

Image UV Occlusion ambiante
Partie du corps taille normale
Torse homme idem habits de base
Bras homme idem habits de base
Torse femme idem habits de base
Bras femme idem habits de base

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.

Image UV Occlusion ambiante
Partie du corps taille normale
Torse homme idem habits de base
Bras homme idem habits de base
Torse femme idem habits de base
Bras femme idem habits de base

Les mains / les gants

Image UV Occlusion ambiante
Partie du corps taille normale taille normale
main

Les jambes / le pantalon

Image UV Occlusion ambiante
Partie du corps taille normale taille normale
jambe

Les bottes

Image UV Occlusion ambiante
Partie du corps taille normale taille normale
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.

Le logiciel utilisé dans cet exemple est The Gimp. C’est un logiciel libre et gratuit fonctionnant sous Linux, Windows et Mac OSX. Vous pouvez donc l’utiliser mais ce n’est pas une obligation. D’autres logiciels existent et peuvent être utilisé. Le point important si vous utilisez un autre logiciel, c’est que celui-ci gère la notion de calque car sinon ce sera plus difficile. Pour ceux qui veulent utiliser ms-paint, je leur souhaite bon courage car celui-ci ne gère pas les calques.

Dessin de l'habit en utilisant l'image UV

Mise en couleur des aplats

Utilisation de l'occlusion ambiante

Ajout des ombrages du tissus

Finitions et résultat

Conclusion

1)
les Galdurs utilisent les formes de la race des Orchans chez les US
2)
les Kultars utilisent les formes de la race des Gnomes chez les US