janoscoder peut tu m'expliquer ce que les DT et DTLIMITE sont? j'aprécirais beacoup :wahoo:
janoscoder
L'autre méthode est de lier le calcul physique à un timer, mais ça pose un problème (contournable) qui est le choix de l'intervalle d'appel. S'il est trop petit, ça saturera les machines peu puissantes, et s'il est trop grand, les déplacements (et non le frame rate) seront saccadés.
janoscoder
Si la physique se fait en virgule flottant, il suffit de prendre en compte un dt qui viendra de l'horloge haute précision du système. Il faut savoir qu'en cas de grosse saccade, on peut avoir des comportements bizarres. Donc ce qu'il faut c'est calculer la physique un fois pas frame tant que la période dt<=dtlimite et passer dt en paramètre au moteur physique.
Si dt>dtlimite, il faut appeler Esup(dt/dtlimite) fois l'algo physique avec pour paramètre dt/Esup(dt/dtlimite).
Cette méthode est très bien lorsque ce n'est pas le moteur physique qui consomme la majorité du temps processeur.
ics
Il faut utiliser des timers qui vont "réguler" le temps d'execution de ton programme suivant la vitesse du processeur. Je te dis ça mais je n'y connais rien du tout dans ce domaine! Donc fait une recherche sur www.google.com.
Ventilo
Voila, j'ai crée un jeu pour un travail à l'école que je vais mettre sur un CD pour les finisants. Le jeux fonctione parfaitement, mais comme le loop princpal s'execute dans cet ordre:
Lire les finformation du clavier
Execute la physique
Rend le tout a l'écran
Mais si le jeu roule sous une machine plus lente que la mienne (la machine que le jeu a été developer dessu) le tout est beacoup plus lent, et sur une machine plus rapide, le tout s'execute beacoup trop vite.
Alors j'ai penser mettre une limite de temps entre les MAJ de la physique.
Bon pour un revenir a la question :D est-ce que c'est de cette manière que les jeux comerciaux execute le LOOP principal?