top of page

Bienvenue dans la partie tutorielle. A ce jour le seul tutoriel vraiment complet que j'ai réalisé concerne le skinning. Vous aurez besoin de patience et d'imagination si vous voulez réellement réussir dans ce domaine. Accrochez-vous, c'est parti!

TUTORIEL DE SKINNING

Intro

I. Introduction

Ce tutoriel a été réalisé il y a  quelques années maintenant, mais a été mis à jour. Je suis autodidacte en la matière, et pour moi rien ne remplace l'observation de skins existants, mais s'il peut vous aider ou du moins vous donner envie d'essayer alors je serai satisfait.

Ce tutoriel vous permettra de profiter de ma petite expèrience en la matière.
Pour les néophytes, nous devons déjà distinguer trois choses: le
modeling, le weighting et le skinning.

Le modeling est la création d'un modèle en 3 dimensions, à partir de rien. Il peut être créé à partir d'un logiciel comme 3D Studio Max, Maya, ou Z-Brush par exemple. En tout cas, c'est un travail qui est hors de ma portée pour le moment.

Le weighting est la manipulation consistant à

accrocher des éléments en 3D sur un squelette,

lequel squelette jouera les animations prévues

par le jeu. Cela requiert de la patience et de la

minutie car chaque partie doit être reliée plus ou moins à un "os" du squelette ou à plusieurs.

Le weighting n'est pas de la création 3D, mais

permet de jouer un peu en prenant des éléments 3D sur des modèles existants et en les "collant" sur un autre modèle. C'est ainsi que j'ai pû coller une queue sur un Chistori et lui donner une armure de clone, ou ajouter des éléménts divers comme des pistolets,des capuches, etc, sur un skin comme celui de Sius (voir la partie SKINS).

Attention, cela reste de la 3D quand même car

on crée un nouveau modèle qu'il faudra, partie

par partie, articuler autour du squelette JKA. C'est assez prenant, pas évident du tout et je suis encore surpris à ce jour d'avoir maîtriser cette technique sans aucune aide, si ce n'est le tutoriel de Psyko (en Anglais). Bravo à Psykalian, qui est le seul que je connaisse à savoir le faire également.

Le skinning est l'art "d'habiller" un modèle 3D.  C'est à dire poser dessus des textures qui vont

représenter ses vêtements, sa peau, ses accessoires, etc...
On peut également choisir, le cas échéant, parmi les différentes possibilités qui sont offertes par le modèle 3D (robe, capuche, accessoires, etc). C'est là également qu'on va attribuer les sons, les icones, déterminer le nombre de modèles etc. Les shaders relèvent du skinning aussi. Il permettront d'affecter aux images différents effets, de brillance, d'ombre ou de reflet par exemple.

Pour résumer, on est obligé de suivre le modèle 3D et ce qu'il vous offre. La question qui revient souvent est "je voudrais le même skin avec une robe". La réponse est "impossible si le modèle ne le prévoit pas", ou cela relève du weighting et croyez-moi, cela est beaucoup plus compliqué dès qu'on touche à la 3D.

Je suggère aux débutant de zapper les parties "optionnelles" car le tuto est complexe s'il rentrent tout de suite dans les détails.

Logiciels

En réalité, vous n'avez besoin de rien d'autre que ce qui est livré avec n'importe quel PC, (paint, winzip, bloc-notes), mais certains logiciels vont considérablement vous faciliter la tâche:

-
MODVIEW : pas indispensable, mais tellement pratique! Il vous permet de visualiser vos skins sous n'importe quelle couture, et de lui faire jouer l'animation du jeu que vous désirez. Vous pourrez également prendre des screenshots avec une forte résolution, bien plus belle (en général) que dans le jeu. Son utilisation est détaillée plus loin.
(
Modview Saber permet de visualiser le modèle avec un sabre)

 

-N'IMPORTE QUEL LOGICIEL permettant de compresser/décompresser des fichiers. Winrar, Winzip, ou encore 7-Zip qui a largement ma préférence. Pour les débutants, PAKSCAPE vous permettra d'ouvrir et de créer des PK3 plus facilement. Le PK3 est un format créé pour JKA, et Pakscape permet de créer des PK3 directement, mais il faut juste savoir qu'un PK3 est un fichier .ZIP dont l'extension a simplement été renommée en .PK3 .


- N'IMPORTE QUEL LOGICIEL DE TRAITEMENT DE TEXTE: J'utilise le bloc-note, bien pratique. Il nous permettra d'indiquer à la machine quelle texture va sur quelle partie, et à placer les shaders, sons, etc. (MAJ: notepad++ paraît plus adapté maintenant)

- N'IMPORTE QUEL LOGICIEL INFO-GRAPHIQUE: Photoshop (pour moi), The Gimp, Photofiltre, et j'en passe. Indispensable à la personnalisation de vos images, il vous permettra de changer les couleurs, coller un symbole, modifier un visage, un vêtement, etc.

II. Les logiciels utiles

Théorie

III. Théorie: la composition d'un skin.pk3

C'est une partie théorique où vous devrez commencer à vous accrocher, mais ça nous sera utile pour plus tard. Nous viendrons après à un cas pratique.
Un PK3 de skin peut se diviser en plusieurs dossiers, dont un seul est réellement indispensable.
Pour être tout à fait complet, je vais prendre un exemple très détaillé.
On va partir d'un skin que je vais nommer "Babar"
Voilà ce qu'un pk3 de skin peut contenir:

Models : c'est le dossier indispensable à toute création de skin. Il contient les images qui vont se positionner sur le modèle 3D, ainsi que toute la partie programmation infographique, c'est à dire qu'on indique aux images sur quelles parties du modèle 3D elles doivent se placer.
Ce dossier peut aussi accueillir les modèles de sabres.
Il se décompose en 2 sous dossiers: le dossier players qui contient le dossier avec le nom du skin qui contient les images. Nous l'appelleront donc "Babar".

Sounds : ben... les sons du skin
Pareil, voici son arborescence indispensable: c'est le dossier misc qui contient les fichiers au format MP3 impératif.

Shaders : Ce dossier contient l'ensemble de la programmation qui déterminera les effets d'ombre, de brillance ainsi que les effets spéciaux du skin. On peut également choisir différents effets pour les icones.
Le principe est simple. En général il suffit d'indiquer grâce à un logiciel de traitement de texte quelle image va se superposer à une autre, et avec quel effet.
Arborescence: facile ----> shaders/babar (babar est un fichiet texte)




gfx : ce dossier contient en réalité des images qui vont servir aux effets spéciaux. Brillance extrème, effets de lumière, effets luminescents, etc. Il peut également servir à créer des animations dans les menus (comme Spanki pour Jedi Customization Plus).

Arborescence:

Le reste des dossiers est dédié aux npcs, bots, etc. Ne vous focalisez pas trop dessus, car ça a peu d'interet en multiplayer. Voici toutefois le détail:

strings : Non les mecs, ce n'est pas la partie dédiée aux sous-vêtements xD. C'est plutot la partie qui attribue aux npcs une langue précise dans les menus.


ext-data : C'est le fichier qui attribue aux npcs la couleur du sabre, l'attitude, s'il se bat en jedi ou sith, etc


botfiles : c'est la personnalité du bot, son style de combat, sa fréquence de parole, etc


scripts : certains bots sont scriptés afin de leur faire réaliser des actions précises dans le jeu.

Pratique

IV. Pratique: étude d'un cas concret

Passons maintenant à la partie qui vous intéressera plus. Nous allons modifier un skin existant.



Etape 1: décompression.

Tout d'abord créez un nouveau dossier là ou vous voulez (sur le bureau par exemple). Vous l'apellerez comme vous le voulez, c'est le nom du skin. J'ai choisi "Babar" Remplacez le par le nom que vous voulez ou gardez le si vous n'êtes par sûrs, pour cet exemple.


- S'il s'agit d'un skin de base, il vous faudra aller dans votre base, puis allez, avec l'aide de winrar, winzip, 7-Zip ou Pakscape, chercher le skin qui vous intéresse dans assets1/models/players et dézippez tout ça vers votre dossier "babar". (extraire vers)

