Welcome, Guest. Please login or register. Did you miss your activation email?

Author Topic: problème avec fullscreen  (Read 3630 times)

0 Members and 1 Guest are viewing this topic.

mazertys17

  • Full Member
  • ***
  • Posts: 123
    • View Profile
    • Email
problème avec fullscreen
« on: November 04, 2014, 11:21:45 am »
Bonjour.

J'ai un problème avec le sf::Style::Fullscreen: je le lance dans une boucle via un objet affichage.afficher(). Ca fonctionne bien mais, au bout de quelques secondes, il plante.
Voici des extraits de mon code:

int ObjetDexemple::jouer()
{
afficheur.charger();
while (!stopExemple)
{
afficheur.afficher();
}
}

void Affichage::charger()
{

    fenetre.create(sf::VideoMode(1600, 900), "My window", sf::Style::Fullscreen);

    image.loadFromFile("images/fond1.png");
    spriteImage.setTexture(image);

}



void Affichage::afficher()
{

        fenetre.clear(sf::Color::Black);

        fenetre.draw(spriteImage);

        fenetre.display();
}


J'ai la même résolution sur mon bureau que celle demandé en fullscreen, c'est à dire 1600x900. Dans une fenêtre normal, cela fonctionne sans planter.

Merci si vous pouvez m'aider.

Laurent

  • Administrator
  • Hero Member
  • *****
  • Posts: 32498
    • View Profile
    • SFML's website
    • Email
Re : problème avec fullscreen
« Reply #1 on: November 04, 2014, 12:47:06 pm »
Utilise ton debugger, ça sert à ça.

Sinon : http://sscce.org/
Laurent Gomila - SFML developer

mazertys17

  • Full Member
  • ***
  • Posts: 123
    • View Profile
    • Email
Re : problème avec fullscreen
« Reply #2 on: November 04, 2014, 03:04:09 pm »
Bonjour, et merci pour votre réponse.

chose étonnante, lorsque j'utilise le debugger, le programme marche sans planter. Je le lance normalement, et il replante au bout de quelques secondes.

Enfin il plante bizarrement: le programme continue de se dérouler, mais la souris se met en mode sablier, et lorsque j'appuis sur échap, qui fait clore le programme, il ferme et windows m'ouvre la la fenêtre "a cessé de fonctionner". Si j'utilise une commande quelconque, il me clos le programme de la même facon.

kimci86

  • Full Member
  • ***
  • Posts: 128
    • View Profile
Re : problème avec fullscreen
« Reply #3 on: November 04, 2014, 04:58:22 pm »
Bonjour,
Quote from: Tutoriels SFML
Une erreur que les gens font souvent est d'oublier de mettre une boucle d'évènements, car ils n'en ont pas besoin (ils utilisent les entrées temps réel à la place, typiquement). Mais sans gestion d'évènement la fenêtre ne sera pas réactive ; en effet, la boucle d'évènement a deux rôles : en plus de fournir les évènements à l'utilisateur, elle permet à la fenêtre de traiter ses évènements internes, ce qui est impératif a son bon fonctionnement.

http://sfml-dev.org/tutorials/2.1/window-window-fr.php#rendre-la-fenetre-un-peu-plus-vivante

mazertys17

  • Full Member
  • ***
  • Posts: 123
    • View Profile
    • Email
Re : problème avec fullscreen
« Reply #4 on: November 05, 2014, 11:03:00 am »
Bonjour, et merci pour votre réponse.

En effet, c'est bien cela: ma boucle vient d'un autre objet qui fait appel a "Affichage" en dernier, celui ci n'ayant donc aucune boucle d’événement, étant appelé en boucle par cet autre objet. J'ai simplement rajouté :
-fenetre.pollEvent(event);
et une condition :
 " if (event.type == sf::Event::Closed){ fenetre.close();}

Depuis, cela semble fonctionner sans problème.

Merci  :D

 

anything