bonjour,
C'est la deuxieme fois que je poste pour le multitexturing mais cette fois ci ca se precise...
voila mon probleme:
J'essais , de melanger deux textures ( herbe et terre par exemple) en
prametrant de degré de melange grace a la couleur d'une troisieme
texture en niveau de gris.
voila la texture terre et la texture herbe:
je veux les melanger en parametrant le melange grace a la couleur de cette 3eme texture:
et obtenir ca:
Mais le probleme c'est que je vois pas comment faire sous opengl...
voila ce que je fais pour realiser ca, mais tout ce que j'obtiens c'est
le produit des textures 0 et 2 sur la map et non le produit de 0 et 1
avec comme facteur de melange la coulouleur de 2
donc ici la texture nom[0] est la terre
nom[1] est l'herbe
nom[2] est la texture en niveau de gris
voila le code permetrant de parametrer le mode d'application des textures:
________________________________________________________________________________
glActiveTextureARB( GL_TEXTURE0_ARB );
glEnable( GL_TEXTURE_2D );
glTexEnvi(GL_TEXTURE_ENV, GL_TEXTURE_ENV_MODE, GL_COMBINE_ARB);
glBindTexture(GL_TEXTURE_2D,nom[0]);
glTexEnvi(GL_TEXTURE_ENV, GL_SOURCE0_RGB_ARB, GL_TEXTURE);
glTexEnvi(GL_TEXTURE_ENV, GL_COMBINE_RGB_ARB, GL_MODULATE);
glActiveTextureARB( GL_TEXTURE1_ARB );
glEnable( GL_TEXTURE_2D );
glTexEnvi( GL_TEXTURE_ENV, GL_SOURCE0_RGB_ARB, GL_PREVIOUS );
glBindTexture(GL_TEXTURE_2D,nom[1]);
glTexEnvi( GL_TEXTURE_ENV, GL_SOURCE1_RGB_ARB, GL_TEXTURE );
glBindTexture(GL_TEXTURE_2D,nom[2]);
glTexEnvi( GL_TEXTURE_ENV, GL_SOURCE1_ALPHA_ARB, GL_TEXTURE );
glTexEnvi( GL_TEXTURE_ENV, GL_COMBINE_RGB_ARB, GL_MODULATE );
glTexEnvi( GL_TEXTURE_ENV,GL_COMBINE_ALPHA_ARB,GL_MODULATE );
________________________________________________________________________________