我試圖遵循示例代碼來簡單地在黑色背景上顯示矩形,但似乎並未顯示。我做的是無法在openGL中渲染形狀
private static void initGL(){
glMatrixMode(GL_PROJECTION);
glLoadIdentity();
glOrtho(0,Display.getWidth(),0,Display.getHeight(),-1,1);
glMatrixMode(GL_MODELVIEW);
glDisable(GL_DEPTH_TEST); //2D mode
glColor3f(0.5f, 0.0f, 1.0f);
glBegin(GL_QUADS);
glVertex2f(-0.75, 0.75);
glVertex2f(-0.75, -0.75);
glVertex2f(0.75, -0.75);
glVertex2f(0.75, 0.75);
glEnd();
}
它不顯示除黑色背景之外的任何內容。有誰知道我可能做錯了什麼?我在eclipse中使用lwjgl。
請注意,glVertex並不總是直接映射到像素,只有當您將正交座標系設置爲等於顯示大小時纔會這樣做。如果OP將使用一個身份正交矩陣而不是從屏幕寬度/高度派生的矩陣,那麼他的-75到75平方將會填滿屏幕的中間50%。 – Tim
*「你只需要在你的程序中運行一次」* - 不,這是一種常見的誤解(雖然它適用於他的案例和許多其他簡單的案例,但它並不像你想象的那麼好)。 –
非常感謝大家!修正了問題 – nemesis