10-09-2013, 06:11 PM
Bonjour,
je suis en train de faire différentes animations pour mon moteur de combat et je me rend compte que je n'ai pas vraiment structurer la chose, j'aimerais des avis sur comment faire au mieux des animations en javascript.
Ce que j'appel animation, ça peut par exemple être le fait de changer le bg-position sur un srpite pour créer une illusion de mouvement, mais ça peut aussi être des choses plus complexe.
Je prendrais mon exemple d'animation d'arme qui pour l'instant est coder le plus en dur possible (et c'est bien ça qui m’embête):
Donc, une animation est décomposé en ce que j'appellerais "step".
Quel est la meilleure implémentation selon vous?
voilà les idées que j'ai:
_une suite de setTimeOut() (comme ci-dessus)
_un setTimeOut() dans une fonction récursive + une variable step qui s'incrémente
_un setInterval() combiner à un tableau qui contient dans chaque case, une fonction qui correspond à une step de l'animation, donc on a aussi une variable step quelque part pour faire avancer le curseur de ce tableau. + une variable qui contient l'interval pour pouvoir le clearInterval() quand on veux.
Avez-vous mieux a proposer? Quel approche avez-vous ou feriez-vous?
merci.
je suis en train de faire différentes animations pour mon moteur de combat et je me rend compte que je n'ai pas vraiment structurer la chose, j'aimerais des avis sur comment faire au mieux des animations en javascript.
Ce que j'appel animation, ça peut par exemple être le fait de changer le bg-position sur un srpite pour créer une illusion de mouvement, mais ça peut aussi être des choses plus complexe.
Je prendrais mon exemple d'animation d'arme qui pour l'instant est coder le plus en dur possible (et c'est bien ça qui m’embête):
weapon.css({transform: 'rotate(90deg)', left: '-=16'});
setTimeout(function(){ weapon.css({transform: 'rotate(0deg)', left: '-=22'}); }, 50);
setTimeout(function(){ weapon.css({transform: 'rotate(-90deg)', left: '-=14'); }, 100);
setTimeout(function(){ weapon.hide();}, 150);
Donc, une animation est décomposé en ce que j'appellerais "step".
Quel est la meilleure implémentation selon vous?
voilà les idées que j'ai:
_une suite de setTimeOut() (comme ci-dessus)
_un setTimeOut() dans une fonction récursive + une variable step qui s'incrémente
_un setInterval() combiner à un tableau qui contient dans chaque case, une fonction qui correspond à une step de l'animation, donc on a aussi une variable step quelque part pour faire avancer le curseur de ce tableau. + une variable qui contient l'interval pour pouvoir le clearInterval() quand on veux.
Avez-vous mieux a proposer? Quel approche avez-vous ou feriez-vous?
merci.
Dévotion, jeu multijoueur gratuit par navigateur de stratégie et de conquête
The Magic Institute, le jeu de magie médieval fantastique gratuit en ligne
Rapture Studio : créateur de divertissement pour tous
JePolitique.fr - débattons ensemble
JécrisLaConstitution.fr - ne laissons pas les Hommes aux pouvoirs écrire les règles du pouvoir
Je Deviens Citoyen (Association à but non lucratif)
The Magic Institute, le jeu de magie médieval fantastique gratuit en ligne
Rapture Studio : créateur de divertissement pour tous
JePolitique.fr - débattons ensemble
JécrisLaConstitution.fr - ne laissons pas les Hommes aux pouvoirs écrire les règles du pouvoir
Je Deviens Citoyen (Association à but non lucratif)