我就想显示 2个图形 glLoadIdentity(); 用这个复位 但是怎么也没用 第一个图形能显示 第二个图形就显示不出来了 真是郁闷 代码如下#include <Windows.h>
#include <gl\glut.h>
#include <gl\GLAUX.H>void display()
{
glClearColor(0.7,0.3,0,0.8);
glClear(GL_COLOR_BUFFER_BIT);
gluLookAt(0,0,10,0,0,0,0,1,0);
glTranslatef(-5,0,0.0);
glRotatef(30,0,0,1);
glColor3f(1.0,0.0,0.0);
glBegin(GL_POLYGON);//画下面
glVertex3f(0,0,0.);
glVertex3f(0,2,0.);
glVertex3f(2,2,0);
glVertex3f(2,0,0);
glEnd();
glLoadIdentity();
glTranslatef(5,0,0.0);
glColor3f(1.0,1.0,1.0); glBegin(GL_POLYGON);
glVertex3f(0,0,0.);
glVertex3f(0,1,0.);
glVertex3f(1,1,0);
glVertex3f(1,0,0);
glEnd(); glFlush();
}
void changeSize(int w, int h)
{
if(h == 0)
h = 1;
float ratio = 1.0* w / h;
glMatrixMode(GL_PROJECTION);
glLoadIdentity();
glViewport(0, 0, w, h);
gluPerspective(45,ratio,1,1000);
glMatrixMode(GL_MODELVIEW);
glLoadIdentity();
gluLookAt(0.0,0.0,5.0, 0.0,0.0,-1.0,0.0f,1.0f,0.0f);
}void main(int argc, char **argv) {
glutInit(&argc, argv);
glutInitDisplayMode(GLUT_RGB | GLUT_SINGLE);
glutInitWindowPosition(100,100);
glutInitWindowSize(500,500);
glutCreateWindow("新的开始");
glutReshapeFunc(changeSize);
glutDisplayFunc(display);
glutMainLoop();
}
#include <gl\glut.h>
#include <gl\GLAUX.H>void display()
{
glClearColor(0.7,0.3,0,0.8);
glClear(GL_COLOR_BUFFER_BIT);
gluLookAt(0,0,10,0,0,0,0,1,0);
glTranslatef(-5,0,0.0);
glRotatef(30,0,0,1);
glColor3f(1.0,0.0,0.0);
glBegin(GL_POLYGON);//画下面
glVertex3f(0,0,0.);
glVertex3f(0,2,0.);
glVertex3f(2,2,0);
glVertex3f(2,0,0);
glEnd();
glLoadIdentity();
glTranslatef(5,0,0.0);
glColor3f(1.0,1.0,1.0); glBegin(GL_POLYGON);
glVertex3f(0,0,0.);
glVertex3f(0,1,0.);
glVertex3f(1,1,0);
glVertex3f(1,0,0);
glEnd(); glFlush();
}
void changeSize(int w, int h)
{
if(h == 0)
h = 1;
float ratio = 1.0* w / h;
glMatrixMode(GL_PROJECTION);
glLoadIdentity();
glViewport(0, 0, w, h);
gluPerspective(45,ratio,1,1000);
glMatrixMode(GL_MODELVIEW);
glLoadIdentity();
gluLookAt(0.0,0.0,5.0, 0.0,0.0,-1.0,0.0f,1.0f,0.0f);
}void main(int argc, char **argv) {
glutInit(&argc, argv);
glutInitDisplayMode(GLUT_RGB | GLUT_SINGLE);
glutInitWindowPosition(100,100);
glutInitWindowSize(500,500);
glutCreateWindow("新的开始");
glutReshapeFunc(changeSize);
glutDisplayFunc(display);
glutMainLoop();
}
解决方案 »
免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货