bonjour,
je travaille actuellement sur un éditeur de cinématiques fait avec Qt et SFML. j'avais un bouton catalogue qui ouvrai une sous-fenetre Qt contenant la liste des animation jouables, et une fenetre sfml qui jouait l'animation sélectionnée (comme pour en avoir un extrait avant de la valider). Tout fonctionnait bien, à chaque modification de l'animation sélectionnée, la fenêtre SFML se mettait à jour.
voici le slot qui était appelé
void CtlgWindow::ShowCatalog()
{
catalogueOuvert = true;
animPlayer = new AnimPlayer();//créé la fenetre SFML qui va jouer les animations
catalogue->show();
MettreAJour();
}
la méthode MettreAJour
void CtlgWindow::MettreAJour()
{
sf::Event event;
while(catalogueOuvert)
{
while(animPlayer->GetApp()->GetEvent(event))
{
if (event.type == sf::Event::KeyPressed && event.key.code == sf::Keyboard::Q)
{
animPlayer->GetApp()->close();
}
}
showAnimation();//clear, update du contenu de la fenetre, et display
}
}
après avoir effectué une migration (et un nettoyage de mon code qui pourrait être à l'origine du problème) de la SFML1.6 vers la 2.0RC, et avoir remplacé while (App.GetEvent(event)) par While App.pollEvent(event), cela ne fonctionne plus : on dirait que, même si pollevent n'est pas bloquante, que la fenetre SFML attend un evenement avant de rendre la main au reste du programme, qui en attendant est figé, du coup, plus moyen de changer l'animation en cours de lecture...
Est-ce que ça peut venir d'un nouveau comportement de la SFML2.0RC ?
Merci d'avance pour votre aide.