我嘗試使用下面的代碼繪製一個正方形狀的像素用OpenGLOpenGL的 - 如何繪製方形像素與GL_POINTS
glPointSize(5.0f);
glBegin(GL_POINTS);
glVertex3f(1.0f, 1.0f, 1.0f);
glEnd();
然而,最終的結果是一個圓形狀的像素。
請參考參考http://risknfun.com/compform/w1.html 請參閱「問題4.網格」。在右側,顯示圖像具有方形像素。
我嘗試使用下面的代碼繪製一個正方形狀的像素用OpenGLOpenGL的 - 如何繪製方形像素與GL_POINTS
glPointSize(5.0f);
glBegin(GL_POINTS);
glVertex3f(1.0f, 1.0f, 1.0f);
glEnd();
然而,最終的結果是一個圓形狀的像素。
請參考參考http://risknfun.com/compform/w1.html 請參閱「問題4.網格」。在右側,顯示圖像具有方形像素。
它部分取決於OpenGL的實現(也就是說,它可以隨圖形驅動程序而變化),但有一點運氣,你可以用glEnable(GL_POINT_SMOOTH);
或glDisable(GL_POINT_SMOOTH);
開啓或關閉此功能打開點平滑功能後,通常會得到四捨五入的點數,但關閉它會得到方點。
您也可以嘗試告訴OpenGL沒有通過調用花時間做GL_POINTS
好和輪:
glHint(GL_POINT_SMOOTH_HINT, GL_FASTEST);
但請記住,這只是一個提示。 OpenGL驅動程序最終是硬道理。
你對glPointSmooth的設置是什麼? – Kos 2010-11-12 16:58:59
我使用默認值 - 謝謝 – q0987 2010-11-12 16:59:46
它現在適用於我。只需使用glDisable(GL_POINT_SMOOTH) – q0987 2010-11-12 17:10:53