Contents /
Previous /
Next
Background Texture
Draw background first as texture on a 2D rectange
with an ortho projection then switch back to 3D:
public void drawBackground( GL gl)
{
gl.glMatrixMode(GL.GL_PROJECTION);
gl.glPushMatrix();
gl.glOrtho(0, 1, 0, 1, 0, 1);
gl.glMatrixMode(GL.GL_MODELVIEW);
gl.glPushMatrix();
gl.glLoadIdentity();
// No depth buffer writes for background.
gl.glDepthMask( false );
gl.glBindTexture( GL.GL_TEXTURE_2D, textureId[4] );
gl.glBegin( GL.GL_QUADS ); {
gl.glTexCoord2f( 0f, 0f );
gl.glVertex2f( 0, 0 );
gl.glTexCoord2f( 0f, 1f );
gl.glVertex2f( 0, 1f );
gl.glTexCoord2f( 1f, 1f );
gl.glVertex2f( 1f, 1f );
gl.glTexCoord2f( 1f, 0f );
gl.glVertex2f( 1f, 0 );
} gl.glEnd();
gl.glDepthMask( true );
gl.glPopMatrix();
gl.glMatrixMode(GL.GL_PROJECTION);
gl.glPopMatrix();
gl.glMatrixMode(GL.GL_MODELVIEW);
}