예제 #1
0
        void DrawWings()
        {
            Gl.glColor3ub(120, 120, 120);
            Gl.glPushMatrix();

            Gl.glTranslatef(-0.2f, 0.0f, 7.7f);

            Gl.glBindTexture(Gl.GL_TEXTURE_2D, World.textures[(int)World.TextureObjects.TEKSTURA_METALA]);

            Gl.glBegin(Gl.GL_QUADS);

//gornja..............................................
            Gl.glNormal3fv(Lighting.FindFaceNormal(0.0f, 0.0f, 0.0f, 0.0f, -0.2f, 1.8f, -0.5f, -0.2f, 1.8f));
            Gl.glTexCoord2f(0.0f, 0.0f); Gl.glVertex3f(0.0f, 0.0f, 0.0f);
            Gl.glTexCoord2f(0.0f, 1.0f); Gl.glVertex3f(0.0f, -0.2f, 1.8f);
            Gl.glTexCoord2f(1.0f, 1.0f); Gl.glVertex3f(-0.5f, -0.2f, 1.8f);
            Gl.glTexCoord2f(1.0f, 0.0f); Gl.glVertex3f(-0.8f, 0.0f, 0.0f);
            //donja...............................................
            Gl.glNormal3fv(Lighting.FindFaceNormal(0.0f, -0.5f, 0.0f, 0.0f, -0.3f, 1.8f, -0.5f, -0.3f, 1.8f));
            Gl.glTexCoord2f(0.0f, 0.0f);          Gl.glVertex3f(0.0f, -0.5f, 0.0f);
            Gl.glTexCoord2f(0.0f, 1.0f);          Gl.glVertex3f(0.0f, -0.3f, 1.8f);
            Gl.glTexCoord2f(1.0f, 1.0f);          Gl.glVertex3f(-0.5f, -0.3f, 1.8f);
            Gl.glTexCoord2f(1.0f, 0.0f);          Gl.glVertex3f(-0.8f, -0.5f, 0.0f);
            //strana1................................................
            Gl.glNormal3fv(Lighting.FindFaceNormal(-0.8f, 0.0f, 0.0f, -0.5f, -0.2f, 1.8f, -0.5f, -0.3f, 1.8f));
            Gl.glTexCoord2f(0.0f, 0.0f);          Gl.glVertex3f(-0.8f, 0.0f, 0.0f);
            Gl.glTexCoord2f(0.0f, 1.0f);          Gl.glVertex3f(-0.5f, -0.2f, 1.8f);
            Gl.glTexCoord2f(1.0f, 1.0f);          Gl.glVertex3f(-0.5f, -0.3f, 1.8f);
            Gl.glTexCoord2f(1.0f, 0.0f);          Gl.glVertex3f(-0.8f, -0.5f, 0.0f);
            //strana2..................................................
            Gl.glNormal3fv(Lighting.FindFaceNormal(0.0f, 0.0f, 0.0f, 0.0f, -0.2f, 1.8f, 0.0f, -0.3f, 1.8f));
            Gl.glTexCoord2f(0.0f, 0.0f);          Gl.glVertex3f(0.0f, 0.0f, 0.0f);
            Gl.glTexCoord2f(0.0f, 1.0f);          Gl.glVertex3f(0.0f, -0.2f, 1.8f);
            Gl.glTexCoord2f(1.0f, 1.0f);          Gl.glVertex3f(0.0f, -0.3f, 1.8f);
            Gl.glTexCoord2f(1.0f, 0.0f);          Gl.glVertex3f(0.0f, -0.5f, 0.0f);
            //prednje..................................................
            Gl.glNormal3fv(Lighting.FindFaceNormal(0.0f, -0.2f, 1.8f, -0.5f, -0.2f, 1.8f, -0.5f, -0.3f, 1.8f));
            Gl.glTexCoord2f(0.0f, 0.0f);          Gl.glVertex3f(0.0f, -0.2f, 1.8f);
            Gl.glTexCoord2f(0.0f, 1.0f);          Gl.glVertex3f(-0.5f, -0.2f, 1.8f);
            Gl.glTexCoord2f(1.0f, 1.0f);          Gl.glVertex3f(-0.5f, -0.3f, 1.8f);
            Gl.glTexCoord2f(1.0f, 0.0f);          Gl.glVertex3f(0.0f, -0.3f, 1.8f);

            Gl.glEnd();


            Gl.glRotatef(180.0f, 0.0f, 0.0f, 1.0f);
            Gl.glTranslatef(-0.4f, 0.5f, 0.0f);


            Gl.glBindTexture(Gl.GL_TEXTURE_2D, World.textures[(int)World.TextureObjects.TEKSTURA_METALA]);

            Gl.glBegin(Gl.GL_QUADS);

            //gornja..............................................
            Gl.glNormal3fv(Lighting.FindFaceNormal(-0.5f, -0.2f, 1.8f, 0.0f, -0.2f, 1.8f, 0.0f, 0.0f, 0.0f));
            Gl.glTexCoord2f(0.0f, 0.0f);          Gl.glVertex3f(0.0f, 0.0f, 0.0f);
            Gl.glTexCoord2f(0.0f, 1.0f);          Gl.glVertex3f(0.0f, -0.2f, 1.8f);
            Gl.glTexCoord2f(1.0f, 1.0f);          Gl.glVertex3f(-0.5f, -0.2f, 1.8f);
            Gl.glTexCoord2f(1.0f, 0.0f);          Gl.glVertex3f(-0.8f, 0.0f, 0.0f);
            //donja...............................................
            Gl.glNormal3fv(Lighting.FindFaceNormal(-0.5f, -0.3f, 1.8f, 0.0f, -0.3f, 1.8f, 0.0f, -0.5f, 0.0f));
            Gl.glTexCoord2f(0.0f, 0.0f);          Gl.glVertex3f(0.0f, -0.5f, 0.0f);
            Gl.glTexCoord2f(0.0f, 1.0f);          Gl.glVertex3f(0.0f, -0.3f, 1.8f);
            Gl.glTexCoord2f(1.0f, 1.0f);          Gl.glVertex3f(-0.5f, -0.3f, 1.8f);
            Gl.glTexCoord2f(1.0f, 0.0f);          Gl.glVertex3f(-0.8f, -0.5f, 0.0f);
            //strana1................................................
            Gl.glNormal3fv(Lighting.FindFaceNormal(-0.5f, -0.3f, 1.8f, -0.5f, -0.2f, 1.8f, -0.8f, 0.0f, 0.0f));
            Gl.glTexCoord2f(0.0f, 0.0f);          Gl.glVertex3f(-0.8f, 0.0f, 0.0f);
            Gl.glTexCoord2f(0.0f, 1.0f);          Gl.glVertex3f(-0.5f, -0.2f, 1.8f);
            Gl.glTexCoord2f(1.0f, 1.0f);          Gl.glVertex3f(-0.5f, -0.3f, 1.8f);
            Gl.glTexCoord2f(1.0f, 0.0f);          Gl.glVertex3f(-0.8f, -0.5f, 0.0f);
            //strana2..................................................
            Gl.glNormal3fv(Lighting.FindFaceNormal(0.0f, -0.3f, 1.8f, 0.0f, -0.2f, 1.8f, 0.0f, 0.0f, 0.0f));
            Gl.glTexCoord2f(0.0f, 0.0f);          Gl.glVertex3f(0.0f, 0.0f, 0.0f);
            Gl.glTexCoord2f(0.0f, 1.0f);          Gl.glVertex3f(0.0f, -0.2f, 1.8f);
            Gl.glTexCoord2f(1.0f, 1.0f);          Gl.glVertex3f(0.0f, -0.3f, 1.8f);
            Gl.glTexCoord2f(1.0f, 0.0f);          Gl.glVertex3f(0.0f, -0.5f, 0.0f);
            //prednje..................................................
            Gl.glNormal3fv(Lighting.FindFaceNormal(0.0f, -0.2f, 1.8f, -0.5f, -0.2f, 1.8f, -0.5f, -0.3f, 1.8f));
            Gl.glTexCoord2f(0.0f, 0.0f);          Gl.glVertex3f(0.0f, -0.2f, 1.8f);
            Gl.glTexCoord2f(0.0f, 1.0f);          Gl.glVertex3f(-0.5f, -0.2f, 1.8f);
            Gl.glTexCoord2f(1.0f, 1.0f);          Gl.glVertex3f(-0.5f, -0.3f, 1.8f);
            Gl.glTexCoord2f(1.0f, 0.0f);          Gl.glVertex3f(0.0f, -0.3f, 1.8f);


            Gl.glEnd();
            Gl.glPopMatrix();
        }