How can I read from multiple textures in an OpenGL ES 2 shader?
        Posted  
        
            by 
                Peyman Tahghighi
            
        on Game Development
        
        See other posts from Game Development
        
            or by Peyman Tahghighi
        
        
        
        Published on 2014-03-26T10:20:53Z
        Indexed on 
            2014/08/24
            4:34 UTC
        
        
        Read the original article
        Hit count: 284
        
opengl-es2
|multitexturing
How can I enable more than one texture in OpenGL ES 2 so that I can sample from all of them in my shader? For example, I'm trying to read from two different textures in my shader for the player's car.
This is how I'm currently dealing with the texture for my car:
glActiveTexture(GL_TEXTURE0);
glBindTexture(GL_TEXTURE_2D, this->texture2DObj);
glUniform1i(1, 0);
glBindBuffer(GL_ARRAY_BUFFER, this->vertexBuffer);
glEnableVertexAttribArray(0);
int offset = 0;
glVertexAttribPointer(0, 3, GL_FLOAT, GL_FALSE, this->vertexBufferSize,(const void *)offset);
offset += 3 * sizeof(GLfloat);
glEnableVertexAttribArray(1);
glVertexAttribPointer(1, 2, GL_FLOAT, GL_FALSE, this->vertexBufferSize, (const void*)offset);
glBindBuffer(GL_ELEMENT_ARRAY_BUFFER, this->indexBuffer);
glDrawElements(GL_TRIANGLES, this->indexBufferSize, GL_UNSIGNED_SHORT, 0);
glDisableVertexAttribArray(0);
glDisableVertexAttribArray(1);
        © Game Development or respective owner