Salut, salut,
j'ai des petits problèmes de performances :
j'affiche de nombreux objets formés d'une ligne et de texte
lorsque j'affiche objet par objet donc :
-Affichage de la ligne (glTranslate + DisplayList)
- glBindTexture (Texture correspondant à la police)
- glQuads (glDisplayLists : les caractères)
et ce pour chaque objet
les performances ne sont pas terribles.
Par contre si j'utilise l'algorithme :
- Afficher les lignes de tout les objets.
- glBindTexture (police)
- Affichage de tout les textes
Les performances sont trois fois meilleures !!!
J'ai aussi éssayé :
- Afficher la ligne de chaque objet
- Puis pour chaque objet :
- glBindTexture + Afficher le texte
Et les performances sont les mêmes (bonnes).
Donc j'imagine que l'implementation openGl de ma carte graphique est suffisament maline pour savoir que le glBindTexture ne fait rien puisqu'elle est déjà chargée.
Mais alors pourquoi ne le fait-elle pas dans le premier cas ? (puisque ma displayList contient juste glBegin(GL_LINES) et des glVertex donc aucun chargement de texture. )
Partager