我尝试使用下面的代码绘制一个正方形状的像素用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