I come to you once again, O Dark Photon, for help. Tried using shaders for multitexturing; didn’t seem to work. I followed the Lighthouse3D tutorial on multitexturing using shaders:-
http://www.lighthouse3d.com/opengl/glsl/index.php?textureMulti
I’m drawing quads like this:-
//Draw the back quad
glActiveTextureARB(GL_TEXTURE0_ARB);
glBindTexture(GL_TEXTURE_2D, this->textures[0]->texture);
glEnable(GL_TEXTURE_2D);
glActiveTextureARB(GL_TEXTURE1_ARB);
glBindTexture(GL_TEXTURE_2D, this->textures[1]->texture);
glEnable(GL_TEXTURE_2D);
glBegin(GL_QUADS);
glMultiTexCoord2f(GL_TEXTURE0_ARB, 1.0, 1.0); glMultiTexCoord2f(GL_TEXTURE1_ARB, 1.0, 1.0); glVertex3f(500.0f, 500.0f, -500.0);
glMultiTexCoord2f(GL_TEXTURE0_ARB, 0.0, 1.0); glMultiTexCoord2f(GL_TEXTURE1_ARB, 0.0, 1.0); glVertex3f(-500.0f, 500.0f, -500.0);
glMultiTexCoord2f(GL_TEXTURE0_ARB, 0.0, 0.0); glMultiTexCoord2f(GL_TEXTURE1_ARB, 0.0, 0.0); glVertex3f(-500.0f, -500.0f, -500.0);
glMultiTexCoord2f(GL_TEXTURE0_ARB, 1.0, 0.0); glMultiTexCoord2f(GL_TEXTURE1_ARB, 1.0, 0.0); glVertex3f(500.0f, -500.0f, -500.0);
glEnd();
glActiveTextureARB(GL_TEXTURE0_ARB);
glDisable(GL_TEXTURE_2D);
glActiveTextureARB(GL_TEXTURE1_ARB);
glDisable(GL_TEXTURE_2D);
//Draw the bottom quad
glActiveTextureARB(GL_TEXTURE2_ARB);
glBindTexture(GL_TEXTURE_2D, this->textures[1]->texture);
glEnable(GL_TEXTURE_2D);
glActiveTextureARB(GL_TEXTURE3_ARB);
glBindTexture(GL_TEXTURE_2D, this->textures[2]->texture);
glEnable(GL_TEXTURE_2D);
glBegin(GL_QUADS);
glMultiTexCoord2f(GL_TEXTURE2_ARB, 1.0, 1.0); glMultiTexCoord2f(GL_TEXTURE3_ARB, 1.0, 1.0); glVertex3f(500.0f, -500.0f, -500.0);
glMultiTexCoord2f(GL_TEXTURE2_ARB, 0.0, 1.0); glMultiTexCoord2f(GL_TEXTURE3_ARB, 0.0, 1.0); glVertex3f(-500.0f, -500.0f, -500.0);
glMultiTexCoord2f(GL_TEXTURE2_ARB, 0.0, 0.0); glMultiTexCoord2f(GL_TEXTURE3_ARB, 0.0, 0.0); glVertex3f(-500.0f, -500.0f, 500.0);
glMultiTexCoord2f(GL_TEXTURE2_ARB, 1.0, 0.0); glMultiTexCoord2f(GL_TEXTURE3_ARB, 1.0, 0.0); glVertex3f(500.0f, -500.0f, 500.0);
glEnd();
glActiveTextureARB(GL_TEXTURE2_ARB);
glDisable(GL_TEXTURE_2D);
glActiveTextureARB(GL_TEXTURE3_ARB);
glDisable(GL_TEXTURE_2D);
I’m setting the shader samplers “tex” and “l3d” mentioned in the tutorial, using glUniform1f, to 0 and 1, as the texture coordinates. Somehow, I see no visible result. Is there something I’m doing awfully wrong?