繁体   English   中英

如何在 OpenGL 中绘制不圆角的像素?

[英]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.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM