Forum de la communauté SFML

Aide => Graphique => Discussion démarrée par: goestrip le Avril 20, 2012, 09:01:25 am

Titre: [SFML 1.6] et OpenGL: Basse Performance à l'affichage de sf:String
Posté par: goestrip le Avril 20, 2012, 09:01:25 am
Bonjour,

j'utilise une sf::RenderWindow comme contexte opengl pour dessiner des choses, et entre autre, afficher du texte avec des sf::String. Mais lorsque je suis en debug, j'ai de grosse baisse de FPS dès que j'affiche du texte.

Pour essayer d'économiser du temps je fais:
m_strLabel = sf::String("", sf::Font::GetDefaultFont(), 16.0f);dans le constructeur

puis juste un
m_strLabel.SetText(strInfo.str());
m_strLabel.SetPosition((float)m_fXtext + SIZE_X/1.5f+ 2.0f, 1024.0f - (float)m_fYText + 5.0f);
       
pWindow->PreserveOpenGLStates(true);
pWindow->Draw(m_strLabel);
pWindow->PreserveOpenGLStates(false);
pour afficher le contenu

Je suis conscient que les PresereOpenGlStates bouffent du temps, mais sans, c'est la merde  ::)
Est ce qu'il y aurait des options opengl particulieres (blend ou autre...) ou dans les sf::String qu'il faudrait / ou pas,  activer ?

Merci d'avance
Titre: Re : [SFML 1.6] et OpenGL: Basse Performance à l'affichage de sf:String
Posté par: Laurent le Avril 20, 2012, 09:39:03 am
PreserveOpenGLStates doit être appelé une seule fois au tout début.

Sinon rien d'anormal dans ce petit morceau de code, ça devrait aller. Mais tant que ça roule en release, ça ne sert à rien de s'alarmer pour les perfs en debug.