- S'il s'agit d'un skin qui n'est pas de base, il faudra donc le décompresser. Pour cela rien de plus simple: ouvrez le pk3 avec winrar ou winzip et choisissez "extraire vers". Envoyez l'ensemble des dossiers vers votre dossier "babar".
Pakscape peut également effectuer l'opération, il suffit d'ouvrir le pk3 concerné avec pakscape, et de faire glisser les fichiers apparaissant vers votre dossier "babar".

Nous allons donc modifier un skin de base: allez dans base/assets1/models/players et extrayez le dossier "cultist" vers votre dossier "babar".

 





Etape 2: modification des images.


C'est l'étape ou votre sens créatif va pouvoir s'exprimer.
Vous devez donc avoir ceci:

Rendez vous sur le dossier "cultist" et renommez le donc "babar" (sans les guillemets lol).
Ensuite, ouvrez le. A quoi ça sert tous ces machins? xD

Commencez par supprimer le dossier "animevents", il concerne les npc et ne nous intéresse pas.

Vous vous apercevez bien que ce dossier contient les images "à plat" qui seront appliquées sur le modèle 3D.
Il y a donc :
des images "arms" pour les bras
des images 'face" pour le visage
des images "hands" pour les mains
des images "head" pour la tête
des images "torso" pour le torse
des images "legs" pour les jambes

Première remarque importante: AUCUN skin n'est fait de la même manière! Nous avons là besoin de 7 images différentes pour un même skin, mais certains ne sont composés que de trois, deux ou même une seule image!


- On peut voir les "icones" qui apparaitront dans le menu de choix des skins.
- Le fichier model.glm contient le model 3D du skin, il ne faut surtout pas y toucher.
- On viendra plus tard au fichier sounds.


On va faire un peu de ménage pour faire simple.

- On peut voir 4 fichiers .skin, qui commencent par "model_": supprimez en 3 pour ne garder que le model_default.

- Supprimez également les images à l'exeption des fichiers arms, face, hands, head, legs,torso et icon_default.

Bref, arrangez vous pour ne garder que ça:

C'est maintenant que ça devient intéressant. Vous allez devoir modifier les images pour les mettre à votre convenance. Laissez aller votre imagination. Mais attention, la déformation des images, une fois sur le modèle 3D, peut parfois rendre votre travail inésthétique.
Pour le moment on va se contenter de modifier la couleur de la tenue.
Ouvrez votre logiciel d'info-graphisme et si vous le pouvez, modifiez les éléments de la tenue (sauf la peau) en une même couleur. J'ai choisi un joli turquoise .

Ca donne ça chez moi:

Attention! Si vous travaillez avec des calques (sur photoshop par ex), fusionnez impérativement vos images avant de les enregistrer, sinon le jeu plantera carrément! C'est particulièrement vrai pour les icones.



Etape 3: Programmation.


Voilà, on a nos images modifiées. Maintenant il nous faut passer à la programmation, c'est à dire indiquer au système quelle image se place sur quelle partie du skin.

Pour cela, ouvre le fichier model_default avec le bloc-notes.


Notre skin ne s'appelle plus cultist, mais babar. Faites donc édition/remplacer: dans rechercher mettez cultist et remplacez par babar, puis validez en faisant "remplacer tout".
Vous devriez avoir ça:

Vous voyez qu'on peut habiller le skin membre par membre, c'est à dire la bras gauche par exemple, puis le bras droit. On peut ainsi bien personnaliser un skin.
Ne prétez pas attention aux lignes qui contiennent "stormtrooper", cela concerne les "caps", de petites images qui apparaissent aux articulations quand le joueur voit un de ses membres coupé. On peut les créer soi-même mais en l'occurence le système va aller les chercher directement dans le dossier du modèle "stormtrooper" du jeu.

Fermez le bloc-notes; il vous propose automatiquement d'enregistrer vos modifications.


Notez que "default" fait référence automatiquement au dossier parent, c'est à dire Babar. Pour parler clairement, dans le jeu, vous pourrez taper /model babar pour revêtir le skin.

​

Pour information, vous n'êtes pas obligés de préciser le format du fichier image que vous voulez utiliser. Par défaut, le .tga est utilisé par Raven pour différentes raisons, mais je m'en suis moi-même rarement servi. Donc pour résumer si vous laissez babar/face (par exemple) sans préciser l'extension ça fonctionnera tout aussi bien.


