我开发了一款使用OpenGL和C++的游戏,它一切正常,但我需要修复这个小故障:当我移动相机(使用鼠标)时,我的地图不会保留在固定位置。 它基本上是一个正方形(gl_quad),我画在我面前。OpenGL固定斑点图故障
这是毛刺的一个示例:
这是一个正方形的绘制代码,如果它是需要的
texture = scene->getTexture("map_papyrus.png");
glBlendFunc(GL_SRC_ALPHA, GL_ONE_MINUS_SRC_ALPHA);
glEnable(GL_BLEND);
glUseProgram(this->shader->getRes());
glActiveTexture(GL_TEXTURE0);
GLint texture_location = glGetUniformLocation(this->shader- >getFragment(), "color_texture");
glUniform1i(texture_location, texture_location);
glBindTexture(GL_TEXTURE_2D, this->texture->getRes());
glBegin(GL_QUADS);
float size = .5f;
float offsetx = 0.0f;
float offsety = 0.0f;
if (set->easymode) { size = .2f; offsetx = 0.8f; offsety = 0.35f; }
glTexCoord2f(0,0); glVertex2f(-size + offsetx, -size + offsety);
glTexCoord2f(1, 0); glVertex2f(size + offsetx, -size +offsety);
glTexCoord2f(1,1); glVertex2f(size + offsetx, size + offsety);
glTexCoord2f(0, 1); glVertex2f(-size + offsetx, size + offsety);
glEnd();
glTranslated(0, 0, 0.00001);
如何移动相机?你的着色器是怎样的? – BDL
我猜测地图在渲染后会移动。这就是为什么它落后于此。 –