在PyOpenGL中将glPointSize设置为浮点数

bqjvbblv  于 2023-08-04  发布在  其他
关注(0)|答案(1)|浏览(104)

我在PyOpenGL中画了一个点,但我需要它是一个小数。当我使用glPointSize()时,它将四舍五入到最近的int。
有没有一种方法可以使点大小为浮点数,如果没有,最有效的替代方法是什么?

glColor3fv((1.0, 1.0, 1.0))
glPointSize(2.4)
glBegin(GL_POINTS)
for a in points:
    glVertex3f(a[0], a[1], 3)
# glEnd()

字符集
例如,如果我将点大小设置为1.5到2.5之间的任何值,它将四舍五入为2。
根据chat gpt,我当前通过将参数设置为float所做的是正确的,所以可能我在程序中遗漏了其他东西?

neskvpey

neskvpey1#

必须启用多重采样:

pygame.init()
pygame.display.gl_set_attribute(pygame.GL_MULTISAMPLEBUFFERS, True)
pygame.display.gl_set_attribute(pygame.GL_MULTISAMPLESAMPLES, 8)
screen= pygame.display.set_mode((width, height), pygame.DOUBLEBUF | pygame.OPENGL)

字符集
您需要使用适当的过滤来启用绘图点

glEnable(GL_POINT_SMOOTH)

相关问题