IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Développement 2D, 3D et Jeux Discussion :

Limiter les FPS


Sujet :

Développement 2D, 3D et Jeux

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre très actif
    Profil pro
    Responsable technique
    Inscrit en
    Février 2006
    Messages
    366
    Détails du profil
    Informations personnelles :
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Responsable technique

    Informations forums :
    Inscription : Février 2006
    Messages : 366
    Par défaut Limiter les FPS
    Salut tout le monde

    J'ai un petit probleme pour limiter les FPS. En fait voila, je cherche à limiter le nombre de fps et faire en sorte que mon appli opengl ne prenne pas 100% du cpu pour le confort de l'utilisateur. J'ai utilisé la fonction Sleep de windows et sleep de unistd.h pour linux. Ca marche bien, ca me limite le nombre de fps mais ca me saccade le déplacement de mon sprite par exemple. Vous allez me dire que c'est normal car tu utilise Sleep. Oui mais alors comment je peu faire?
    L'effet saccadé est pas enorme à 60 fps mais il se voit quand meme. Il devient invisible à 150-200 fps environ.

    Voila merci.

  2. #2
    Membre averti
    Profil pro
    Inscrit en
    Septembre 2006
    Messages
    18
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2006
    Messages : 18
    Par défaut
    Premièrement, je ne vois pas pourquoi tu place dans le forum d'openGL. Je ne vois le problème relier à l'api.

    Deuxièment c'est tous simplement un problème de logique. Il faut que tu ajuste tous simplement tes sprites sur la fréquence de temps et non sur ta capacité cpu.

  3. #3
    Membre très actif
    Profil pro
    Responsable technique
    Inscrit en
    Février 2006
    Messages
    366
    Détails du profil
    Informations personnelles :
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Responsable technique

    Informations forums :
    Inscription : Février 2006
    Messages : 366
    Par défaut
    Citation Envoyé par theidiot
    Premièrement, je ne vois pas pourquoi tu place dans le forum d'openGL. Je ne vois le problème relier à l'api.

    Deuxièment c'est tous simplement un problème de logique. Il faut que tu ajuste tous simplement tes sprites sur la fréquence de temps et non sur ta capacité cpu.
    J'avoue je me suis trompé il est pas au bon endroit mon post.
    Sinon pour la fréquence de temps, je veux bien mais je fais comment?

  4. #4
    Expert confirmé

    Profil pro
    Fabricant et casseur d'avions
    Inscrit en
    Avril 2004
    Messages
    3 817
    Détails du profil
    Informations personnelles :
    Localisation : France, Tarn (Midi Pyrénées)

    Informations professionnelles :
    Activité : Fabricant et casseur d'avions
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Avril 2004
    Messages : 3 817
    Par défaut
    Citation Envoyé par drcd
    Sinon pour la fréquence de temps, je veux bien mais je fais comment?
    Peut-être qu'au lieu de bouger ton sprite de 1 mètre en 0.5s, et de faire une pause de 0.5s, il serait préférable de le faire bouger de 20 cm en 0.1s, de faire une pause de 0.1s, et de recommencer... il aura aussi bougé de 1m au bout d'une seconde, mais de manière plus fluide...
    "Errare humanum est, sed perseverare diabolicum"

    Ma page sur DVP.com

  5. #5
    Membre très actif
    Profil pro
    Responsable technique
    Inscrit en
    Février 2006
    Messages
    366
    Détails du profil
    Informations personnelles :
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Responsable technique

    Informations forums :
    Inscription : Février 2006
    Messages : 366
    Par défaut
    Citation Envoyé par plegat
    Peut-être qu'au lieu de bouger ton sprite de 1 mètre en 0.5s, et de faire une pause de 0.5s, il serait préférable de le faire bouger de 20 cm en 0.1s, de faire une pause de 0.1s, et de recommencer... il aura aussi bougé de 1m au bout d'une seconde, mais de manière plus fluide...
    Ca revient en gros à temporiser ma boucle de jeu moins longtemps et à augmenter le nombre de fps nan?

  6. #6
    Expert confirmé

    Profil pro
    Fabricant et casseur d'avions
    Inscrit en
    Avril 2004
    Messages
    3 817
    Détails du profil
    Informations personnelles :
    Localisation : France, Tarn (Midi Pyrénées)

    Informations professionnelles :
    Activité : Fabricant et casseur d'avions
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Avril 2004
    Messages : 3 817
    Par défaut
    Citation Envoyé par drcd
    Ca revient en gros à temporiser ma boucle de jeu moins longtemps et à augmenter le nombre de fps nan?
    Ben non... enfin, oui... oui et non...

    En fait, ça revient à mieux répartir tes affichages sur la même période de temps.
    Imagine que tu veuilles tourner à 25 fps.
    Tu as plusieurs solutions. Aux extrêmes, ça donnerait soit afficher 25 images en 0.01s et patienter 0.99s... soit faire 25 boucles où tu affiches une image en 0.004s et patientes 0.036s (les valeurs numériques c'est n'importe quoi, c'est juste pour l'exemple).
    Dans les deux cas tu as ton 25 fps, mais la seconde méthode sera plus fluide.
    "Errare humanum est, sed perseverare diabolicum"

    Ma page sur DVP.com

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Afficher les FPS
    Par p@rasiT dans le forum OpenGL
    Réponses: 5
    Dernier message: 04/10/2004, 14h15
  2. Limiter les déplacement de la souris a la fenetre
    Par Mathieu.J dans le forum OpenGL
    Réponses: 22
    Dernier message: 11/06/2004, 12h55
  3. Limiter les 30dernière liste de données?
    Par SkyDev dans le forum Langage SQL
    Réponses: 11
    Dernier message: 08/03/2004, 17h01
  4. [MFC]Calculer les FPS
    Par inerti@ dans le forum MFC
    Réponses: 6
    Dernier message: 19/03/2003, 18h22
  5. Comment limiter les mouvements du curseur??
    Par scorpiwolf dans le forum C++Builder
    Réponses: 9
    Dernier message: 07/07/2002, 22h09

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo