Bonjour!
Je suis plutôt nouveau sur SFML, et je rencontre actuellement un problème dans lequel je comprends le soucis, mais ne voit pas comment mettre en place la solution
J'ai une classe, appellée "Animation", avec a l'interieur une fonction Play(). J'aimerai que cette fonction s'execute en parallèle du reste du programme et utilse donc un Thread. Voici le bout de code correspondant:
public:
Animation(animName index) : animThread(&Animation::Play, this){
this->Name = index;
switch (Name) { . . . }
}
~Animation() { . . . }
void Play(sf::RenderWindow &window);
sf::Thread animThread;
};
Je l'appelle dans le main() de mon app avec le code suivant:
auto shotAnim = new Animation(animName::Shot);
shotAnim->animThread.launch();
Et il me donne l'erreur suivante: C2064: le terme ne correspond pas à une fonction qui prend 1 argument.
Je comprends qu'il me manque l'argument de type RenderWindow dans "shotAnim->animThread.launch();", mais je ne vois pas comment le passer.
J'utilise Visual Studio 2017 (Debug, x86).
Pouvez-vous m'aider? merci !