Hi,
I am trying to mix 2 textures. 100% of the first texture + 30% of the second
texture. I wrote the following code, but I get bad results. Do you know
where is my mistake?
glActiveTexture(GL_TEXTURE0);
glEnable(GL_TEXTURE_RECTANGLE_EXT);
glBindTexture(GL_TEXTURE_RECTANGLE_EXT, textures_rect[0]);
glActiveTexture(GL_TEXTURE1);
glDisable(GL_TEXTURE_RECTANGLE_EXT);
glEnable(GL_TEXTURE_2D);
glBindTexture(GL_TEXTURE_2D, textures_2D[0]);
glTexEnvf(GL_TEXTURE_ENV, GL_TEXTURE_ENV_MODE, GL_COMBINE);
glTexEnvf(GL_TEXTURE_ENV, GL_COMBINE_RGB, GL_INTERPOLATE);
glTexEnvf(GL_TEXTURE_ENV, GL_SOURCE0_RGB, GL_TEXTURE0);
glTexEnvf(GL_TEXTURE_ENV, GL_OPERAND0_RGB, GL_SRC_COLOR);
// Point A
GLfloat blendColor[4] = {1.0, 1.0, 1.0, 0.3};
glTexEnvfv(GL_TEXTURE_ENV, GL_TEXTURE_ENV_COLOR, blendColor);
glTexEnvf(GL_TEXTURE_ENV, GL_SOURCE1_RGB, GL_CONSTANT);
glTexEnvf(GL_TEXTURE_ENV, GL_OPERAND1_RGB, GL_SRC_ALPHA);
// Point B
glTexEnvf(GL_TEXTURE_ENV, GL_SOURCE2_RGB, GL_TEXTURE1);
glTexEnvf(GL_TEXTURE_ENV, GL_OPERAND2_RGB, GL_SRC_COLOR);
I even inverted the point A with the point B but I get bad results again.
Best Regards