我正在绘制我的3D场景的背景,它的工作方式如预期(代码如下)。我也反对使用累积缓冲区对场景进行混叠(红色书的第10章)。
...loop多次(例如,n)通过抖动和绘制图像的代码(抖动是将图像移动到稍微不同的位置),用
glAccum(GL_ACCUM, 1.0/n)最后打电话
glAccum(GL_RETURN, 1.0)但是,我不想反化名的背景.问题是使用glAccum复制(覆盖)颜色缓冲区中的值(而不是使用深度测试和混合函数等)调用GL_RETURN来掩盖写入颜色缓冲区的值。
如何在反混叠之前或之后绘制背景,使背景看起来就像在没有反混叠的情况下绘制3D场景一样?
// Draw the background.
glMatrixMode GL.GL_PROJECTION
glLoadIdentity
glMatrixMode GL.GL_MODELVIEW
glLoadIdentity
glPolygonMode GL_FRONT_AND_BACK, GL_FILL
glDisable glcDepthTest
glBegin bmQuads
// Call glColor and glVertex here.
glEnd
glEnable glcDepthTest发布于 2009-11-21 23:13:15
如果你只是在外观之后,而不是在寻找渲染加速,不要抖动背景。您的循环将绘制背景,应用抖动,然后绘制前景。由于背景从不移动,累积的背景将被别名。
https://stackoverflow.com/questions/1772895
复制相似问题