在OpenGL上,我使用glTexSubImage2d
用矩形精灵覆盖2D纹理的特定部分。但是,这些精灵有一些我想要忽略的透明像素(0x00000000
) - 也就是说,我不希望这些像素覆盖目标纹理上的位置上的任何像素。有没有办法告诉OpenGL不要覆盖这些像素?
这必须与尽可能低的OpenGL版本兼容。
答案 0 :(得分:2)
不,无论来源或目标是什么,glTexSubImage2d
都会将数据直接复制到纹理。
我只能建议您使用glTexSubImage2d
创建另一个包含您要尝试推送的数据的纹理,然后将此纹理绘制到目标纹理。这将产生一个非常标准的绘图管道,因此您可以使用混合函数或着色器执行任何操作。