参数的OpenGL函数精度为glColor4d

时间:2017-03-27 08:49:01

标签: opengl

glcolor4d()有问题。由于数据大小非常大而且我使用过  glBlendFuncSeparate(GL_SRC_ALPHA, GL_DST_ALPHA, GL_ONE,GL_ONE_MINUS_SRC_ALPHA); glBlendEquationSeparate(GL_FUNC_ADD, GL_FUNC_ADD); 为了满足我的需要,我设置了参数 glColor4d(0.05, 0.05, 0.05, 0.04)  (参数尽可能小)。一旦alpha值和RGB参数低于某些值(如0.04),数据就不会显示在窗口上。 那么功能精度是否有任何限制?我怎样才能解决这个问题,将参数设置得尽可能小?希望你的回复。

1 个答案:

答案 0 :(得分:0)

几乎所有d版本的顶点属性函数都完全没用。

您的帧缓冲区没有双精度浮点数。您可以做的最好的事情是使用单精度浮点数,但这需要使用单精度浮点数,这不是默认值。因此,您需要使用FBO渲染到这样的图像,您可能没有这样做。您将获得的一般默认像素格式是每像素8位。

这忽略了固定功能管道是否会在浮点值上运行。它可能会将它们变成每像素8位的值(因为这是FFP中定义的颜色)。

如果您想要更高的颜色精度,则需要使用着色器。