Comment créer une interface pour interpoler quelque chose en utilisant C++? Par exemple, je veux effacer une image dans plus d'une durée de cinq secondes à l'aide d'un appel de fonction statique comme:Création de fonctions d'interpolation à l'aide de C++?
Graphics::FadeSurface(Surface mySurface, int FrameHeight, int NumOfFrames,
int FadeDirection, double Duration)
J'ai une configuration codée en dur qui crée un objet pour chaque action tween qui doit être effectué . J'ai utilisé une variable DeltaTime qui garde la trace du temps écoulé depuis le lancement du programme pour contrôler la logique et autres. J'ai inclus un exemple (beaucoup moins raffiné) pour vous montrer un peu ce que je suis en train de faire:
Exemple logique Loop:
gameLoop(double DeltaTime){
// ...
// logic
// ...
bool isItDone = otherClass.HaveFiveSecondsElapsed(double DeltaTime);
if(isItDone == true)
exit(1);
// ...
// logic
// ...
}
Exemple Tweening Classe:
other_Class::other_Class(){
InitialTime = 0;
InitialTime_isSet = false;
}
bool other_class::HaveFiveSecondsElapsed(double DeltaTime){
// Setting InitialTime if it hasn't already been set
if(otherClass.InitialTime_isSet == false){
otherClass.InitialTime = DeltaTime;
otherClass.InitialTime_isSet = true;
}
bool toReturn = false;
if(DeltaTime - InitialTime > 5)
toReturn = true;
return toReturn;
}
Toute aide est grandement appréciée. Merci!
C'est exactement ce que je cherchais à faire - grâce une tonne pour cela. Ce qui est marrant, c'est que j'ai actuellement ce projet C++ sur moi et que je travaille sur un jeu Android en utilisant LibGDX, donc cela va parfaitement convenir à mes besoins:] – recursive404
C'est sympa de voir ça utile :) N'hésitez pas à parler de votre projet les forums libgdx, il a une communauté merveilleuse. Une fois que j'aurai un site web dédié au Tween Engine avec des tutoriels, des showcase et des outils, je le porterai en C++ (d'abord) et ensuite .NET, pour qu'il soit totalement universel. –