我希望我的线条用负面颜色绘制(从线下的屏幕中获取),我只是不明白混合是如何工作的,查看文档等,测试了50种组合等等。开始认为它根本不可能......
有人可以给出这两个值吗?
答案 0 :(得分:5)
画一条白线并使用glBlendFunc(GL_ONE_MINUS_DST_COLOR, GL_ZERO);
不要忘记启用GL_BLEND
答案 1 :(得分:0)
您应该为此目的使用逻辑操作。不混合。 所以你要做的就是打电话:
glEnable(GL_COLOR_LOGIC_OP);
glLogicOp(GL_INVERT);
您也可以使用GL_ XOR,具体取决于您想要实现的目标。如果要在帧绘制发生之前的状态下准确恢复帧缓冲区,则GL_XOR非常有用。再次使用GL_XOR第二次绘制相同的行((a xor b)xor b == a )。这是CAD世界的常见技巧。