我在low-resolution, embedded device上使用OpenGL ES。
我已经应用了垂直颜色渐变,使用顶点着色,作为我的渲染场景的背景的大多边形。我可以在颜色渐变中看到清晰可见的带状伪影。
我的主要经验是使用软件渲染器。对于软件渲染器,抖动mach bands和其他带状伪像是很常见的。我们经常在渲染帧的量化步骤中这样做,在该步骤中,颜色的浮点、高精度表示被转换为较低精度的输出(通常具有整数分量)。我们通过随机向上或向下舍入最后的整数分量来实现抖动,以便在图像中插入最微小的噪声,从而欺骗眼睛看到颜色之间的连续和平滑混合。
我的问题是,我是否可以使用OpenGL ES来实现这一点?这种抖动是OpenGL管道的一部分吗,或者我应该跳过顶点着色,将渐变渲染到纹理上,然后对其应用一点噪声?
发布于 2008-10-15 16:41:10
你试过glEnable(GL_DITHER)吗?它最初通常是启用的,但我从未使用过GL ES或嵌入式设备。这也可能取决于你在帧缓冲区中使用的颜色深度,如果你每个通道只有4位,你就会得到伪影。
发布于 2008-10-13 19:06:16
我从来没有听说过你描述的在OGL管道中的效果。然而,我的知识在这一点上有点过时,所以我可能是错的。如果可以的话,我会给渲染纹理一个镜头。
https://stackoverflow.com/questions/198534
复制相似问题