Está en la página 1de 10

Mario(OpengL)

#include <stdlib.h>

#include<GL/glu.h>

#include <GL/glut.h>

#include<windows.h>

using namespace std;

void iniciarProyeccion()

glClearColor(1.0,1.0,1.0,1.0);

glMatrixMode(GL_PROJECTION);

gluOrtho2D(-50,50,-50,50);

void dibujar()

//--------------------------------------------------------------------------------------------------------------------------------
-----------------------------------------------------

glClear(GL_COLOR_BUFFER_BIT);

//Sombrero

glColor3f(1.0,0.0,0.0); // COLOR ROJO

glBegin(GL_POLYGON);

glVertex2i(-15,35); glVertex2i(-15,30);

glVertex2i(15,30); glVertex2i(15,35);
glEnd();

glBegin(GL_POLYGON);

glVertex2i(-20,32); glVertex2i(-20,28);

glVertex2i(25,28); glVertex2i(25,32);

glEnd();

//--------------------------------------------------------------------------------------------------------------------------------
-----------------------------------------------------

//Cara parte central

glBegin(GL_POLYGON);

glColor3f (0.949, 0.8431, 0.5804);//Crema

glVertex2i(-18,28);//1

glVertex2i(-18,10);//2

glVertex2i(18,10); //3

glVertex2i(18,28); //4

glEnd();

// Parte frontal

glBegin(GL_POLYGON);

glColor3f (0.949, 0.8431, 0.5804);//Crema

glVertex2i(18,24);//1

glVertex2i(18,10);//2

glVertex2i(22,10); //3

glVertex2i(22,24); //4

glEnd();

glBegin(GL_POLYGON);

glColor3f (0.949, 0.8431, 0.5804);//Crema

glVertex2i(22,24);

glVertex2i(22,18);
glVertex2i(25,18);

glVertex2i(25,24);

glEnd();

glBegin(GL_POLYGON);

glColor3f (0.949, 0.8431, 0.5804);//Crema

glVertex2i(22,20);

glVertex2i(22,16);

glVertex2i(28,16);

glVertex2i(28,20);

glEnd();

glBegin(GL_POLYGON);

glVertex2i(-20,24);//1

glVertex2i(-20,13);//2

glVertex2i(-24,13);// 10

glVertex2i(-24,24); //borrar

glEnd();

//Espacio faltando a la izquierda

glBegin(GL_POLYGON);

glColor3f (0.949, 0.8431, 0.5804);//Crema

glVertex2i(-20,28);//1

glVertex2i(-20,13);//2

glVertex2i(-15,13);// 10

glVertex2i(-15,28); //borrar

glEnd();
//--------------------------------------------------------------------------------------------------------------------------------
---------------------------------------------------

// OJOS

glBegin(GL_POLYGON);

glColor3f (0.0, 0.0, 0.0);//Negro

glVertex2i(15,28); glVertex2i(15,20);

glVertex2i(11,20); glVertex2i(11,28);

glEnd();

//--------------------------------------------------------------------------------------------------------------------------------
-----------------------------------------------------

// Cabello

glBegin(GL_POLYGON);

glColor3f (0.4627, 0.298, 0.1765);//Chocolate

glVertex2i(-20,28); glVertex2i(-20,24);

glVertex2i(-5,24); glVertex2i(-5,28);

glEnd();

glBegin(GL_POLYGON);

glVertex2i(-15,24); glVertex2i(-15,18);

glVertex2i(-10,18);glVertex2i(-10,24);

glEnd();

glBegin(GL_POLYGON);

glVertex2i(-20,24); glVertex2i(-20,13);

glVertex2i(-24,13); glVertex2i(-24,24);

glEnd();

glBegin(GL_POLYGON);

glVertex2i(-20,18); glVertex2i(-20,13);//2

glVertex2i(-15,13); glVertex2i(-15,18); //borrar


glEnd();

//Barba frontal Horizontal

glBegin(GL_POLYGON);

glVertex2i(11,16);//1

glVertex2i(11,13);//2

glVertex2i(26,13);// 10

glVertex2i(26,16); //borrar

glEnd();

//Barba frontal vertical

glBegin(GL_POLYGON);

glVertex2i(15,20);//1

glVertex2i(15,16);//2

glVertex2i(18,16);// 10

glVertex2i(18,20); //borrar

glEnd();

//--------------------------------------------------------------------CUERPO-------------------------------------------------
--------------------------

// Camisa roja linea 1

glColor3f(1.0,0.0,0.0); // COLOR ROJO

glBegin(GL_POLYGON);

glVertex2i(-20,10); glVertex2i(-20,7);

glVertex2i(15,7); glVertex2i(15,10);

glEnd();

// Camisa segunda Linea

glBegin(GL_POLYGON);

glVertex2i(-24,7); glVertex2i(-24,4);

glVertex2i(25,4); glVertex2i(25,7);

glEnd();

// Camisa tercera Linea


glBegin(GL_POLYGON);

glVertex2i(-28,4); glVertex2i(-28,1);

glVertex2i(27,1); glVertex2i(27,4);

glEnd();

// Camisa cuadros de la cuarta Linea

