TOMB-RAIDER-EDITOR.com

image
image
image



Chapitre 4: Animations avancées : commandes d’animations et StateIDs.

Il est temps maintenant d’apprendre à quoi servent les boutons rouges de la barre supérieure, ainsi que le champ numérique StateID près du bas.

Animation Commands
Animation commands peut être utilisé pour effectuer les fonctions ci-dessous, pendant l’exécution d’une animation donnée. Chaque animation peut avoir ses propres commandes. Vous pouvez y accéder en appuyant sur le bouton Edit Anim Commands (le bouton avec plein de 0 et de 1) de la barre d’outils supérieure. Le menu déroulant sur la gauche donne une fonction à sélectionner et les champs sur la droite changent selon la fonction choisie. Les fonctions possibles sont les suivantes:

1 – Set position – une fois l’animation terminée, cela permet de déplacer l’objet selon les valeurs indiquées dans les trois champs, qui correspondent respectivement aux axes x, y et z. Les valeurs sont les mêmes que celles utilisées lorsque l’on utilise le bouton Move sur l’objet, sauf qu’elles sont multipliées par 1000. Ce qui signifie que 250 équivaut à un clic.



NOTE : tout comme pour déplacer des objets, l’axe des y est à l’envers sous le moteur de jeu. Par exemple, pour déplacer un objet de 4 clics vers le haut, vous devrez utiliser la commande set position (0,-1000,0).

IMPORTANT: les sauvegardes en cours de jeu ne sauvent pas les événements survenus sur les objets utilisant les commandes set position, sauf ceux concernant Lara, les baddies, Von Croy ou le Guide. Aussi, si par exemple vous faites un mur de piques qui utilise cette commande, celui-ci sera replacé dans sa position initiale lorsque le niveau est relancé.

2 – Grab position – concerne uniquement l’objet LARA. Ceci paramètre la courbe de saut de Lara, initialisée lorsque l’animation est terminée. Les deux champs correspondent respectivement à la hauteur (axe des y) et la distance (axe des z). Là encore, l’axe des y est à l’envers, donc normalement la hauteur est une valeur négative.

Il est difficile de déterminer comment fonctionnent exactement les valeurs pour la hauteur. –100 (moins 100) correspond à 6 clics de haut et –110 (moins 110) à 7 clics de haut, ces valeurs étant utilisées pour les sauts habituels de Lara. Mais 10 n’est pas forcément équivalent à 1 clic. Utiliser une valeur de –70 permet toujours à Lara de s’agripper à des rebords situés 4 clics au-dessus d’elle, contrairement à ce à quoi l’on peut s’attendre, c’est à dire 3 clics de haut si l’on en croit les valeurs indiquées ci-dessus. Ces valeurs doivent être liées par une fonction mathématique du second degré ou plus, ce qui signifie qu’au fur et à mesure que l’on ajoute des clics au-dessus de Lara, il n’y aurait besoin que de valeurs de plus en plus petites pour atteindre le clic suivant. Quoi qu’il en soit, il faudra faire des essais avec cette valeur pour atteindre la hauteur désirée en terme de clics.

Pour la distance, la valeur 25 équivaut à un carré d’un gouffre que Lara peut franchir si elle attrape le rebord opposé. 50 est utilisé pour ses sauts tendus, lesquels couvrent 2 carrés, et 75 est utilisé pour ses sauts avec élan couvrant 3 carrés.

Veillez à ce que l’animation utilisant cette commande possède le bon stateID, comme indiqué dans la partie stateID.

