Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- void display()
- {
- glClearColor(0.0,0.0,0.0,1.0);
- glClear(GL_COLOR_BUFFER_BIT|GL_DEPTH_BUFFER_BIT);
- for(std::vector<GLuint>::iterator I = cube.begin(); I != cube.end(); ++I)
- {
- glCallList(*I);
- }
- if(DrawArea == true)
- {
- // winX = (float)mouse.x;
- // winY = (float)mouse.y;
- // winY = (float)viewport[3] - winY;
- glReadPixels(winX, winY, 1, 1, GL_DEPTH_COMPONENT, GL_FLOAT, &winZ);
- cerr << winZ << endl;
- glGetDoublev(GL_MODELVIEW_MATRIX, modelview);
- glGetDoublev(GL_MODELVIEW_MATRIX, projection);
- glGetIntegerv(GL_VIEWPORT, viewport);
- gluUnProject(winX, winY, winZ , modelview, projection, viewport, &posX, &posY, & posZ);
- glBindTexture(GL_TEXTURE_2D, DrawAreaTexture);
- glPixelStorei(GL_UNPACK_ALIGNMENT, 1);
- glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, GL_NEAREST);
- glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, GL_NEAREST);
- glTexEnvf(GL_TEXTURE_ENV, GL_TEXTURE_ENV_MODE, GL_DECAL);
- glTexImage2D (GL_TEXTURE_2D, 0, GL_RGB, DrawAreaSurface->w, DrawAreaSurface->h, 0, GL_RGBA, GL_UNSIGNED_BYTE, DrawAreaSurface->pixels);
- glEnable(GL_TEXTURE_2D);
- glBindTexture(GL_TEXTURE_2D, DrawAreaTexture);
- glTranslatef(posX , posY, posZ);
- glBegin(GL_QUADS);
- glTexCoord2f (0.0, 0.0);
- glVertex3f(0.5, 0.5, 0);
- glTexCoord2f (1.0, 0.0);
- glVertex3f(0, 0.5, 0);
- glTexCoord2f (1.0, 1.0);
- glVertex3f(0, 0, 0);
- glTexCoord2f (0.0, 1.0);
- glVertex3f(0.5, 0, 0);
- glEnd();
- }
- SwapBuffers(hDC);
- //FOR SPAMMING 1/0
- // cerr << DrawArea << endl;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement