problème de fps openGl

problème de fps openGl - C++ - Programmation

Marsh Posté le 30-05-2005 à 22:21:44    

Bonjour
je tente de créer un jeu de combat (type mortal Kombat) avec openGl et freeglut.
J'utilise la fonction de glut pour récupérer le temps d'execution en milisecondes pour limiter le nombre de fps à 120 avec une boucle:
 
tps_debut=glutGet(GLUT_ELAPSED_TIME);
...
while(tps_fin=gluGet(GLUT_ELAPSED_TIME)-tps_deb<8); //8ms par frame=120 fps
 
Cela marche sans problème sur mon PC mais sur tous les autres que j'ai essayé (environ même puissance), le prog se bloque à 60 fps ce qui est gênant: tous les mouvements sont deux fois trop lents...
Si j'enlève la boucle, je tourne à 500 fps (sur mon PC)
A l'aide! :pt1cable:  
merci


---------------
deluser --remove-home ptitchep
Reply

Marsh Posté le 30-05-2005 à 22:21:44   

Reply

Marsh Posté le 30-05-2005 à 22:24:51    

c'est quoi le refresh rate des écrans ?


---------------
JE JE SUIS LIBERTINEEEEEEEEEEE JE SUIS UNE CATINNNNNNNNN §§§§§§§§
Reply

Marsh Posté le 30-05-2005 à 22:26:10    

:d
 
sinon c'est moche ta facon de faire [:petrus75]  


---------------
NP: HTTP Error 764 Stupid coder found
Reply

Marsh Posté le 30-05-2005 à 23:14:57    

je c c a l'arrache
toute meilleure façon est la bienvenue...


---------------
deluser --remove-home ptitchep
Reply

Marsh Posté le 30-05-2005 à 23:24:56    

bin tu calcules l'interval detps entre la derniere image et la courante et tu te sers de cet interval pour ajuster tes mouvements


---------------
NP: HTTP Error 764 Stupid coder found
Reply

Marsh Posté le 30-05-2005 à 23:25:13    

(si l'interval est trop grand et que t'as des integrateurs l tu vas ptet avoir des pb)


---------------
NP: HTTP Error 764 Stupid coder found
Reply

Marsh Posté le 30-05-2005 à 23:45:09    

La resolution du timer dans Windows est generalement de 15.6 millisecondes, soit environ 65 fps.
 
Rajoute un "timeBeginPeriod(1)" dans tes initializations, et tu auras un timer precis a 1 milliseconde prete.

Reply

Marsh Posté le 30-05-2005 à 23:46:15    

les refresh des écran c'est bizare,
ça ne change rien sur mon PC (de 60 à 200 Hz c'est pareil)
mais sur les autres le nombre de fps de mon prog suit la fréquence de l'écran mais j'ai pu essayer que jusqu'à 72 Hz parceque l'ordi supportait que ça


---------------
deluser --remove-home ptitchep
Reply

Marsh Posté le 30-05-2005 à 23:47:29    

bin rien, ta carte video fait une synchronisation avec le retour de debut de balayage, d'ou l'attente


---------------
NP: HTTP Error 764 Stupid coder found
Reply

Marsh Posté le 30-05-2005 à 23:49:49    

Citation :


La resolution du timer dans Windows est generalement de 15.6 millisecondes, soit environ 65 fps.  
 
Rajoute un "timeBeginPeriod(1)" dans tes initializations, et tu auras un timer precis a 1 milliseconde prete.  


 
Effectivement j'avais ce pb avant mais j'ai téléchargé une nouvelle version de mon glut et (sur mon pc du moins) quand j'affichait le retour de glutGet(..) ça décomptait bien à la ms.
sinon "timeBeginPeriod()", il faut quoi comme include?


---------------
deluser --remove-home ptitchep
Reply

Marsh Posté le 30-05-2005 à 23:49:49   

Reply

Marsh Posté le 30-05-2005 à 23:51:41    

Citation :

bin tu calcules l'interval detps entre la derniere image et la courante et tu te sers de cet interval pour ajuster tes mouvements


ça se tente...


---------------
deluser --remove-home ptitchep
Reply

Marsh Posté le 31-05-2005 à 00:08:23    

windows.h (google)


---------------
deluser --remove-home ptitchep
Reply

Sujets relatifs:

Leave a Replay

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