private void DrawSea() { GL.glDisable(GL.GL_LIGHTING); float dup = GlobalProperties.seaDuplicates; GL.glEnable(GL.GL_TEXTURE_2D); GL.glColor4f(1.0f, 1.0f, 1.0f, 0.3f); GL.glBindTexture(GL.GL_TEXTURE_2D, Textures[0]); GL.glBegin(GL.GL_QUADS); float cor = GlobalProperties.seaSize / 2; GL.glTexCoord2f(0, 0); GL.glVertex3f(-cor, -cor, 0.0f); GL.glTexCoord2f(0, dup); GL.glVertex3f(cor, -cor, 0.0f); GL.glTexCoord2f(dup, dup); GL.glVertex3f(cor, cor, 0.0f); GL.glTexCoord2f(dup, 0); GL.glVertex3f(-cor, cor, 0.0f); GL.glEnd(); GL.glDisable(GL.GL_TEXTURE_2D); GL.glEnable(GL.GL_LIGHTING); }
void DrawGrid(float gridsize) { //floor texture GL.glEnable(GL.GL_TEXTURE_2D); GL.glBindTexture(GL.GL_TEXTURE_2D, Textures[0]); GL.glBegin(GL.GL_QUADS); GL.glColor3f(1f, 1f, 1f);//white clear //left side GL.glNormal3f(0.0f, 1.0f, 0.0f); GL.glTexCoord2f(0, 0); GL.glVertex3f(0, 0, 0); GL.glTexCoord2f(0, 1); GL.glVertex3f(-gridsize, 0, 0); GL.glTexCoord2f(1f, 1f); GL.glVertex3f(-gridsize, 0, -gridsize * 2); GL.glTexCoord2f(1f, 0); GL.glVertex3f(0, 0, -gridsize * 2); //right side GL.glNormal3f(0.0f, 1.0f, 0.0f); GL.glTexCoord2f(0, 0); GL.glVertex3f(0, 0, 0); GL.glTexCoord2f(0, 1); GL.glVertex3f(gridsize, 0, 0); GL.glTexCoord2f(1f, 1f); GL.glVertex3f(gridsize, 0, -gridsize * 2); GL.glTexCoord2f(1f, 0); GL.glVertex3f(0, 0, -gridsize * 2); GL.glEnd(); GL.glDisable(GL.GL_TEXTURE_2D); }
private void drawSquareSurface(float width, float height, float depth, eAxis axis) { GL.glBegin(GL.GL_QUADS); // if there is no texture bind, the glTexCoord2f do nothing switch (axis) { case eAxis.X: GL.glTexCoord2f(0.0f, 0.0f); GL.glVertex3f(width, 0, 0); GL.glTexCoord2f(1.0f, 0.0f); GL.glVertex3f(width, 0, depth); GL.glTexCoord2f(1.0f, 1.0f); GL.glVertex3f(width, height, depth); GL.glTexCoord2f(0.0f, 1.0f); GL.glVertex3f(width, height, 0); break; case eAxis.Y: GL.glVertex3f(0, height, 0); GL.glVertex3f(0, height, depth); GL.glVertex3f(width, height, depth); GL.glVertex3f(width, height, 0); break; case eAxis.Z: GL.glTexCoord2f(0.0f, 0.0f); GL.glVertex3f(0, 0, depth); GL.glTexCoord2f(0.0f, 1.0f); GL.glVertex3f(0, height, depth); GL.glTexCoord2f(1.0f, 1.0f); GL.glVertex3f(width, height, depth); GL.glTexCoord2f(1.0f, 0.0f); GL.glVertex3f(width, 0, depth); break; } GL.glEnd(); }
private void drawCubeAndPasteTexture(float i_Height) { GL.glBegin(GL.GL_QUADS); GL.glColor3f(1.0f, 1.0f, 1.0f); // bug fix //Back side GL.glTexCoord2f(0.25f, 0.0f); GL.glVertex3f(0.0f, 0.0f + i_Height, 0.0f); GL.glTexCoord2f(0.0f, 0.0f); GL.glVertex3f(1.0f, 0.0f + i_Height, 0.0f); GL.glTexCoord2f(0.0f, 1.0f); GL.glVertex3f(1.0f, 1.0f + i_Height, 0.0f); GL.glTexCoord2f(0.25f, 1.0f); GL.glVertex3f(0.0f, 1.0f + i_Height, 0.0f); //Left side GL.glTexCoord2f(0.25f, 0.0f); GL.glVertex3f(0.0f, 0.0f + i_Height, 0.0f); GL.glTexCoord2f(0.5f, 0.0f); GL.glVertex3f(0.0f, 0.0f + i_Height, 1.0f); GL.glTexCoord2f(0.5f, 1.0f); GL.glVertex3f(0.0f, 1.0f + i_Height, 1.0f); GL.glTexCoord2f(0.25f, 1.0f); GL.glVertex3f(0.0f, 1.0f + i_Height, 0.0f); //Right side GL.glTexCoord2f(1.0f, 0.0f); GL.glVertex3f(1.0f, 0.0f + i_Height, 0.0f); GL.glTexCoord2f(0.75f, 0.0f); GL.glVertex3f(1.0f, 0.0f + i_Height, 1.0f); GL.glTexCoord2f(0.75f, 1.0f); GL.glVertex3f(1.0f, 1.0f + i_Height, 1.0f); GL.glTexCoord2f(1.0f, 1.0f); GL.glVertex3f(1.0f, 1.0f + i_Height, 0.0f); //FrontSide GL.glTexCoord2f(0.5f, 0.0f); GL.glVertex3f(0.0f, 0.0f + i_Height, 1.0f); GL.glTexCoord2f(0.75f, 0.0f); GL.glVertex3f(1.0f, 0.0f + i_Height, 1.0f); GL.glTexCoord2f(0.75f, 1.0f); GL.glVertex3f(1.0f, 1.0f + i_Height, 1.0f); GL.glTexCoord2f(0.5f, 1.0f); GL.glVertex3f(0.0f, 1.0f + i_Height, 1.0f); GL.glEnd(); }
void DrawGrid(float gridsize, bool sky) { float h = 0; //floor texture GL.glEnable(GL.GL_TEXTURE_2D); if (sky) { GL.glBindTexture(GL.GL_TEXTURE_2D, Textures[6]); } else { GL.glBindTexture(GL.GL_TEXTURE_2D, Textures[0]); } GL.glBegin(GL.GL_QUADS); GL.glColor3f(1f, 1f, 1f);//white clear //left side if (sky) { h = 10; GL.glNormal3f(0.0f, -1.0f, 0.0f); } else { GL.glNormal3f(0.0f, 1.0f, 0.0f); } GL.glTexCoord2f(0, 0); GL.glVertex3f(0, h, 0); GL.glTexCoord2f(0, 1); GL.glVertex3f(-gridsize, h, 0); GL.glTexCoord2f(1f, 1f); GL.glVertex3f(-gridsize, h, -gridsize * 2); GL.glTexCoord2f(1f, 0); GL.glVertex3f(0, h, -gridsize * 2); //right side if (sky) { GL.glNormal3f(0.0f, -1.0f, 0.0f); } else { GL.glNormal3f(0.0f, 1.0f, 0.0f); } GL.glTexCoord2f(0, 0); GL.glVertex3f(0, h, 0); GL.glTexCoord2f(0, 1); GL.glVertex3f(gridsize, h, 0); GL.glTexCoord2f(1f, 1f); GL.glVertex3f(gridsize, h, -gridsize * 2); GL.glTexCoord2f(1f, 0); GL.glVertex3f(0, h, -gridsize * 2); GL.glEnd(); GL.glDisable(GL.GL_TEXTURE_2D); }
void DrawTexturedCube() { float big = 1.0f; float small = big; // front GL.glBindTexture(GL.GL_TEXTURE_2D, cubeMapTextures[0]); GL.glBegin(GL.GL_QUADS); GL.glTexCoord2f(0.0f, 0.0f); GL.glVertex3f(-big, -big, big); GL.glTexCoord2f(1.0f, 0.0f); GL.glVertex3f(big, -big, big); GL.glTexCoord2f(1.0f, 1.0f); GL.glVertex3f(big, big, big); GL.glTexCoord2f(0.0f, 1.0f); GL.glVertex3f(-big, big, big); GL.glEnd(); // back GL.glBindTexture(GL.GL_TEXTURE_2D, cubeMapTextures[1]); GL.glBegin(GL.GL_QUADS); GL.glTexCoord2f(0.0f, 0.0f); GL.glVertex3f(small, -small, -small); GL.glTexCoord2f(1.0f, 0.0f); GL.glVertex3f(-small, -small, -small); GL.glTexCoord2f(1.0f, 1.0f); GL.glVertex3f(-small, small, -small); GL.glTexCoord2f(0.0f, 1.0f); GL.glVertex3f(small, small, -small); GL.glEnd(); // left GL.glBindTexture(GL.GL_TEXTURE_2D, cubeMapTextures[2]); GL.glBegin(GL.GL_QUADS); GL.glTexCoord2f(0.0f, 0.0f); GL.glVertex3f(-small, -small, -small); GL.glTexCoord2f(1.0f, 0.0f); GL.glVertex3f(-big, -big, big); GL.glTexCoord2f(1.0f, 1.0f); GL.glVertex3f(-big, big, big); GL.glTexCoord2f(0.0f, 1.0f); GL.glVertex3f(-small, small, -small); GL.glEnd(); // right GL.glBindTexture(GL.GL_TEXTURE_2D, cubeMapTextures[3]); GL.glBegin(GL.GL_QUADS); GL.glTexCoord2f(0.0f, 0.0f); GL.glVertex3f(big, -big, big); GL.glTexCoord2f(1.0f, 0.0f); GL.glVertex3f(small, -small, -small); GL.glTexCoord2f(1.0f, 1.0f); GL.glVertex3f(small, small, -small); GL.glTexCoord2f(0.0f, 1.0f); GL.glVertex3f(big, big, big); GL.glEnd(); // top GL.glBindTexture(GL.GL_TEXTURE_2D, cubeMapTextures[4]); GL.glBegin(GL.GL_QUADS); GL.glTexCoord2f(0.0f, 0.0f); GL.glVertex3f(-big, big, big); GL.glTexCoord2f(1.0f, 0.0f); GL.glVertex3f(big, big, big); GL.glTexCoord2f(1.0f, 1.0f); GL.glVertex3f(small, small, -small); GL.glTexCoord2f(0.0f, 1.0f); GL.glVertex3f(-small, small, -small); GL.glEnd(); // bottom GL.glBindTexture(GL.GL_TEXTURE_2D, cubeMapTextures[5]); GL.glBegin(GL.GL_QUADS); GL.glTexCoord2f(0.0f, 0.0f); GL.glVertex3f(-small, -small, -small); GL.glTexCoord2f(1.0f, 0.0f); GL.glVertex3f(small, -small, -small); GL.glTexCoord2f(1.0f, 1.0f); GL.glVertex3f(big, -big, big); GL.glTexCoord2f(0.0f, 1.0f); GL.glVertex3f(-big, -big, big); GL.glEnd(); }
//! TEXTURE CUBE b //Draws our textured cube, VERY simple. Notice that the faces are constructed //in a counter-clockwise order. If they were done in a clockwise order you would //have to use the glFrontFace() function. void DrawTexturedCube() { // front GL.glBindTexture(GL.GL_TEXTURE_2D, Textures[0]); GL.glBegin(GL.GL_QUADS); GL.glTexCoord2f(0.0f, 0.0f); GL.glVertex3f(-40.0f, -40.0f, 40.0f); GL.glTexCoord2f(1.0f, 0.0f); GL.glVertex3f(40.0f, -40.0f, 40.0f); GL.glTexCoord2f(1.0f, 1.0f); GL.glVertex3f(40.0f, 40.0f, 40.0f); GL.glTexCoord2f(0.0f, 1.0f); GL.glVertex3f(-40.0f, 40.0f, 40.0f); GL.glEnd(); // back GL.glBindTexture(GL.GL_TEXTURE_2D, Textures[1]); GL.glBegin(GL.GL_QUADS); GL.glTexCoord2f(0.0f, 0.0f); GL.glVertex3f(40.0f, -40.0f, -40.0f); GL.glTexCoord2f(1.0f, 0.0f); GL.glVertex3f(-40.0f, -40.0f, -40.0f); GL.glTexCoord2f(1.0f, 1.0f); GL.glVertex3f(-40.0f, 40.0f, -40.0f); GL.glTexCoord2f(0.0f, 1.0f); GL.glVertex3f(40.0f, 40.0f, -40.0f); GL.glEnd(); // left GL.glBindTexture(GL.GL_TEXTURE_2D, Textures[2]); GL.glBegin(GL.GL_QUADS); GL.glTexCoord2f(0.0f, 0.0f); GL.glVertex3f(-40.0f, -40.0f, -40.0f); GL.glTexCoord2f(1.0f, 0.0f); GL.glVertex3f(-40.0f, -40.0f, 40.0f); GL.glTexCoord2f(1.0f, 1.0f); GL.glVertex3f(-40.0f, 40.0f, 40.0f); GL.glTexCoord2f(0.0f, 1.0f); GL.glVertex3f(-40.0f, 40.0f, -40.0f); GL.glEnd(); // right GL.glBindTexture(GL.GL_TEXTURE_2D, Textures[3]); GL.glBegin(GL.GL_QUADS); GL.glTexCoord2f(0.0f, 0.0f); GL.glVertex3f(40.0f, -40.0f, 40.0f); GL.glTexCoord2f(1.0f, 0.0f); GL.glVertex3f(40.0f, -40.0f, -40.0f); GL.glTexCoord2f(1.0f, 1.0f); GL.glVertex3f(40.0f, 40.0f, -40.0f); GL.glTexCoord2f(0.0f, 1.0f); GL.glVertex3f(40.0f, 40.0f, 40.0f); GL.glEnd(); // top GL.glBindTexture(GL.GL_TEXTURE_2D, Textures[4]); GL.glBegin(GL.GL_QUADS); GL.glTexCoord2f(0.0f, 0.0f); GL.glVertex3f(-40.0f, 40.0f, 40.0f); GL.glTexCoord2f(1.0f, 0.0f); GL.glVertex3f(40.0f, 40.0f, 40.0f); GL.glTexCoord2f(1.0f, 1.0f); GL.glVertex3f(40.0f, 40.0f, -40.0f); GL.glTexCoord2f(0.0f, 1.0f); GL.glVertex3f(-40.0f, 40.0f, -40.0f); GL.glEnd(); // bottom GL.glBindTexture(GL.GL_TEXTURE_2D, Textures[5]); GL.glBegin(GL.GL_QUADS); GL.glTexCoord2f(0.0f, 0.0f); GL.glVertex3f(-40.0f, -40.0f, -40.0f); GL.glTexCoord2f(1.0f, 0.0f); GL.glVertex3f(40.0f, -40.0f, -40.0f); GL.glTexCoord2f(1.0f, 1.0f); GL.glVertex3f(40.0f, -40.0f, 40.0f); GL.glTexCoord2f(0.0f, 1.0f); GL.glVertex3f(-40.0f, -40.0f, 40.0f); GL.glEnd(); }
void DrawTexturedCube() { GL.glEnable(GL.GL_TEXTURE_2D); GL.glDisable(GL.GL_BLEND); GL.glColor3d(1, 1, 1); GL.glDisable(GL.GL_LIGHTING); // front GL.glBindTexture(GL.GL_TEXTURE_2D, Textures[0]); GL.glBegin(GL.GL_QUADS); GL.glTexCoord2f(0.0f, 0.0f); GL.glVertex3f(300.0f, -0.01f, 300.0f); GL.glTexCoord2f(1.0f, 0.0f); GL.glVertex3f(-300.0f, -0.01f, 300.0f); GL.glTexCoord2f(1.0f, 1.0f); GL.glVertex3f(-300.0f, 300.0f, 300.0f); GL.glTexCoord2f(0.0f, 1.0f); GL.glVertex3f(300.0f, 300.0f, 300.0f); GL.glEnd(); // back GL.glBindTexture(GL.GL_TEXTURE_2D, Textures[0]); GL.glBegin(GL.GL_QUADS); GL.glTexCoord2f(0.0f, 0.0f); GL.glVertex3f(-300.0f, -0.01f, -300.0f); GL.glTexCoord2f(1.0f, 0.0f); GL.glVertex3f(300.0f, -0.01f, -300.0f); GL.glTexCoord2f(1.0f, 1.0f); GL.glVertex3f(300.0f, 300.0f, -300.0f); GL.glTexCoord2f(0.0f, 1.0f); GL.glVertex3f(-300.0f, 300.0f, -300.0f); GL.glEnd(); // left GL.glBindTexture(GL.GL_TEXTURE_2D, Textures[2]); GL.glBegin(GL.GL_QUADS); GL.glTexCoord2f(0.0f, 0.0f); GL.glVertex3f(-300.0f, -0.01f, 300.0f); GL.glTexCoord2f(1.0f, 0.0f); GL.glVertex3f(-300.0f, -0.01f, -300.0f); GL.glTexCoord2f(1.0f, 1.0f); GL.glVertex3f(-300.0f, 300.0f, -300.0f); GL.glTexCoord2f(0.0f, 1.0f); GL.glVertex3f(-300.0f, 300.0f, 300.0f); GL.glEnd(); // right GL.glBindTexture(GL.GL_TEXTURE_2D, Textures[3]); GL.glBegin(GL.GL_QUADS); GL.glTexCoord2f(0.0f, 0.0f); GL.glVertex3f(300.0f, -0.01f, -300.0f); GL.glTexCoord2f(1.0f, 0.0f); GL.glVertex3f(300.0f, -0.01f, 300.0f); GL.glTexCoord2f(1.0f, 1.0f); GL.glVertex3f(300.0f, 300.0f, 300.0f); GL.glTexCoord2f(0.0f, 1.0f); GL.glVertex3f(300.0f, 300.0f, -300.0f); GL.glEnd(); // top GL.glBindTexture(GL.GL_TEXTURE_2D, Textures[4]); GL.glBegin(GL.GL_QUADS); GL.glTexCoord2f(0.0f, 0.0f); GL.glVertex3f(-300.0f, 300.0f, -300.0f); GL.glTexCoord2f(1.0f, 0.0f); GL.glVertex3f(300.0f, 300.0f, -300.0f); GL.glTexCoord2f(1.0f, 1.0f); GL.glVertex3f(300.0f, 300.0f, 300.0f); GL.glTexCoord2f(0.0f, 1.0f); GL.glVertex3f(-300.0f, 300.0f, 300.0f); GL.glEnd(); GL.glDisable(GL.GL_TEXTURE_2D); GL.glEnable(GL.GL_BLEND); }
public void DrawWithTexture(int multMirrorPicture, bool isFrontOrbackWall) { // multMirrorPicture == -1 : mirror pictures uint swapPictures = 0; // if swapPictures == 0 picture left = picture right if (multMirrorPicture == -1) { swapPictures = 1; } else { swapPictures = 0; } if (isFrontOrbackWall) { if (this.textureId == 12) { GL.glBindTexture(GL.GL_TEXTURE_2D, this.textureId + swapPictures); } else if (this.textureId == 13) { GL.glBindTexture(GL.GL_TEXTURE_2D, this.textureId - swapPictures); } } else { GL.glBindTexture(GL.GL_TEXTURE_2D, this.textureId); } GL.glBegin(GL.GL_QUADS); if (isFrontOrbackWall) { GL.glTexCoord2f(0.0f, 0.0f); GL.glVertex3f(multMirrorPicture * v1.X, v1.Y, v1.Z); GL.glTexCoord2f(1.0f, 0.0f); GL.glVertex3f(multMirrorPicture * v2.X, v2.Y, v2.Z); GL.glTexCoord2f(1.0f, 1.0f); GL.glVertex3f(multMirrorPicture * v3.X, v3.Y, v3.Z); GL.glTexCoord2f(0.0f, 1.0f); GL.glVertex3f(multMirrorPicture * v4.X, v4.Y, v4.Z); } else { GL.glTexCoord2f(0.0f, 0.0f); GL.glVertex3f(v1.X, v1.Y, multMirrorPicture * v1.Z); GL.glTexCoord2f(1.0f, 0.0f); GL.glVertex3f(v2.X, v2.Y, multMirrorPicture * v2.Z); GL.glTexCoord2f(1.0f, 1.0f); GL.glVertex3f(v3.X, v3.Y, multMirrorPicture * v3.Z); GL.glTexCoord2f(0.0f, 1.0f); GL.glVertex3f(v4.X, v4.Y, multMirrorPicture * v4.Z); } GL.glEnd(); }
void drawFloorTextured() { GL.glEnable(GL.GL_TEXTURE_2D); GL.glDisable(GL.GL_BLEND); GL.glColor3d(1, 1, 1); GL.glDisable(GL.GL_LIGHTING); GL.glBindTexture(GL.GL_TEXTURE_2D, Textures[5]); GL.glBegin(GL.GL_QUADS); GL.glNormal3f(0, 1, 0); GL.glTexCoord2f(0.0f, 0.0f); GL.glVertex3f(-200, -0.01f, 200); GL.glTexCoord2f(1.0f, 0.0f); GL.glVertex3f(200, -0.01f, 200); GL.glTexCoord2f(1.0f, 1.0f); GL.glVertex3f(200, -0.01f, -200); GL.glTexCoord2f(0.0f, 1.0f); GL.glVertex3f(-200, -0.01f, -200); GL.glEnd(); GL.glDisable(GL.GL_TEXTURE_2D); GL.glEnable(GL.GL_BLEND); GL.glEnable(GL.GL_LIGHTING); }
void drawground() { { GL.glBindTexture(GL.GL_TEXTURE_2D, TextureGround[0]); GL.glNormal3f(0.0f, -1.0f, 0.0f); GL.glBegin(GL.GL_QUADS); GL.glTexCoord2f(0.0f, 0.0f); GL.glVertex3d(-20, -20, ground[0, 2] - 0.05); GL.glTexCoord2f(1.0f, 0.0f); GL.glVertex3d(-20, 20, ground[0, 2] - 0.05); GL.glTexCoord2f(1.0f, 1.0f); GL.glVertex3d(20, 20, ground[0, 2] - 0.05); GL.glTexCoord2f(0.0f, 1.0f); GL.glVertex3d(20, -20, ground[0, 2] - 0.05); GL.glColor3f(0, 0, 0); GL.glEnd(); } }
public void DrawTexturedCube() { GL.glScaled(55, 55, 55); { // front GL.glBindTexture(GL.GL_TEXTURE_2D, Textures[0]); GL.glBegin(GL.GL_QUADS); GL.glNormal3f(0.0f, 0.0f, 1.0f); GL.glTexCoord2f(0.0f, 0.0f); GL.glVertex3f(-1.0f, -1.0f, 1.0f); GL.glTexCoord2f(1.0f, 0.0f); GL.glVertex3f(1.0f, -1.0f, 1.0f); GL.glTexCoord2f(1.0f, 1.0f); GL.glVertex3f(1.0f, 1.0f, 1.0f); GL.glTexCoord2f(0.0f, 1.0f); GL.glVertex3f(-1.0f, 1.0f, 1.0f); GL.glEnd(); // back GL.glBindTexture(GL.GL_TEXTURE_2D, Textures[1]); GL.glBegin(GL.GL_QUADS); GL.glNormal3f(0.0f, 0.0f, -1.0f); GL.glTexCoord2f(0.0f, 0.0f); GL.glVertex3f(1.0f, -1.0f, -1.0f); GL.glTexCoord2f(1.0f, 0.0f); GL.glVertex3f(-1.0f, -1.0f, -1.0f); GL.glTexCoord2f(1.0f, 1.0f); GL.glVertex3f(-1.0f, 1.0f, -1.0f); GL.glTexCoord2f(0.0f, 1.0f); GL.glVertex3f(1.0f, 1.0f, -1.0f); GL.glEnd(); // left GL.glBindTexture(GL.GL_TEXTURE_2D, Textures[2]); GL.glBegin(GL.GL_QUADS); GL.glNormal3f(-1.0f, 0.0f, 0.0f); GL.glTexCoord2f(0.0f, 0.0f); GL.glVertex3f(-1.0f, -1.0f, -1.0f); GL.glTexCoord2f(1.0f, 0.0f); GL.glVertex3f(-1.0f, -1.0f, 1.0f); GL.glTexCoord2f(1.0f, 1.0f); GL.glVertex3f(-1.0f, 1.0f, 1.0f); GL.glTexCoord2f(0.0f, 1.0f); GL.glVertex3f(-1.0f, 1.0f, -1.0f); GL.glEnd(); // right GL.glBindTexture(GL.GL_TEXTURE_2D, Textures[3]); GL.glBegin(GL.GL_QUADS); GL.glNormal3f(1.0f, 0.0f, 0.0f); GL.glTexCoord2f(0.0f, 0.0f); GL.glVertex3f(1.0f, -1.0f, 1.0f); GL.glTexCoord2f(1.0f, 0.0f); GL.glVertex3f(1.0f, -1.0f, -1.0f); GL.glTexCoord2f(1.0f, 1.0f); GL.glVertex3f(1.0f, 1.0f, -1.0f); GL.glTexCoord2f(0.0f, 1.0f); GL.glVertex3f(1.0f, 1.0f, 1.0f); GL.glEnd(); // top GL.glBindTexture(GL.GL_TEXTURE_2D, Textures[4]); GL.glBegin(GL.GL_QUADS); GL.glNormal3f(0.0f, 1.0f, 0.0f); GL.glTexCoord2f(0.0f, 0.0f); GL.glVertex3f(-1.0f, 1.0f, 1.0f); GL.glTexCoord2f(1.0f, 0.0f); GL.glVertex3f(1.0f, 1.0f, 1.0f); GL.glTexCoord2f(1.0f, 1.0f); GL.glVertex3f(1.0f, 1.0f, -1.0f); GL.glTexCoord2f(0.0f, 1.0f); GL.glVertex3f(-1.0f, 1.0f, -1.0f); GL.glEnd(); // bottom GL.glBindTexture(GL.GL_TEXTURE_2D, Textures[5]); GL.glBegin(GL.GL_QUADS); GL.glNormal3f(0.0f, -1.0f, 0.0f); GL.glTexCoord2f(0.0f, 0.0f); GL.glVertex3f(-1.0f, -1.0f, -1.0f); GL.glTexCoord2f(1.0f, 0.0f); GL.glVertex3f(1.0f, -1.0f, -1.0f); GL.glTexCoord2f(1.0f, 1.0f); GL.glVertex3f(1.0f, -1.0f, 1.0f); GL.glTexCoord2f(0.0f, 1.0f); GL.glVertex3f(-1.0f, -1.0f, 1.0f); GL.glEnd(); } }