这与我最后的question有关。为了得到这个图片:渲染到纹理时的图像混合问题
http://img252.imageshack.us/img252/623/picture8z.png
我画一个白色背景(彩色=
(1, 1, 1, 1)
)。我渲染到纹理颜色=
(1, 0, 0, .8)
两个左上平方和混合功能(GL_SRC_ALPHA, GL_ONE_MINUS_SRC_ALPHA)
,然后绘制颜色=(1, 1, 1, 1)
纹理和混合功能(GL_ONE, GL_ONE_MINUS_SRC_ALPHA)
。我绘制颜色=
(1, 0, 0, .8)
和混合函数(GL_SRC_ALPHA, GL_ONE_MINUS_SRC_ALPHA)
的右下方。
通过我的计算,渲染到纹理广场应绘制质感的白色背景后有色差
.8 * (1, 0, 0, .8) + (1 - .8) * (0, 0, 0, 0) = (.8, 0, 0, .64)
,因此,他们应该有颜色
(.8, 0, 0, .64) + (1 - .8) * (1, 1, 1, 1) = (1, .2, .2, .84)
而右下方的方格应该有颜色
.8 * (1, 0, 0, .8) + (1 - .8) * (1, 1, 1, 1) = (1, .2, .2, .84)
这应该看起来一样!我的推理是错误的吗?我的计算错了吗?
无论如何,我的目标是缓存我的一些场景。我如何渲染到纹理,然后绘制该纹理,以便它相当于只是绘制场景内联?