OpenGL的帧缓冲反转像素
-
27-09-2019 - |
题
我想知道是反转彩色像素在帧缓冲器是最好的方式。我知道这是可能的glReadPixels()
和glDrawPixels()
但这些电话的性能损失是相当大的事情。
基本上,我想要做的是有一个倒颜色十字线是始终可见不管它背后。例如,我想具有任意的α掩码位图或纹理,有它呈现没有深度测试场景被吸入后,所有的纹理的掩蔽(全alpha)个像素下的帧缓冲器的像素将被反转。
我一直在试图与纹理要做到这一点,但我发现了一些奇怪的结果,也是所有混合选项我仍然觉得困惑。
解决方案
给像这一试:
glEnable(GL_COLOR_LOGIC_OP);
glLogicOp(GL_XOR);
// render geometry
glDisable(GL_COLOR_LOGIC_OP);
其他提示
怎么样:
glEnable (GL_BLEND);
glBlend (GL_ONE_MINUS_DST_COLOR, GL_ZERO);
不隶属于 StackOverflow