ZeDen.net

 
 
Dans le cadre du Sommet International du Jeu de Montréal 2007, nous publions une série d'articles résumant le propos des conférences auxquelles nous avons assisté.

sommetinternationaldujeudemontreal2007_016.jpg

Havok — Combler le vide créatif (séminaire)

Composition de performances de personnages avec l'outil Havok Behavior

Parmi les conférenciers, du sommet, il y avait des commanditaires. Jeff Yates, Vice-Président des produits chez Havok, était là pour expliquer les avantages de leur produit Havok Behavior. Sur ZeDen, on connaît davantage leur moteur physique intégré dans les jeux, et à peu près pas du tout les outils qui fonctionnent derrière ce moteur. C'était l'occasion de parfaire à ce manque. Le cycle de développement de Havok prévoit la version 6 pour le deuxième trimestre 2008, et l'évolution générale est assez rapide : de nouvelles versions importantes paraissent au moins chaque année. Ils travaillent de façon constante à l'optimisation de leurs outils pour le multi-plateforme.


sommetinternationaldujeudemontreal2007_008.jpgHavok Behavior, c'est un outil de création d'animations destiné aux studios de développement de jeux. Il permet aux concepteurs de créer des animations et d'augmenter la productivité des animateurs. La force de cet outil, et du moteur physique Havok, c'est la possibilité de mixer des animations classiques, les animations de mouvement produites par des animateurs et la physique dynamique.

Pour gérer la transition entre les animations, une machine d'état est utilisée. Une machine d'état, ça permet par exemple de définir plusieurs situations : marcher, courir, tomber, se lever et rester debout (etc.). La machine d'état permet de déterminer quelles sont les transitions possibles à partir d'un état donné : par exemple, on peut marcher, puis courir, et puis revenir à la marche. Alors qu'on marche, on peut tomber, mais on peut aussi tomber alors qu'on court. Cela dit, on ne peut pas tomber si on est couché sur le sol! Et à l'inverse, on ne peut pas se relever si on n’est pas tombé au préalable.

sommetinternationaldujeudemontreal2007_009.jpgOutre ce fonctionnement par état, le moteur Havok calcule la transition entre deux animations. Par exemple, entre la marche et la course, il y a une brève transition, durant laquelle les pieds doivent changer de position : la différence entre l'état de marche au moment de passer à la course et la position de course est calculée dynamiquement par Havok, ce qui crée une transition plutôt naturelle. Pour que cette automatisation soit possible, le moteur Havok utilise le squelette et les axes de rotation de l'ossature, de manière à restreindre la transition à un mouvement physiquement crédible. Jeff montre un exemple en direct avec trois modes de course : courir tout droit, courir en cercle vers la gauche, puis vers la droite. Et effectivement, le mouvement des pieds fonctionne très bien.

Dans la suite de la présentation, le conférencier introduit le blending (mixage) d'animations. Concrètement, ça signifie calculer une transition graduelle entre deux animations. Ceci permet, à partir d'une animation de marche, et d'une animation de course, de créer différentes vitesses de course à pied, de façon tout à fait réaliste et en seulement quelques minutes. Jeff branche une manette au PC de démonstration, et avec la détection de sensibilité du Joystick, est capable de contrôler le personnage. Plus il presse fort sur le joystick, plus le personnage court vite. L'accélération se fait graduellement, et la décélération aussi. Cette synchronisation est totalement rendue automatique par le moteur.

sommetinternationaldujeudemontreal2007_017.jpgLa conférence se poursuit avec la présentation de l'arbre d'états, qui permet de modéliser les transitions d'états de façon plus complexe : passer de la marche à la course, tout en tournant, tantôt à gauche, tantôt en allant tout droit, puis en tournant à droite. La puissance de ces outils pour l'animation de personnages semble donc bien réelle. Jeff explique qu'il est aussi tout à fait possible de séparer les états et les transitions d'état pour plusieurs parties du corps; par exemple, le haut du corps peut faire des mouvements indépendamment du bas du corps (ex: le bas du corps passe de la marche à la course, alors que le haut du corps manipule une arme). Enfin, en un clic, il est possible de créer des miroirs d'animation. Un animateur peut donc créer l'animation d'un personnage faisant un mouvement, comme courir en tournant vers la gauche, puis utiliser le miroir pour utiliser l'inverse de son animation afin de créer l'animation de la course en tournant vers la droite. Ça prend littéralement quelques secondes.

sommetinternationaldujeudemontreal2007_010.jpgLe dernier point fort du séminaire, c'est la présentation de transitions entre animation et calcul physique. Par exemple : un homme court, puis trébuche, et tombe par terre. La chute, afin de se faire en fonction de l'environnement, peut être calculée complètement par le moteur physique, et la transition entre la course le mode dynamique de chute se fera de façon réaliste. Ensuite, en fonction de la position du corps au sol, il est possible d'associer plusieurs animations du personnage qui se relève, et Havok repositionnera le corps de façon naturelle avant pour faire la transition avec l'animation du personnage qui se relève, ce qui augmente encore le réalisme du mouvement.

Les possibilités offertes par ces outils sont donc axées pour que les animations réalisées par les développeurs puissent être utilisées en combinaison avec le moteur physique Havok, et pour augmenter la productivité des équipes de développement, pour que le temps passé à créer les animations soit plus rapidement utilisable dans le jeu en développement. Cela répond à un besoin important des développeurs : plus le jeu fonctionne tôt dans le cycle de développement, et plus tôt la jouabilité peut être peaufinée.
par Zork 3 commentaires, dernier par Zork
Partager

Commentaires

Xpierrot

Responsable Hardware de Zeden
Nb msg : 1500
(#1) 30 novembre 2007 à 10h49
J'ajoute un point important. Havok a été rachetée par Intel pour 100 millions de dollars, et il y a une rumeur qui dit que c'était pour les tuer... on verra bien, mais il se pourrait que le moteur havok finisse par disparaitre...
Marchez doucement car vous marchez sur mes rêves
utr_dragon

Rédacteur en Chef/Dieu
Nb msg : 2495
(#2) 30 novembre 2007 à 15h44
Les rumeurs actuelles parlent d'ailleurs d'un rachat d'AGEIA par AMD.
No comment !
Zork

Webmaster
Nb msg : 1846
(#3) 30 novembre 2007 à 15h51
Ça fait penser aux programmes d'optimisation de ATI et Nvidia : ils veulent probablement optimiser leur technologie pour leurs processeurs, de quoi estamper des collants supplémentaires pour faire de la promotion par le biais des jeux qui emploient ces technologies.
Webmaster et fanboy id Software.
[!] Commentaires fermés pour cette nouvelle.