opengl - 如何使用GL_POINTS绘制正方形像素

时间:2010-11-12 16:54:56

标签: opengl

我尝试使用以下代码用opengl

绘制方形像素
glPointSize(5.0f);
glBegin(GL_POINTS);
glVertex3f(1.0f, 1.0f, 1.0f);
glEnd();

然而,最终结果是一个圆形像素。

请查看参考http://risknfun.com/compform/w1.html 请参阅“问题4.网格”。在右侧,显示图像具有方形像素。

2 个答案:

答案 0 :(得分:18)

部分取决于OpenGL的实现(也就是说,它可以随着您的图形驱动程序而变化),但运气好的话,您可以使用glEnable(GL_POINT_SMOOTH);glDisable(GL_POINT_SMOOTH);开启或关闭此功能平滑打开,你通常会得到圆点,但关闭它你会得到平方点。

答案 1 :(得分:5)

您还可以尝试告诉OpenGL不要花时间通过调用GL_POINTS使其变得圆润:

glHint(GL_POINT_SMOOTH_HINT, GL_FASTEST);

但请记住,这只是一个暗示。 OpenGL驱动程序最终有了最后一句话。