3 - Command 3 (inconnue) - Cette commande est en fait connue, du moins pour l’objet Lara. Le moteur de jeu semble garder trace du fait que Lara dégaine ou non, mais parfois cet état comporte des bugs. En utilisant cette commande, l’état des armes est réinitialisé une fois l’animation terminée, de façon à ce qu’elle puisse de nouveau dégainer. Cette commande est absente de plusieurs animations TR4, comme celles consistant à ramasser un objet sur un piédestal, à sauter sur un poteau, à lâcher le poteau et à desceller un objet d’un mur. Vous remarquerez que lorsque vous utilisez ces animations en jouant, Lara ne peut plus s’agripper aux rebords, ramper, etc… parce que le jeu pense que ses armes sont dégainées (ceci a été réglé plus tard sous TRC). Aussi, si votre animation comporte ce bug, ajoutez la commande 3 pour y remédier.

4 – Die – Cette commande concerne l’animation “death” des ennemis (baddies). Bizarrement, elle est également utilisée pour les switches, pour activer des triggers “switch” lorsque l’animation se termine.

5 - Play Sound – ceci est utilisé pour faire entendre des sons lorsqu’un frame donné de l’animation est joué. Le premier champ indique quel frame fait déclencher le son. Le second champ est un menu déroulant comportant les sons disponibles pour l’objet. Le troisième champ est également un menu déroulant avec les options suivantes :

A – Always - ce son est toujours joué. Vous devez choisir ceci pour tout objet autre que Lara.
B – On Land – Ce son n’est joué que lorsque Lara est sur la terre ferme.
C – On Water – Ce son n’est joué que lorsque Lara marche/barbote dans l’eau.

NOTE 1: Si le son que vous souhaitez utiliser n’est pas disponible dans la liste, ajoutez-le en allant dans le menu Sound de la fenêtre principale de l’éditeur et en sélectionnant “add sounds”. Cochez le(s) son(s) souhaité(s) puis pressez “Add Selected”.

NOTE 2: Les sons attribués à des objets autres que certains programmés en dur pour cela (ex: les “underwater door” et “underwater switch”) ne pourront pas être joués si l’objet est utilisé sous l’eau (ex une porte normale).

6. Play Effect – ceci est utilisé pour exécuter un effet spécial lorsqu'un certain frame de l'animation est joué. Le premier champ indique quel frame joue l'effet. Le deuxième champ est à la fois un champ texte et un menu déroulant, de façon à ce que vous puissiez soit sélectionner depuis les effets listés, soit saisir votre propre numéro d'effet personnalisé.

Astuce : Un numéro d'effet personnalisé auquel il faut faire attention est le numéro 12, qui est le même que celui de la fonction command3 noté ci-dessus, sauf qu'il s'exécute au milieu de l'animation lorsque le frame donné est joué. C'est utile pour les animations de Lara lorsqu'elle se hisse.

Astuce : les deux derniers effets - Play Step Sound for on land or on water – sont utilisés pour les sons de textures (métal, sable, boue, etc...) lorsque Lara est dessus, sous réserve d'avoir spécifié ces sons sous l'éditeur de niveaux.

StateIDs

Si vous avez jeté un oeil sur les animations de n'importe quel objet, vous aurez certainement remarqué que chacune a une valeur de StateID qui lui est attribuée. Un StateID est une valeur qui demande au moteur de jeu de répondre aux animations de l'objet d'une certaine manière.

Pour l'objet LARA, un StateID permet d'effectuer plusieurs choses, telles que:

1. Permettre à Lara de faire ce qu'elle fait - s'applique à à peu près tous les StateIDs, le StateID indique au moteur de jeu ce que Lara fait, de manière à ce qu'il lui permette de le faire. Par exemple, le StateID 71 (accroupi) et les StateIDs 80, 81 et 84 à 88 (manoeuvres pour ramper) permettent à Lara d'entrer dans des passages étroits. Le fait de tenter d'utiliser un StateID différent dans un passage à ramper fait bugger Lara et elle reste coincée debout, à travers le plafond.

2. Manipuler la caméra - Certains StateIDs change l'angle de la caméra afin de rendre les choses intéressantes. Par exemple, le StateID 25 pour le saut-arrière de Lara place la caméra face à Lara avec un angle partant de l'avant et non de l'arrière, et les StateIDs 36 et 37 permettant de pousser et tirer des blocs font déplacer la caméra vers le carré situé sur la gauche (si possible) pour pouvoir observer Lara. Lorsque vous faites des animations personnalisées, vous pouvez considérer le fait de manipuler les StateIDS pour créer des angles de caméra intéressants pour vos animations, du moment qu'ils n'entrent pas en conflit avec d'autres paramétrages de StateIDs.

3. Paramétrer la direction de Lara pour les sauts - Les StateIDs suivants concernent les sauts de Lara :3 pour un saut vers l'avant, 25 pour un saut vers l'arrière, 26 pour un saut sur la droite, 27 pour un saut vers la gauche et 28 pour un saut en l'air. Chaque saut possède deux animations : la seconde est le saut en lui-même alors que la première sert à paramétrer la commande servant à s'agripper pour créer la courbe du saut.

4. Détermine la manière dont Lara agit avec l'environnement - La plupart des StateIDs ont des comportements codés en dur qui se produisent lorsque Lara effectue certaines choses pendant un certain StateID. Par exemple, le StateID 1 pour Lara en train de courir, lui permet de tomber depuis des rebords, alors que les StateIDs 0 (marcher), 2 (rester immobile), 16 (marcher en arrière) et 21-22 (marcher latéralement) ne le lui permettent pas.

5. Changements de StateIDs - ceux-ci sont expliqués en détail ci-dessous. Certains StateIDs n'existent que pour les changements et non pour des animations réelles. Un exemple concerne le StateID 68 : lorsque Lara passe d'un saut avant à un saut arrière ou vice-versa. Dans la plupart des autres cas, le StateID associé avec l'animation cible est utilisé pour le changement.

Pour d'autres objets tels que les ennemis ou les portes, le principe des StateIDs est le même, excepté le fait que les points 2 et 3 ci-dessus ne s'appliquent jamais. Certains objets (tels que ceux des slots ANIMATING) n'utilisent pas de StateIDs différents, la valeur est donc laissée à 0.

Une liste des StateIDs de Lara des TR 1 à 4 (+ ceux de TR5 ajoutés par Jesse en avril 2009) est fournie à la fin de ce chapitre.

Changements de StateIDs

Comme indiqué ci-dessus, certaines restrictions pendant les animations sont codées en dur, mais d'autres non. Il semble que l'objet et le moteur de jeu tiennent en quelque sorte une "conversation" en utilisant les StateIDs. Vous savez maintenant comment l'objet communique au moteur de jeu avec ses StateIDs. Cependant, le moteur de jeu envoie aussi ses propres StateIDs pour que l'objet lui réponde. Ceci peut se produire pour certains changements d'environnement autour de l'objet, ainsi que pour l'objet LARA pour presque tous les boutons pressés par le joueur. Les changements de StateIDs sont des groupes de valeurs permettant à l'objet de répondre à ces nouveaux StateIDs au moyen de paramètres spécifiques. Chaque animation peut avoir son propre groupe de changements de StateIDs. Vous pouvez les voir sous l'éditeur d'animations de Wadmerger en cliquant sur le bouton "State Change Editor" (bouton "1>2") dans la barre d'outils supérieure. Chaque changement de StateID est composé de 5 valeurs :

1. StateID - Paramètre le StateID du moteur de jeu auquel l'objet doit répondre. Voir le paragraphe IMPORTANT ci-dessous.

2. Low frame - Fixe la limite inférieure de la série de frames à l'intérieur de laquelle l'objet peut répondre au nouveau StateID. Voir la note * ci-dessous.

3. High frame - Fixe la limite supérieure de la série de frames à l'intérieur de laquelle l'objet peut répondre au nouveau StateID. Voir la note * ci-dessous.

4. Next animation - Animation à utiliser par l'objet lorsqu'il répond.

5. Next frame - Le frame par lequel commencer dans la nouvelle animation.

