Ajouter de la transparence
Bonjour,
j'ai développé une application qui permet d'afficher un nuage de points en utilisant OpenGL et VS2008.
Dans la plupart des cas il y a des nuages qui sont totalement ou partiellement confondus donc le nuage affiché en premier sera caché derrière le second.
Pour résoudre ce problème j'ai pensé à ajouter la transparence à ma scène avec le Blending:
Code:
1 2
| glEnable(GL_BLEND);
glBlendFunc(GL_SRC_ALPHA,GL_ONE_MINUS_SRC_ALPHA); |
Mais je me trouve un peu bloqué là dessus.
j'utilise les vertexArrays pour afficher les nuages, et lorsque j'ai ajouté le blending rien ne change :aie: :aie: :aie:,
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
|
glEnableClientState(GL_COLOR_ARRAY);
glEnableClientState(GL_VERTEX_ARRAY);
glEnable(GL_BLEND);
glBlendFunc(GL_SRC_ALPHA,GL_ONE_MINUS_SRC_ALPHA);
glColorPointer(4, GL_UNSIGNED_BYTE, 0, colors);
glVertexPointer(3, GL_FLOAT, 0, vertex);
glDrawArrays(GL_LINES, 0, shared_counter);
glDisableClientState(GL_VERTEX_ARRAY);
glDisableClientState(GL_COLOR_ARRAY);
glDisable(GL_BLEND); |
Comment dois je faire pour résoudre le problème???