glBegin(GL_POLYGON);

glVertex2i(-28,1); glVertex2i(-28,-2);

glVertex2i(27,-2); glVertex2i(27,1);

glEnd();

//------------------------------------------------------------------------------------------------------------------

// CUADRO DE MANOS Izquierda

glColor3f (0.949, 0.8431, 0.5804);//Crema

glBegin(GL_POLYGON);

glVertex2i(-28,1); glVertex2i(-28,-6);

glVertex2i(-20,-6); glVertex2i(-20,1);

glEnd();

// CUADRO DE MANOS Derecha

glBegin(GL_POLYGON);

glVertex2i(27,1); glVertex2i(27,-6);

glVertex2i(21,-6); glVertex2i(21,1);

glEnd();

// Quinta linea Cuadritos de dedos

glBegin(GL_POLYGON);

glVertex2i(-20,-2); glVertex2i(-20,-5);

glVertex2i(21,-5); glVertex2i(21,-2);

glEnd();

// Quinta cuarta y sexta linea Camisa Azul


glColor3f (0.0, 0.0, 1.0);//azul

glBegin(GL_POLYGON);

glVertex2i(-17,1); glVertex2i(-17,-5);

glVertex2i(18,-5); glVertex2i(18,1);

glEnd();

//Franja azul de la izquierda

glBegin(GL_POLYGON);

glVertex2i(-13,10); glVertex2i(-13,1);

glVertex2i(-7,1); glVertex2i(-7,10);

glEnd();

//Franja azul de la Derecho

glBegin(GL_POLYGON);

glVertex2i(9,7); glVertex2i(9,1);

glVertex2i(15,1); glVertex2i(15,7);

glEnd();

// PUNTO AMARILLO izquierdo

glColor3f (1.0, 1.0, 0.0);//amarillo

glBegin(GL_POLYGON);

glVertex2i(-13,1); glVertex2i(-13,-2);

glVertex2i(-7,-2); glVertex2i(-7,1);

glEnd();

// PUNTO AMARILLO iDERECHO

glColor3f (1.0, 1.0, 0.0);//amarillo

glBegin(GL_POLYGON);

glVertex2i(9,1); glVertex2i(9,-2);
glVertex2i(15,-2); glVertex2i(15,1);

glEnd();

// cuadro azul de la izquierda

glColor3f (0.0, 0.0, 1.0);//azul

glBegin(GL_POLYGON);

glVertex2i(-20,-5); glVertex2i(-20,-10);

glVertex2i(-5,-10); glVertex2i(-5,-5);

glEnd();

// cuadro azul de la derecha

glColor3f (0.0, 0.0, 1.0);//azul

glBegin(GL_POLYGON);

glVertex2i(21,-5); glVertex2i(21,-10);

glVertex2i(5,-10); glVertex2i(5,-5);

glEnd();

// Zapato Izquierdo primera linea

glColor3f (0.4627, 0.298, 0.1765);//Chocolate

glBegin(GL_POLYGON);

glVertex2i(-23,-10); glVertex2i(-23,-13);

glVertex2i(-8,-13); glVertex2i(-8,-10);

glEnd();

// Zapato Izquierdo segunda linea

glBegin(GL_POLYGON);

glVertex2i(-25,-13); glVertex2i(-25,-16);

glVertex2i(-8,-16); glVertex2i(-8,-13);

glEnd();
// Zapato Derecho Primera linea

glBegin(GL_POLYGON);

glVertex2i(23,-10); glVertex2i(23,-13);

glVertex2i(8,-13); glVertex2i(8,-10);

glEnd();

// Zapato Derecho segunda linea

glColor3f (0.4627, 0.298, 0.1765);//Chocolate

glBegin(GL_POLYGON);

glVertex2i(25,-13); glVertex2i(25,-16);

glVertex2i(8,-16); glVertex2i(8,-13);

glEnd();

// Verde

glColor3f (0.0, 0.9176, 0.2196);// Verde

glBegin(GL_POLYGON);

glVertex2i(-25,-16); glVertex2i(-25,-23);

glVertex2i(25,-23); glVertex2i(25,-16);

glEnd();

// Verde

glLineWidth(8.0);

glBegin(GL_POLYGON);

glVertex2i(-18,-23); glVertex2i(-18,-40);

glVertex2i(18,-40); glVertex2i(18,-23);

glEnd();

glColor3f (0.0, 1.0, 0.0);// Verde

glLineWidth(10.0);

glBegin(GL_LINE_STRIP);

glVertex2i(-25,-16); glVertex2i(-25,-23);
glVertex2i(-18,-23); glVertex2i(-18,-40);

glVertex2i(18,-40); glVertex2i(18,-23);

glVertex2i(25,-23); glVertex2i(25,-16);

glVertex2i(-25,-16);

glEnd();

glFlush();

int main(int argc, char* argv[])

glutInit(&argc, argv);

glutInitDisplayMode(GLUT_SINGLE|GLUT_RGB);

glutInitWindowSize(800,800);

glutInitWindowPosition(300,100);

glutCreateWindow("MARIO");

iniciarProyeccion();

glutDisplayFunc(dibujar);

glutMainLoop();

También podría gustarte