为什么这个简单的opengl程序不能正常显示
请各位大虾帮帮忙看看为啥不能出东西啊!谢谢了
其代码如下:
#include <windows.h>
#include <gl/gl.h>
#include <gl/glaux.h>
#include <gl/glu.h>
#include <stdlib.h>
void CALLBACK display(void)
{
glClearColor(0.0,0.0,0.0,0.0);
glClear(GL_COLOR_BUFFER_BIT);
glColor3f(1.0,0.0,1.0);
glLoadIdentity();
glTranslatef(0.0,0.0,-0.5);
glScalef(1.0,2.0,1.0);
auxWireCube(1.0);
glFlush();
}
void myinit(void)
{
glShadeModel(GL_FLAT);
}
void CALLBACK myReshape(int w,int h)
{
glMatrixMode(GL_PROJECTION);
glLoadIdentity();
glFrustum(-1.0,1.0,-1.0,1.0,1.5,20.0);
glMatrixMode(GL_MODELVIEW);
glViewport(0,0,w,h);
}
void main(int argc,char** argv)
{
auxInitDisplayMode(AUX_SINGLE|AUX_RGB);
auxInitPosition(0,0,500,500);
auxInitWindow( "贝贝 ");
myinit();
auxReshapeFunc(myReshape);
auxMainLoop(display);
}
[解决办法]
glTranslatef(0.0,0.0,-0.5);
把这句-0.5改成-2.5就可以看到了
[解决办法]
glFrustum(-1.0,1.0,-1.0,1.0,1.5,20.0)
glTranslatef(0.0,0.0,-0.5);
glScalef(1.0,2.0,1.0);
auxWireCube(1.0);
你东西画视景体外边了