Précédent   Forum du club des développeurs et IT Pro > Applications > Développement 2D, 3D et Jeux > API graphiques > SFML
SFML Forum d'entraide sur l'API SFML
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse
 
Outils de la discussion
Publicité
'
Vieux 14/06/2012, 21h43   #1
Lintel-oo
Membre habitué
 
Homme
Étudiant
Inscription : avril 2011
Messages : 239
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : France, Meurthe et Moselle (Lorraine)

Informations professionnelles :
Activité : Étudiant

Informations forums :
Inscription : avril 2011
Messages : 239
Points : 128
Points : 128
Par défaut FPS très bas

Bonjour à tous,

Je me heurte aujourd'hui à un problème vraiment incongru. En fait, en codant une petit jeu consistant à envoyer des missiles sur la maison adverse sur un terrain généré aléatoirement, les fps varient très bizarrement.

En effet, bien que l'on puisse pour l'instant (très sommairement) envoyer des missiles, l'application, tournant à une moyenne normale définie par setFramerateLimit (60) tourne à 1 fps au bout d'exactement 16 secondes.
Vous avez bien lu : 1 FPS à partir de 16 secondes tout pile sachant que l'affichage consiste simplement en 2 maisons 3 sprites de terrain et 1 ou 0 missile (voir image).

Je précise que j'utilise 2 classes singleton pour gérer notamment les missiles et les images (on sait jamais dès fois que le problème puisse venir de là).

J'ajoute également que même en supprimant toutes les fonctions de dessins et toutes les fonctions d'update le fps passe à 1 à 16 secondes.

Cela m'est totalement incompréhensible car je ne vois aucun endroit susceptible de ralentir ledit FPS.

Merci pour votre aide, si vous voulez du code je peux vous en donner mais mes classes sont nombreuses, intriquées et non commentées
Images attachées
Type de fichier : png probleme1FPS.png (252,4 Ko, 13 affichages)
Type de fichier : png probleme1FPS_.png (548,1 Ko, 11 affichages)
Lintel-oo est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 14/06/2012, 23h46   #2
gbdivers
Responsable C++

 
Homme Guillaume Belz
Biochimiste
Inscription : novembre 2008
Messages : 5 314
Détails du profil
Informations personnelles :
Nom : Homme Guillaume Belz
Âge : 37
Localisation : France, Rhône (Rhône Alpes)

Informations professionnelles :
Activité : Biochimiste
Secteur : Santé

Informations forums :
Inscription : novembre 2008
Messages : 5 314
Points : 19 509
Points : 19 509
Bonsoir

Tu attends quoi comme aide avec les éléments que tu donnes ? A part te dire que cela ne vient pas de la sfml et donc que tu as des erreurs dans le code, je sais pas trop
__________________
Vous souhaitez rejoindre l'équipe de bénévoles qui fait vivre Developpez (traduction, rédaction, modération) ? Contactez moi par MP.

Ma page personnelle avec la liste de mes articles - Mon blog sur le C++, Qt et les GPU.

Je suis régulièrement sur le chat pour les questions C++/Qt.

Apprendre Qt 5 : vidéos d'installation (YouTube), extraites du livre Créer des applications avec Qt 5.
gbdivers est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 15/06/2012, 01h57   #3
Lintel-oo
Membre habitué
 
Homme
Étudiant
Inscription : avril 2011
Messages : 239
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : France, Meurthe et Moselle (Lorraine)

Informations professionnelles :
Activité : Étudiant

Informations forums :
Inscription : avril 2011
Messages : 239
Points : 128
Points : 128
Oui c'est vrai que le problème est tellement incongru que je ne vois pas quels éléments définir pour situer l'origine.
D'ailleurs je suis actuellement sur linux et là le problème a disparu !
Je réessaierai demain sur windows
Lintel-oo est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 15/06/2012, 08h45   #4
LittleWhite
Responsable 2D/3D/Jeux


 
Avatar de LittleWhite
 
Homme Alexandre Laurent
Ingénieur développement logiciels
Inscription : mai 2008
Messages : 10 384
Détails du profil
Informations personnelles :
Nom : Homme Alexandre Laurent
Localisation : France

Informations professionnelles :
Activité : Ingénieur développement logiciels

Informations forums :
Inscription : mai 2008
Messages : 10 384
Points : 39 582
Points : 39 582
Bonjour,

Peut être qu'un sleep se cache et que du coup, il ralentit chaque image ?
Sinon, désactivez le setFramerateLimit(). Peut être que vous en avez mis deux ?

Vous pouvez aussi tenter de déboguer avec des std::cout ou avec un débogueur. Ou alors, peut être avec un profileur.
__________________
Vous souhaitez participer à la rubrique 2D / 3D / Jeux ? Contactez-moi
La rubrique a aussi un blog !

Ma page sur DVP
Mon Portfolio

Qui connaît l'erreur, connaît la solution.
LittleWhite est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 15/06/2012, 21h13   #5
Lintel-oo
Membre habitué
 
Homme
Étudiant
Inscription : avril 2011
Messages : 239
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : France, Meurthe et Moselle (Lorraine)

Informations professionnelles :
Activité : Étudiant

Informations forums :
Inscription : avril 2011
Messages : 239
Points : 128
Points : 128
Bon eh bien en fait le problème s'est résolu lorsque j'ai modifié certaines parties de mon code d'ailleurs je ne suis même pas sur que c'est cela qui l'a résolu car je n'ai pas recompilé le programme au lancement de code blocks

Merci quand même pour le temps que vous avez pu passer sur ce sujet somme toute assez inutile
Lintel-oo est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Cette discussion est résolue.
Outils de la discussion

Navigation rapide


Fuseau horaire GMT +2. Il est actuellement 06h00.


 
 
 
 
Partenaires

Hébergement Web