Bonjour tout le monde!
Voilà mon problème est très simple. J'ai une scene composé d'une multitue de GL_QUADS texturé et je voudrais les souder ensemble comme le ferait par exemble Enblend http://enblend.sourceforge.net/.
1)la séquence:
ne marche pas car la partie de obj_B qui n'est pas au dessu de obj_A est blendé avec le fond.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7 glBlendEquation(GL_FUNC_ADD) glBlendFunc(GL_ONE,GL_ZERO); draw(obj_A); glBlendFunc(GL_SRC_ALPHA,GL_ONE_MINUS_SRC_ALPHA); glColor3f(*, *, *, 0.5); draw(obj_B)
2)la séquence:
doit marcher mais n'est pas supporté par ma carte graphique ( il faut opengl 2.0 ).
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6 glBlendColor(0.0,0.0,0.0,0.5); glBlendEquationSeparate(GL_FUNC_ADD,GL_MAX); glBlendFuncSeparate(GL_ONE_MINUS_DST_ALPHA,GL_DST_ALPHA,GL_CONSTANT_ALPHA,GL_DST_ALPHA); draw(obj_A); draw(obj_B);
Est-ce qu'il existe un moyen simple de faire cela? c'est à dire sans les shaders ou la création de alpha mask?
Partager