gpt4 book ai didi

c++ - OpenGL:GL_QUADS 不绘制正方形

转载 作者:太空狗 更新时间:2023-10-29 20:28:51 25 4
gpt4 key购买 nike

我试图在屏幕上画一个正方形,但它显然画了一个矩形。

这是我的渲染代码:

glClear(GL_COLOR_BUFFER_BIT);
glTranslatef(0,0,-0.1);
glBegin(GL_QUADS);
glVertex3f(0,0,0);
glVertex3f(1,0,0);
glVertex3f(1,1,0);
glVertex3f(0,1,0);
glEnd();

SDL_GL_SwapBuffers();

和 OpenGL Init 代码:

glClearColor(0,0,0,0.6f);
glMatrixMode(GL_PROJECTION);
glLoadIdentity();
gluPerspective(30,640.0/480.0,.3f,200.0);
glMatrixMode(GL_MODELVIEW);

为什么会这样?

最佳答案

我在您的代码中没有看到您设置 glViewport 的任何地方。我宁愿在你的 init 方法中写这样的东西:

glViewport(0,0,640,480);        // Reset The Current Viewport

glMatrixMode(GL_PROJECTION); // Select The Projection Matrix
glLoadIdentity(); // Reset The Projection Matrix

// Calculate The Aspect Ratio Of The Window
gluPerspective(30.0f,(GLfloat)640/(GLfloat)480,0.3f,200.0f);

glMatrixMode(GL_MODELVIEW); // Select The Modelview Matrix
glLoadIdentity();

同时检查第二个 Nehe tutorial它将帮助您开始使用 OpenGL 来绘制非常基本的东西,例如绘制三角形、正方形等图元...

关于c++ - OpenGL:GL_QUADS 不绘制正方形,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11971192/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com