OPTIONNEL: On peut fort bien s'arreter là, si on ne veut qu'un seul modèle. Mais si vous voulez une autre couleur, il faut recommencer le processus. Prenons le mauve par exemple. Retouchez vos images avec la couleur désirée et enregistrez-les sous arms_mauve, face_mauve, head_mauve etc. Vous pouvez aussi modifier votre icon_default en mauve et l'enregistrer sous icon_mauve

Ce qui devrait vous donner ceci:


Il va donc falloir effectuer une nouvelle programmation des images. Copiez le fichier model_default, collez le et renommez le model_mauve.
Puis ouvrez-le et ajoutez _mauve à tous les fichiers que vous avez modifiés. Ca donne ça:

Astuce: Prévoyez toujours un model_blue et _red, pour les combats par équipe, avec les icones correspondants. Ils viendront se placer automatiquement dans les menus par équipe.




ETAPE 4 (Optionnelle): LES SONS .

Ouvrez le fichier "sounds": le nom "cultist1" apparait. Ca veut dire que le skin prendra automatiquement les sons appartenant au skin de base désigné. Ca marche avec tous les skins de base.
Mais si vous voulez personnaliser vos sons , remplacez "cultist1" par "babar" et créez un dossier "sound" dans votre dossier général "babar" en suivant l'arborescence montrée en partie théorique. Placez vos sons AU FORMAT MP3 dans le dossier "misc" comme suit:

En ouvrant un skin existant, vous verrez sans peine à quoi ils correspondent: douleur, provocation, mort; etc
Ou trouver des sons? je me sers souvent de sons de jeux vidéos que j'ai pour les transposer dans JA, morrowind par exemple.

Dernière chose: la lettre "m" dans le fichier sound veut dire "male". Ca correspond aux petits sons du genre "attérir" ou "sauter", etc. remplacez le "m" par "f" pour un skin féminin.





ETAPE 5 (optionnelle): Modview


Pour ceux qui ont choisi de télécharger modview, il est temps d'installer le logiciel. Faites le dans votre base, un icône viendra automatiquement se placer.
Puis allez dans babar/models/players/babar et copiez le dossier "babar" qui contient les images et les fichiers.skin. rendez vous dans votre base: vous devez avoir déjà un dossier "models" puis un dossier "players". Collez-y votre dossier "babar".

S'il ne s'y trouve pas déjà, extrayez le fichier "_humanoid" des assets1 et mettez le également dans votre dossier "players". C'est le fichier qui comporte le squelette de JKA.
Lancez modview, puis faites "open" et allez chercher votre dossier babar dans votre base. Ouvrez le fichier qui s'y trouve sans tenir compte des éventuels messages d'erreur. Votre skin devrait apparaître.
Vous pouvez le bouger avec la souris, zoomer, etc
A gauche, dans le model.glm, vous pourrez voir "skins available". Si vous avez plusieurs modèles, vous pourrez les visionner à partir de là (le modèle mauve par exemple).

La partie "séquences" peut faire jouer à votre skin n'importe quelle animation du jeu.
Modview est très pratique pour voir en direct l'avancée de vos modifications. Je travaille souvent directement dans le dossier players de modview et j'utilise l'option "refresh textures" pour voir tout de suite le résultat. En revanche si vous modifiez la programmation de vos jpeg ou si vous créez un nouveau model, il vous faudra fermer puis réouvrir modview pour voir le résultat.

Vous pouvez à tout moment faire un screen avec maj+c, il viendra se placer automatiquement dans c: en général. Pratique pour réaliser de nouveaux icones, et encore plus pour les skins personalisables.

Modview peut lire tous les skins, mais si vous n'avez que le fichier _humanoid de JKA dans votre dossier players, il ne pourra lire que ceux qui sont compatibles avec JKA, c'est à dire avec 56 "bones" (des os). Pour palier à ce problème il faut se procurer le dossier "_humanoid" de JK2, soit en l'extrayant si vous avez le jeu, soit en le téléchargeant
ICI (à dézipper).
Renommez le jk2_humanoid pour ne pas avoir deux dossiers avec le même nom, et placez le dans votre dossier models/players. Et là c'est simple, quand vous voulez lire un skin de JK2 il faut juste renommer l'autre fichier jka_humanoid (par exemple) et votre fichier jk2_humanoid en _humanoid. Et Inversement. C'est clair?

