Salut à tous !
Je suis en train de me développer un moteur 3D. Donc un moment il a fallu que je l'optimise. Alors pour sa j'ai l'intention d'utiliser les VBOs et après les IBOs. Mais voilà j'ai un problème. C'est pour les materials. Étant donné que je peux dessiner tous mes triangles en une seule commande avec :
Je suis bloqué car il faut que pour chaque ou plusieurs triangle, j'attribue un material. Mais pas pour tous. Donc du coup je me retrouve dans l'obligation de trier mes triangles par material ou plutôt par couleur diffuse, ambiante, spéculaire, etc...
Code : Sélectionner tout - Visualiser dans une fenêtre à part glDrawArrays()
Mais voilà, je n'arrive pas à trouver l'algorithme.
Par ailleurs, je viens de trouver une alternative mais je suis réticent : Est-ce que c'est conseillé de mettre dans la mémoire du VBO, un vertex (contenant 3 coordonnées, 3 coordonnées de normales, 2 coordonnées de texture, 3*3 données de couleurs (RGB -> Ambiante; Diffuse; Spéculaire)) ? Sa ne fais pas un peu lourd pour chaque vertex ?
Si sa vous intéresse mon code source est disponible sur mon git.
Pouvez-vous m'aider S.V.P ?
Merci d'avance...
Partager