如果我有一个使用不带Alpha的颜色格式的渲染缓冲区,例如GL_RG8
,如何告诉Alpha混合器将绿色通道用于Alpha?可以使用旋转遮罩在纹理中完成此操作,但是由于渲染缓冲区不支持这些纹理,我该怎么办?
我当前的blendFunc是GL_SRC_ALPHA, GL_ONE_MINUS_SRC_ALPHA
。
答案 0 :(得分:3)
片段着色器的每个用户定义的输出均包含4个通道:RGBA。不管输出将写入的目标图像格式为何,这都是正确的。这些输出是混合操作的源颜色。
因此,只需照常写入输出的Alpha。不会将Alpha写入帧缓冲区图像没关系。它仍然是源颜色的一部分,因此仍可以用于混合。