Bonjour à tous,
Je voudrais vous présenter un module de libclaw nommé claw::tween dont l'objectif est d'être une implémentation claire, efficace et extensible des tweeners en C++.
Ce module permet l'interpolation des valeurs intermédiaires entre deux valeurs données pendant un intervalle de temps et selon une courbe de variation prédéfinie. Cette pratique est grandement utilisée en animation et est très populaire dans le contexte de sites et de jeux vidéos en ActionScript/Flash.
Voici une vidéo d'exemple tirée du jeu Plee the Bear et montrant une animation faite avec ce module. Lorsque le lapin est blessé dans la vidéo, le mouvement de ses différentes parties est le résultat des tweeners. Ces tweeners calculent la position et l'angle de chaque élément.
Le module est inspiré de la bibliothèque ActionScript tweener et de son port en C++ cpptweener. Claw::tween diffère de ces implémentations sur plusieurs points :
- L'interpolation est faite sur la valeur d'une variable donnée ou en utilisant une fonction de rappel fournie par l'appelant ;
- les valeurs intermédiaires sont calculées en utilisant une des fonctions prédéfinies ou avec n'importe quelle fonction fournie par l'appelant et respectant le contrat ;
- plusieurs interpolations peuvent être facilement exécutées simultanément ou en séquence ;
- le module a une structure de C++ moderne.
Libclaw est distribuée sous licence LGPL. Pour essayer par vous-même, téléchargez la bibliothèque depuis la page du projet sur SourceForge.net. Il y a aussi une documentation du module en anglais avec divers exemples de code.
Partager