[英]How do I draw unrounded pixels in OpenGL?
我正在尝试使用 GL_POINTS 绘制方形像素,但像素是四舍五入的。 我试过使用 glDisable(GL_POINT_SMOOTH) 但它似乎没有改变任何东西。
这是我的代码:
glDisable(GL_POINT_SMOOTH);
glPointSize(8);
glBegin(GL_POINTS);
glVertex2i(500, 400);
glEnd();
glPointSize 参考页( https://registry.khronos.org/OpenGL-Refpages/gl4/html/glPointSize.xhtml )指出,如果您(或您正在使用的任何库)调用 glEnable(GL_PROGRAM_POINT_SIZE) 然后顶点着色器将控制点的大小(而不是控制 glPointSize())。
此外,某些平台可能对最大点大小有相当严格的限制:最大大小可能是 1 (.),这意味着(实际上)您根本没有能力做方形像素:要检查您的平台的功能:
GLint sizeRange[2];
glGetIntegerv(GL_POINT_SIZE_RANGE,sizeRange);
//sizeRange[0] is the minimum; sizeRange[1] is the maximum
[参考:https://registry.khronos.org/OpenGL-Refpages/gl4/html/glGet.xhtml]
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.