Message #11683
Sujet: Système d'animation d'irrlicht
| Type | Date | Auteur | Contenu |
|---|---|---|---|
| Création du message | 19-06-2015 19:39:57 | jonath313 |
Bon je me suis arraché pas mal de cheveux pour trouver un cas que je ne traite pas pour le moment. Déjà il y a quelque chose de sûr, avant de dire que le priorité est inéfficace, il faudrait qu'elle soit rafraichie au bon moment... Pour une foi que je suis sûr de quelque chose
Je t'explique : Pour le moment, quand j'appui sur un bouton de la manette je bind une animation, elle se joue, pas de soucis. J'appui sur un autre bouton , une autre animation se joue, tout va bien, c'est ce qu'on veut. J'ai visualisé la valeur de la priorité au moment du bind() et au moment du unbind() et voici ce qu'il se passe : Quand j'appui sur le bouton("marcher" -> priorité = 10) au moment de l'appui je bind() donc je vois s'afficher 10, tout va bien. Je laisse appuyé le bouton marcher et maintenant j'appui sur sauter (priorité = 2) et là l'animation sauter se lance alors que marcher est active (on voit sur la console 2 qui s'affiche pour la priorité). Déjà là j'ai vue qu' il y a quelque chose qui ne va pas et c'est logique en même temps car dans le code si j'active une animation, j'écrase la priorité sans vérifier avant si elle est supérieure. Après, je pense que la priorité devrait aussi être rafraîchi au moment du unbind() car ensuite j'ai relâché le bouton sauter en gardant toujours marcher appuyer et là j'ai vue sur la console "2" -> qui correspond à la priorité de sauter (normal vue que je rafraîchi la priorité que quand j'active et non quand je désactive). Bon, ce poste m'a permis de poser le problème et prendre du recul, je pense avoir déniché ce qui me convient pas. Donc du coups, j'ai compris que quand on jouait les frames 0,0 dans unbind(), on forçait le node sur cette animation. Après niveau code j'ai pas changé grand chose, j'essai d'utiliser GenericState, plutôt que de créer une nouvelle classe IdleState. Dans ma classe application je test les événements comme ceci: Code c++ :Dans ma classe player je fais : Code c++ :Voila c'est pas glorieux mais je fais comme je peux |
| Options | Liens officiels | Caractéristiques | Statistiques | Communauté |
|---|---|---|---|---|
|
Préférences cookies Corrections |
![]() ![]() ![]() ![]() |
Propulsé par Django xhtml 1.0 css 2.1 |
884 membres 1440 sujets 11337 messages |
Dernier membre inscrit: Saidov17 115 invités en ligne membre en ligne: - RSS Feed |