Pages: 1
Salut.
Je suis actuellement en train de coder un jeu avec une version de Irrlicht pour la plateforme PSP. (LTE engine)
Mais cette console n'a pas toutes les performances nécessaires pour faire tourner un jeu complet à 60 FPS, si il y a trop d'objets affichés.
J'ai overclocké le processeur mais c'est pas assez, ça rame quand même.
Questions : est-ce faire node = driver->addOctTree...etc règlerait le problème ? Comment limiter les framerates à 30 FPS ? (j'accélère l'animation)
J'ai essayé de limiter avec la SDL, mais par exemple en incluant SDL_framerate, le compilateur reconnait pas les fonctions... pourtant j'ai inclus, mais le link makefile marche pas... bref, je cherche le moyen de limiter le nombre de fps, histoire de pas ralentir le déplacement de la caméra.
Cordialement,
Kenny
Hors ligne
peut-être en endormissent un peut ton programme avec ça
http://irrlicht-fr.org/lire_tuto.php?id=1299
il y a un truc qui te permet de réguler la vitesse du framerate, et qui est assez simple a utiliser
Hors ligne
Le truc c'est que en fait comme c'est une caméra FPS, elle bouge "toute seule"
Alors moi tout mon programme (boucle de rendu) peut bouger indépendamment de la caméra, donc y'aura pas d'impac direct, car aucune action n'attend des ordres pour le ralentissement dans ma boucle. En gros je veux dire que je peux pas modifier le framerate complet...
Au fait la LTE possède un moyen de limiter les FPS à 60. Je vais chercher comment modifier ça...
Sinon pour les octtree ?
Hors ligne
il y aurait peut-être un truc a essayer qui devrais marcher, soit en utilisant le lien que je t'ai mis un peut plus haut pour utiliser la fonction qui permet de gérer les evenement à un intervalle temps voulus. et toutes les 33ms (pour environ 30fps) tu fait ton :
Sinon peut être une deuxième solution:
En utilisant un "timer" de la SDL pour appelé une fonction callback qui contient le code ci-dessus. Je pense que ça fonctionnerais même mieux (du faite que d'après ce que j'ai pus lire dans le code source, les "timers" de la SDL utiliserais un autre thread, mais peut-être que je me plante)
Un mec explique comment ça utiliser les "timers" super bien ici:
http://www.siteduzero.com/tutoriel-3-14 … #ss_part_2
Dernière modification par nabouill (09-07-2010 22:50:15)
Hors ligne
C'est bon j'ai résolu le problème. En fait le doit tourner à 30 FPS.
Donc je fais un truc à la fin de chaque boucle, je calcule le temps que l'éxécution de la boucle a duré, et je fais une pause de 33ms - temps, donc ça fait une régulation du framerate dynamique.
Voili voulu voila. Résolu.
Par contre autre question : possible d'afficher une image de chargement ? Parce que si je fais un driver->endScene avant la boucle il freeze...
Hors ligne
si tu fait un :
avant la boucle, ça marche!
Hors ligne
Pages: 1