/* TEXTURAS USANDO ARCHIVOS JPG (archivos en c) */ #include <GL/glut.h> #include "HULK.c" void display(void) { glClearColor (1.0, 0.0, 0.0, 0.0); glClear( GL_COLOR_BUFFER_BIT ); gluBuild2DMipmaps( GL_TEXTURE_2D, HULK.bytes_per_pixel, HULK.width, HULK.height,GL_RGB, GL_UNSIGNED_BYTE, HULK.pixel_data ); glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_WRAP_S, GL_REPEAT); glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_WRAP_T, GL_REPEAT); glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, GL_LINEAR); glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, GL_LINEAR); glColor3f(1.0, 1.0, 1.0); //se activa el mapeado de texturas glEnable(GL_TEXTURE_2D); glBegin(GL_TRIANGLES); glTexCoord2f(0.0, 1.0); glVertex2f(-1.0, -1.0); glTexCoord2f(1.0, 1.0); glVertex2f(1.0, -1.0); glTexCoord2f(0.5, 0.0); glVertex2f(0.0, 1.0); glEnd(); glDisable(GL_TEXTURE_2D); glutSwapBuffers() ; } void reshape(int width, int height) { glViewport(0, 0, width, height); glMatrixMode(GL_PROJECTION); glLoadIdentity(); gluPerspective(60.0, (GLfloat)height / (GLfloat)width, 1.0, 128.0); glMatrixMode(GL_MODELVIEW); glLoadIdentity(); gluLookAt(0.0, 1.0, 3.0, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0); } int main(int argc, char** argv) { glutInit(&argc, argv); glutInitDisplayMode( GLUT_RGB ); glutInitWindowSize(400, 400); glutInitWindowPosition(100, 100); glutCreateWindow("HULK"); glutReshapeFunc(reshape); glutDisplayFunc(display); glutMainLoop(); return 0; }