IMPORTANT: Le StateID courant de l'objet constitue une restriction par rapport aux StateIDs auxquels l'objet peut répondre. Vous ne pouvez pas simplement fabriquer vos propres réponses. Par exemple, avec l'objet LARA, presser la touche "sprint" en rampant ne génèrera aucun StateID depuis le moteur, aussi, faire un changement de StateID avec le StateID 73 pour l'animation "s'accroupir" ne donnera strictement rien. Vous auriez à éditer le moteur de jeu pour faire fonctionner cela.

Certaines réponses sont même codées en dur pour seulement certains slots d'animations. Par exemple, vous remarquerez que lorsque Lara saute par§dessus un bloc de 2 clics, elle peut soit commencer en courant, soit poser le pied droit par terre. Cette animation est en StateID 2 mais hélas, si vous essayez de fabriquer une autre animation pour le StateID 2 lui permettant de se mettre à courir avec un changement de StateID pour passer au StateID 1, cela ne fonctionnera pas. Les animations 96 et 150 - s'agripper à des rebords minces ou épais, ou s'accrocher au plafond (monkeyswing) - semblent également avoir des réponses codées en dur. Elles restent identiques même si vous les effacez. A cause de telles choses, vous devez garder l'esprit ouvert et accepter le fait qu'un changement de StateID ne puisse fonctionner de la façon dont vous l'aviez envisagé.

Cependant, il y a certaines "réponses" non utilisées pour certains StateIDs et/ou slots d'animations. En l'occurence, l'animation "immobile", anim n° 103 et StateID 2, peuvent répondre au StateID 73 lorsque le joueur presse la touche "sprint" en premier, avant de presser la touche "avancer". Notez que lorsque vous essayez cette combinaison de touches sous n'importe quel niveau de TR3 à TR5, vous n'avez pas de réaction de la part de Lara, elle est bloquée car ce changemnt de StateID est manquant. Cela peut donc vcaloir le coup de sauter d'un StateID à l'autre même si vous ne l'avez jamais observé auparavant. Ne vous attendez pas à ce qu'il fonctionne, mais si c'est le cas, alors vous aurez découvert un autre lien entre StateIDs.

* Les paramètres de frame inférieur et supérieur couvrent généralement l'ensemble des frames d'une animation, mais ils s'appliquent plus particulièrement à toute animation lorsqu'un objet change de pied, comme en marchant ou en courant. Avec ces paramètres, vous pouvez vous assurer que, par exemple, lorsque l'animation de l'objet se trouve dans les frames avec le pied gauche au sol, alors l'animation suivante est celle commençant par le pied gauche, et non celle commençant par le pied droit. Cela permet alors aux animations d'être plus fluides.

Prise en main.

Lorsque vous envisagez de manipuler des StateIDs ou des changements de StateIDs, la meilleure façon de commencer est d'observer les StateIDs déjà existants et les changements de StateIDs des animations de l'objet, afin de voir ce que font les StateIDs et lesquels d'entre eux conduit aus nouveaux StateIDs. Il est particulièrement prudent de penser que les passages d'un StateID à un autre qui sont d'ores et déjà utilisés soient les seuls possibles, mais là encore, il peut y avoir des liens non utilisés que vous pouvez découvrir.

Si vous comptez faire des animations pour votre projet, vous devez arrêter de travailler dessus jusqu'à ce que vous sachiez que votre paramétrage va fonctionner. Faites de simples animations-tests avec vos StateIDs et changements de StateIDs et testez-les dans le jeu. Vous devez être capable d'expérimenter par vous-même afin d'assembler un paramétrage qui fonctionne, si possible pour ce que vous comptez réaliser.

<<<---Précédente  Sommaire  Suivante--->>>



Retour
image
Mentions Légales    ©Copyright 2007-2009© tomb-raider-editor.com Tous droits réservés
Dernière mise à jour : 02/05/2009