OpenGL 不会使用左上坐标进行渲染

OpenGL won't render with top left coordinates

我用 glOrtho() 设置了投影矩阵,如下所示:

glOrtho(-Application.HALF_WIDTH, Application.HALF_WIDTH, -Application.HALF_HEIGHT, Application.HALF_HEIGHT, 1, -1);

因此,当我在原点 (0; 0) 处绘制某些内容时,opengl 会将其绘制在屏幕中央。美好的。但是现在我想翻转Y坐标,所以我把它改成这样:

glOrtho(-Application.HALF_WIDTH, Application.HALF_WIDTH, Application.HALF_HEIGHT, -Application.HALF_HEIGHT, 1, -1);

当我尝试在 (0; 0)(或任何位置)绘制时,它会显示黑屏。

什么可能导致此问题? p.s。我正在使用 lwjgl

当改变 y 轴的方向时,基元的缠绕顺序也会改变。因此,如果启用了背面剔除,则必须通过

设置来调整缠绕顺序
glFontFace(GL_CCW)