Vous pouvez extraire n'importe quel model des assets et les visionner avec modview. Ca inclue les véhicules, les npc, les armes (models/weapons2).

Modview Saber permet de visualiser le modèle avec un sabre et surtout avec une lame, très pratique pour réaliser des jolis screens.

Astuce: alt+souris gauche vous permettra de déplacer le model dans les 4 directions; pratique pour les screenshots.

​

Astuce 2: Marre des messages d'erreur sous modview? Ils concernent surtout la texture stormtrooper/caps. Extrayez des assets le dossier players/models/stormtrooper et mettez-le dans votre base, car modview ne peut pas trouver une texture compressée. Ou sinon collez la texture 'caps' directement dans votre model et précisez dans le fichier 'skin' le chemin vers celle-ci pour chacun des caps.


ETAPE 6 (optionnelle): Les shaders

Les shaders sont des scripts qui indiquent à une image ou plusieurs images comment se comporter (tranparence, superposition, reflet, etc)
Par exemple, il peut s'agir de glisser une image sous une autre, dans le but de donner un effet de reflet ou de brillance sur le skin.
Pour commencer on va superposer deux fois la même image.

Dans votre dossier général "babar", créez un dossier "shaders" puis ouvrez le bloc note et copiez-y ceci:

models/players/joueur/image
{
{
map models/players/joueur/image
blendFunc GL_ONE GL_ZERO
rgbGen lightingDiffuse
}
{
map models/players/joueur/image
blendFunc GL_SRC_ALPHA GL_ONE
detail
alphaGen lightingSpecular
}
}

Bien sur, il nous faut mettre le nom du joueur, remplacez donc "joueur" par babar et "image par "arms" par exemple. Copiez le tout et recommencez l'opération pour chaque image. Ca devrait donner ça:

Etcaetera

Vous pouvez aussi, si vous avez fait le model_mauve, copier le tout, coller et remplacer les noms des images (arms_mauve, etc).

C'est une forme de shader assez répandue, mais en réalité pas très réaliste, car l'effet est uniforme. Ce shader ne prend pas en compte tout ce qui est noir alors l'idéal est de trafiquer l'image d'origine pour ne laisser que des traces de blanc par ci par là et donner de légers effets. Voilà un exemple avec le fichier "torso" (réduit pour le tuto).

C'est une image qu'on pourrait appeler "torso2" et ça donnerait donc ça au niveau de la programmation:

models/players/babar/torso
{
{
map models/players/babar/torso
blendFunc GL_ONE GL_ZERO
rgbGen lightingDiffuse
}
{
map models/players/babar/torso2
blendFunc GL_SRC_ALPHA GL_ONE
detail
alphaGen lightingSpecular
}
}


Bref, une fois vos shaders écrits, il suffit d'enregistrer le fichier sous babar.shader

Les shaders sont très nombreux et variés, selon l'effet voulu. On peut citer le "glow" qui fait carrément un effet de lumière, ou l'effet de transparence, ou encore les effets spéciaux, du style des éclairs qui parcourent tout le corps ou une partie. Demandez- moi pour plus de détails.




ETAPE 7 : Compilation


Voilà, notre skin est prêt à être compilé. Ouvrez Pakscape et choisissez "new". Faites glisser dans ce nouveau fichier votre dossier "models" (et éventuellemnt les dossiers shaders et sounds, etc)
Ca Donne ça:

Pour finir, faites "files", puis "save as" et entrez "babar.pk3". Enregistrez le directement dans votre base. N'oubliez surtout pas le .pk3, c'est le format impératif pour tout fichier JA!

Bien sûr, testez votre skin online, pour voir s'il fonctionne. Vous devriez trouver les icones dans le choix de skins. Sinon tapez model/barbar ou /model babar/mauve.



LES SKINS CUSTOMISABLES


