Bonsoir!
Alors voilà, je fais un jeu, et ma boucle principale ressemble à cela:
Les '...' représentent les init, update, rendu.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23 void GameLoop() { mExit = false; ... MSG msg; while (!mExit) { ... while (PeekMessage(&msg, NULL, 0, 0, PM_REMOVE)) { if (msg.message == WM_QUIT) { mExit = true; break; } TranslateMessage(&msg); DispatchMessage(&msg); } ... } ... }
Le problème:
Lorsque je quitte mon jeu par un 'Alt + F4', ou en fermant via la croix en mode fenêtré, j'ai bien la fenêtre qui est détruite, dans mais le gestionnaire de taches je vois toujours mon jeu lancé
Tout se passe comme si le message WM_QUIT n'est jamais reçu (et donc envoyé lors de la fermeture de la fenètre).
Pour info, ça se passe sous WindowsXP SP2, et le moteur de rendu est Ogre3D.
Partager