Ok...Merci...
Un "thread", il me semble c'est quelque chose une fonction... la "zone" de code fait la fonction, quoi...
int main(){...c'est le thread...}, mais je me trompe peut être...
Pour le debugger, comme je l'ai dit dans mon message, c'est fait, mais il ne me dit rien du tout. Il se contente de quitter tout de suite le programme.
Voici le code de mon main, qui affiche toutes les images du jeu, envoyé par l'objet "afficheur"...
Merci si vous pouvez m'aider
Sinon, pas de pb, je me débrouillerais
int main()
{
sf::RenderWindow fenetre(sf::VideoMode(1600, 900), "Element", sf::Style::Fullscreen);
Controles controles;
Afficheur afficheur;
sf::Time tempsEcoule;
sf::Clock clock;
int tip = 0;
while (fenetre.isOpen()&&!controles.quitter())
{
sf::Event event;
while (fenetre.pollEvent(event))
{
if (event.type == sf::Event::Closed)
fenetre.close();
}
controles.recoiTemps(false);
if(tempsEcoule.asMilliseconds() >= 25)
{
controles.recoiTemps(true);
clock.restart();
}
controles.recoiSouris(sf::Mouse::getPosition(fenetre));
afficheur.rafraichi(&controles);
std::set<EntiteImage, MonFoncteur> entiteImage;
std::set<EntiteImage>::iterator it = entiteImage.begin();
while(afficheur.contientImage())
{
entiteImage.insert(it,afficheur.renvoiEntiteImage());
}
fenetre.clear(sf::Color::Black);
fenetre.setVerticalSyncEnabled(true);
for (std::set<EntiteImage>::iterator it = entiteImage.begin(); it != entiteImage.end(); it++)
{
fenetre.draw(*it);
}
fenetre.display();
tempsEcoule = clock.getElapsedTime();
}
return 0;
}