Rien de plus simple si vous avez survécu aux étapes précédentes.

Un skin, dans le menu des skins customisables, vous l'aurez remarqué, est composé de 3 parties: la tête, le torse, et les jambes.

Pour créer un skin customisable, nous allons donc avoir besoin de 3 fichiers .skin . C'est comme des fichiers "model_". Nous avons aussi besoin de les numéroter.
On va reprendre notre skin "babar", avec ses deux models, _default et _mauve.

Pour la tête , il nous faut donc deux fichiers .skin. : head_01 et head_02
Faites une copie de model_default. Il va nous falloir enlever tout ce qui ne concerne pas la tête. Pour cela, effacez tout simplement les parties que vous ne voulez pas voir quand vous selectionnerez une tête.

Compris? Copiez le fichier et renommez le head_02 en modifiant le nom des images en _mauve, etc

Donc ça c'est pour "head", ensuite vous aurez besoin de fichiers torso_01/02 et lower_01/02 suivant le même principe.

Voilà un exemple plus parlant avec les 3 fichiers superposés:

Vous remarquerez que j'ai mis tous les "caps" dans le même fichier, car finalement, peu importe leur emplacement du moment qu'ils sont là.

L'essentiel, quand vous aurez sélectionner une tête, un torse, et des jambes, est que toutes les parties du models soient présentes, soit dans "head", soit dans "torso", soit dans "lower", même en *off. Si vous en avez oublié une, ça peut être très génant.

Maintenant, pour choisir ses vêtements, le joueur a besoin d'avoir un aperçu. C'est le role des icones qui vont apparaitre dans le menu personnalisable, et modview va bien nous aider pour ça.
Ouvrez modview et en regardant dans le skin babar, vous verrez vos fichiers head_01 , etc

il vous suffit de screener avec maj+c, puis de redimensionner les images. Les icones doivent être carrés, et avoir 256, 512 ou 1024 de côté. Faites correspondre les icones aux modèles en les nommant icon_head_01, icon_head_02 etc.


Astuce: pour les screens de modview, en réalité le plus simple c'est de faire un fichier skin "model_test", avec TOUTES les parties en *off.
En le sélectionnant rien ne s'affiche, normal. Mais ensuite, en sélectionnant la partie qui vous intéresse (head_01, etc), elle seule apparait du coup.

Pour que le système reconnaisse le skin comme un skin personnalisable, il faut juste ajouter un fichier .txt.
Ouvrez le bloc-notes et, pour faire simple, copiez ceci:

//colorshadername {action block}

*white
{
setcvar ui_char_color_red 255
setcvar ui_char_color_green 255
setcvar ui_char_color_blue 255
}

Enregistrez le fichier sous "playerchoice"

Voilà ce que vous devriez avoir au final:

Conclusion

V. Conclusion

        Le tuto est assez complexe à réaliser et j'espère avoir été clair. J'ai essayé d'être assez complet mais je ne peux pas détailler tous les aspects, ça ferait 30 pages XD, et c'est déjà assez compliqué comme ça.

       Pour résumer, sachez juste que je n'ai moi-même commencé avec aucun tuto. J'ai juste dézippé un skin, un jour, et j'ai appris tout seul au fur et à mesure. Je vous suggère d'en faire autant car c'est bien comme cela qu'on apprend le mieux et le plus vite.
Pour le reste, il y a une grosse part d'imagination, de sens artistique et d'inventivité. Même si aucun skin n'est fait pareil, je prend souvent des images d'un skin pour les adapter sur un autre, car l'image me plaît.

​

        Ayez toujours une idée précise de ce que vous voulez faire, et assurez-vous d'avoir un niveau suffisant en infographisme car c'est la plus grosse partie.

       Mettez en valeur votre travail! Vous avez pû voir les captures d'écran et les montages que j'ai réalisés pour présenter chacune de mes réalisations. Vous pouvez avoir le meilleur skin du monde, si personne ne peut en avoir un aperçu avant d'être In Game il risque fort de ne pas rencontrer le succès escompté. Modview vous aidera grandement pour cela.


Voilà, à vous de jouer, les jedis! Je reste dans le coin pour vos questions.

bottom of page