[glut] comment "arreter" le temps ?

comment "arreter" le temps ? [glut] - C++ - Programmation

Marsh Posté le 10-06-2002 à 14:35:46    

Je m'explique. J'utilise la fonction glutGet(GLUT_ELAPSED_TIME) de glut pour avoir la notion du temps. Cette fonction je l'appelle dans la fonction callback "Display" (glutDisplayFunc(Display)). Seulement quand je redimensionne la fenetre par exemple, le temps continue de s'écouler sans que l'on passe par la fonction Display. Se qui est embetant pour la détection des collisions par exemple, car un long moment peut s'etre écoulé depuis la derniere fois et les objets se sont donc touchés pendant se temps sans que la collision n'ai ete detectée puisque le programme était inactif. J'ai alors ajouté une variable qui me dit si je suis passé par la fonction de reshape je peux alors savoir que le programme a été arreté pendant un moment et ainsi artificielement régler le temps. Mais le probleme c'est qu'on ne passe pas nécessairement par la fonction reshape, par exemple si on clicke sur un bord de la fenetre mais qu'on relache sans avoir bougé la souris. Le programme a été inactif mais on n'est pas passé par la fonction reshape. Il doit surement y avoir d'autres exemples ou on ne passe pas par cette fonction. Donc j'aimerai savoir si on peut savoir quand le programme est inactif et ainsi arreter le temps.
 
Je ne suis peut-etre pas tres clair, j'espere que vous comprendrez :).

Reply

Marsh Posté le 10-06-2002 à 14:35:46   

Reply

Marsh Posté le 11-06-2002 à 16:04:36    

waw c'est chaud à comprendrre ton pâté ;-))
 
 :bounce:


---------------
Visitez mon site : http://www.jujubarbare.linux-fan.com
Reply

Marsh Posté le 12-06-2002 à 10:10:24    

en fait pour faire plus simple, je voudrais savoir comment savoir que la scene n'a pas été redessinée pour une raison quelconque

Reply

Marsh Posté le 12-06-2002 à 10:43:53    

moi j'ai plus l'impression que tu cherches à savoir quand est-ce que tu dois te mettre en "pause"....
 
bin tu doit avoir moyen de savoir quand est-ce que ta fenêtre a perdu le "focus"...

Reply

Marsh Posté le 12-06-2002 à 10:48:08    

il "suffit" d'avoir un systeme de collision
qui ne soit pas dependant de la vitesse d'affichage.
de toute facon ca te servira quoi qu'il arrive parce que sur PC
on peut difficilement prevoir le framerate a l'avance.
Exemple, tu te fixes un increment de temps fixe DeltaT
et tu fais tous tes calculs a DeltaT d'intervalle.
 
LeGreg

Reply

Marsh Posté le 12-06-2002 à 10:59:36    

bjone a écrit a écrit :

moi j'ai plus l'impression que tu cherches à savoir quand est-ce que tu dois te mettre en "pause"....
 
bin tu doit avoir moyen de savoir quand est-ce que ta fenêtre a perdu le "focus"...  




 
Oui c'est ca en fait : comment savoir quand la fenetre perd le focus. Qqun sait ?

Reply

Marsh Posté le 12-06-2002 à 12:30:01    

faut prendre une Stella
[:cherrytree1]

Reply

Marsh Posté le 12-06-2002 à 12:35:14    

greg@freestarthu a écrit a écrit :

faut prendre une Stella
[:cherrytree1]  




 
 :lol:  :lol:  :lol:


---------------
Just because you feel good does not make you right
Reply

Marsh Posté le 12-06-2002 à 12:36:15    

Excusez moi j'ai crevé vous n'auriez pas un crick :D
 
[:cherrytree1]


---------------
Just because you feel good does not make you right
Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed