glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT);
glClearColor(0.0, 0.0, 0.0, 1.0);
glMatrixMode(GL_MODELVIEW);
glViewport(0, 0, 1024, 768);
glLoadIdentity();
// Betrachter
// Blick
// Y-Achse oben
gluLookAt( 0.0, 0.0, 3.0,
0.0, 0.0, 0.0,
0.0, 1.0, 0.0 );
int uniformLocation0 = -1;
int uniformLocation1 = -1;
// Use shader
glUseProgram(shaderProgramHandlePass0);
// Set uniform variablen
uniformLocation0 = glGetUniformLocationARB(shaderProgramHandlePass0, "tmpTex1");
if(-1 == uniformLocation0) {
std::cout << "Can't find tmpTex1 in Pass0" << std::endl;
}
glActiveTextureARB(GL_TEXTURE0);
glBindTexture(GL_TEXTURE_2D, tmpTex1);
glUniform1iARB(uniformLocation0, 0);
uniformLocation1 = glGetUniformLocationARB(shaderProgramHandlePass0, "tmpTex2");
if(-1 == uniformLocation1) {
std::cout << "Can't find tmpTex2 in Pass0" << std::endl;
}
glActiveTextureARB(GL_TEXTURE1);
glBindTexture(GL_TEXTURE_2D, tmpTex2);
glUniform1iARB(uniformLocation1, 1);
glBegin(GL_QUADS);
//glEnable(GL_TEXTURE_2D);
glMultiTexCoord2f(GL_TEXTURE0, 0.0, 0.0);
glMultiTexCoord2f(GL_TEXTURE1, 0.0, 0.0);
glVertex2f(-1.7f, -1.7f);
glMultiTexCoord2f(GL_TEXTURE0, 0.0, 1.0);
glMultiTexCoord2f(GL_TEXTURE1, 0.0, 1.0);
glVertex2f(-1.7f, 1.7f);
glMultiTexCoord2f(GL_TEXTURE0, 1.0, 1.0);
glMultiTexCoord2f(GL_TEXTURE1, 1.0, 1.0);
glVertex2f(1.7f, 1.7f);
glMultiTexCoord2f(GL_TEXTURE0, 1.0, 0.0);
glMultiTexCoord2f(GL_TEXTURE1, 1.0, 0.0);
glVertex2f(1.7f, -1.7f);
//glDisable(GL_TEXTURE_2D);
glEnd();
glFlush();
glutSwapBuffers();
glutPostRedisplay();