rendered paste body#include <windows.h>#include <gl/GL.h>#include <gl/GLU.h>#include <SDL.h>void RenderBox(float w, float h, float d){ glBegin(GL_QUADS); glNormal3f( 0.0f, 0.0f, 1.0f); glTexCoord2f(0.0f, 0.0f); glVertex3f(-w, -h, d); glTexCoord2f(1.0f, 0.0f); glVertex3f( w, -h, d); glTexCoord2f(1.0f, 1.0f); glVertex3f( w, h, d); glTexCoord2f(0.0f, 1.0f); glVertex3f(-w, h, d); glNormal3f( 0.0f, 0.0f,-1.0f); glTexCoord2f(1.0f, 0.0f); glVertex3f(-w, -h, -d); glTexCoord2f(1.0f, 1.0f); glVertex3f(-w, h, -d); glTexCoord2f(0.0f, 1.0f); glVertex3f( w, h, -d); glTexCoord2f(0.0f, 0.0f); glVertex3f( w, -h, -d); glNormal3f( 0.0f, 1.0f, 0.0f); glTexCoord2f(0.0f, 1.0f); glVertex3f(-w, h, -d); glTexCoord2f(0.0f, 0.0f); glVertex3f(-w, h, d); glTexCoord2f(1.0f, 0.0f); glVertex3f( w, h, d); glTexCoord2f(1.0f, 1.0f); glVertex3f( w, h, -d); glNormal3f( 0.0f,-1.0f, 0.0f); glTexCoord2f(1.0f, 1.0f); glVertex3f(-w, -h, -d); glTexCoord2f(0.0f, 1.0f); glVertex3f( w, -h, -d); glTexCoord2f(0.0f, 0.0f); glVertex3f( w, -h, d); glTexCoord2f(1.0f, 0.0f); glVertex3f(-w, -h, d); glNormal3f( 1.0f, 0.0f, 0.0f); glTexCoord2f(1.0f, 0.0f); glVertex3f( w, -h, -d); glTexCoord2f(1.0f, 1.0f); glVertex3f( w, h, -d); glTexCoord2f(0.0f, 1.0f); glVertex3f( w, h, d); glTexCoord2f(0.0f, 0.0f); glVertex3f( w, -h, d); glNormal3f(-1.0f, 0.0f, 0.0f); glTexCoord2f(0.0f, 0.0f); glVertex3f(-w, -h, -d); glTexCoord2f(1.0f, 0.0f); glVertex3f(-w, -h, d); glTexCoord2f(1.0f, 1.0f); glVertex3f(-w, h, d); glTexCoord2f(0.0f, 1.0f); glVertex3f(-w, h, -d); glEnd();}int main(int argc, char** argv){ int width = 800; int height = 600; SDL_Init(SDL_INIT_VIDEO); SDL_SetVideoMode(width, height, 32, SDL_HWSURFACE | SDL_DOUBLEBUF | SDL_OPENGL); glViewport(0, 0, width, height); glMatrixMode(GL_PROJECTION); gluPerspective(70, 4.0/3.0, 1.0, 100); glMatrixMode(GL_MODELVIEW); glEnable(GL_TEXTURE_2D); int size = 128; unsigned char* data = new unsigned char[4*size*size]; for(int i = 0; i < 4*size*size; ++i) data[i] = rand()%256; unsigned int id = 0; glGenTextures(1, &id); glBindTexture(GL_TEXTURE_2D, id); glTexImage2D(GL_TEXTURE_2D, 0, 4, size, size, 0, GL_RGBA, GL_UNSIGNED_BYTE, data); for(;;) { SDL_Event e; bool br = false; while(SDL_PollEvent(&e)) if(e.type == SDL_QUIT) br = true; if(br) break; glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT); glLoadIdentity(); glTranslatef(0,0,-5); glRotatef(15,1,0,0); glRotatef(15,0,1,0); glColor3f(1,1,1); glBindTexture(GL_TEXTURE_2D, id); RenderBox(1,1,1); SDL_GL_SwapBuffers(); } SDL_Quit(); return 0;}