Est-il possible de modifier ou retoucher les personnages de half-life et avec quel logiciel ?
Oui, c'est tout à fait possible. Tu peux le faire avec Half Life Model Viewer,qui te permet d'extraire les textures en format .bmp pour pouvoir les modifiers avec un logiciel de retouche d'images, puis de les réimporter.
Notions de base pour les modèles de Half-Life 2.
En passant de Half-Life vers Half-Life 2, les modèles ont largement évolué. Non seulement ils sont plus détaillés, mais leur mise en oeuvre est plus complexe.
Si pour Half-Life un modèle nécessitait environ 700-800 polygones, ceux de Half-Life 2 peuvent en utilise de 5000 à 8000.
Le travail de modélisation est donc bien plus long et plus compliqué, de même le squelette des modèles est devenu également plus détaillé, les mains ont des doigts séparés, la colonne vertébrale est composée de plusieurs éléments, mais surtout de nouveau éléments d'aide ont été ajoutés.
Ces élément sont interpolés à partir des os du squelette et d'un fichier de paramètre ValveBiped.vrd
Ils permettent de simuler les mouvements musclulaires, ces Helper Bones sont directement pris en charge par le moteur du jeu.
La liaison entre le modèle et le squelette a également été améliorée, pour Half-Life un sommet ne pouvait être lié qu'à un seul os du squelette. Pour Half-Life 2 ont peut répartir les poids des os sur un sommet, les déformations seront alors bien plus souples aux articulations.
Comme le nouveau moteur prend en charge les mouvement et la physique complexe avec simulation des collisions et des poids des objets, il faut bien sûr en tenir compte lorsqu'on construit un modèle.
Le moteur physique nécessite un modèle simplifié, c'est indispensable car avec des modèle composés de milliers de polygones, la gestion du modèle physique deviendrait trop gourmande en ressources.
On va donc devoir construire un modèle très simple composés de formes basiques comme des cylindres, des sphères ou des polyèdres convexes. Ces élements vont simuler les membres et le corps du modèle, on va utiliser au maximum 16 éléments pour tout le corps.
Une autre chose importante, c'est ce qu'on appelle le LOD, c'est le niveau de détail. Ca signifie que chaque modèle sera composé de plusieurs modèles de référence qui auront un nombre de polygones de plus en plus petit.
Un modèle qui doit être utilisé souvent avec un grand nombre de personnages présents dans l'image, devra impérativement posséder plusieurs LOD. Par exemple le policier de HL2 a en tout 6 modèles dont le plus détaillé a 4000 polygones et le plus simple 250.
Une autre nouveauté, c'est la manière dont les textures du modèle sont enregistrées. On n'a plus des texture incorporées au fichier du modèles, mais elle feront partie du dossier général des textures et pourront recevoir toutes sortes de traitements spéciaux grace aux shaders qui définissent la manière dont la texture est rendue pour l'affichage.
Un autre chose qui sera très utile, c'est la faculté de disposer d'animations standard qu'on pourra utiliser sans avoir à refaire les nombreuses animations nécessaire. On va également pouvoir utiliser un effet de mélange des animation dans le moteur du jeu. Par exemple, les animation de marche peuvent être mélangées pour avoir une interpolation correspondant à n'importe quelle orientation. Plus d'animation fixe pour avancer, une autre pour glisser sur le côté et une autre pour reculer. On va simplement définir des poses et le moteur du jeu va interpoler les positions intermédiaires et la rapidité d'animation selon la vitesse.
Spécification pour un modèle :
Un modèle de type humain sera composé de 4000 à 8000 polygones, on peut aller plus haut, mais sans voir de nette différence et ça va inutilement surcharger le moteur du jeu. De plus en utilisant le bump mapping sur les textures on peu simuler un bien plus grand nombre de détails.
On va appliquer les textures à ce modèle, pour la taille on peut aller jusqu'à 2048x2048, mais c'est fortement déconseillé, restez raisonnable ne dépassez pas une taille de 1024x1024. On peut très bien utiliser plusieurs images TGA bien sur, mais encore une fois essayez de limiter au maximum la taille totale. Il faut éviter que les modèles utilisent trop de mémoire pour les textures, sinon on va pénaliser le moteur du jeu.
On va devoir réaliser plusieur modèles avec un nombre décroissant de polygones, ce sont les LOD. Il en faut au moins 3, mais si on veut avoir un bon modèle de qualité, il en faudra 6.
On va procéder en simplifiant le modèle de plus en plus, on élimine les doigts séparés, on simplifie le visage, on élimine tous les reliefs qui ne se verront pas de loin etc...
Avec Softimage XSI 4.2 ou ModTool, on bénéficie d'un outil de modelage très puissant qui permet de faire ce genre de chose rapidement sans avoir à remapper les textures ou redéfinir l'attribution des sommets au os du squelette.
On va ensuite lier le modèle au squelette et ajuster les poids des os sur les sommets, on peut très bien attribuer plusieurs os à un sommet.
Comme pour Half-Life 1 on va ensuite exporter un modèle de référence au format SMD. Il est constitué d'une seule pose avec les liaisons des sommets aux os et les coordonnées de textures.
Pour des question d'ordre et de logique on va le mommer par exemple bidule_ref.smd.
On va ensuite créer les modèles de LOD en simplifiant le modèle en éliminant les arêtes pour diminuer le nombre de polygones.
Pour les LOD, on va éliminer le squelette pour l'exportation vers le format smd, on n'exporte que le modèle.
On va créer 6 modèles, par exemple pour le modèle police de HL2 on a :
police_ref.smd : 3847 polygones
police_LOD1.smd : 3232
police_LOD2.smd : 2536
police_LOD3.smd : 1652
police_LOD4.smd : 948
police_LOD5.smd : 284
police_SHADOW.smd : 662 (utilisé pour les ombres)
Pour créer facilement ces LODs, on va utiliser une fonction de XSi qui va automatiquement optimiser le modèle et réduire le nombre de polygones. On ouvre la barre d'outil Model, on va dans Modify puis Poly.Mesh et on choisit Polygon Reduction.

Pour le moteur physique on va devoir créer un modèle simplifié composé d'éléments comme des cylindres pour les membre, une sphère pour la tête, deux blocs pour le corps. On va avoir en tout au plus 16 éléments qu'on va lier au squelette. Chaque élement doit être lié à un seul os, pas de mélange de poids dans ce cas.
On va alors exporter un modèle de référence qu'on va nommer ragdoll.smd
On va ensuite exporter un fichier d'animation composé d'une simple pose qu'on va nommer ragdoll_pose.smd.
Avec ces trois fichiers smd on peut déjà compiler un modèle en utilisant les animations d'un autre modèle humain utilisant le même squelette et le tester dans hlmv ou dans la mod que vous dévelopez si vous avez déjà le code nécessaire.
Pour les textures, il va falloir utiliser la même méthode que pour les textures des maps, il faudra respecter la structure nécessaire au SDK pour que ça marche.
Source : http://www.photo-sport.ch/diverts/xsi/notions.htm
Télécharger : Half Life Model Viewer.