使用glBlendEquation dOES(GL_MAX_EXT)后如何禁用它?

时间:2012-04-13 10:40:46

标签: iphone opengl-es cocos2d-iphone

我试图绘制一个发光的纹理,并在阅读这篇文章后: Opengl ES 1.x glowing effect in iOS。 我已经使用了这个glBlendEquationOES(GL_MAX_EXT)命令来实现我想要的效果,但问题是它会使其他一切都被破坏。 我想知道如何在使用后禁用glBlendEquationOES(GL_MAX_EXT)?或者将其恢复为默认模式? 谢谢! 盖

2 个答案:

答案 0 :(得分:0)

您禁用混合...禁用混合。您通过调用glEnable(GL_BLEND)启用了混合。关闭它意味着调用glDisable(GL_BLEND)

混合方程式/功能可以保留。您不必将它们设置为默认值或任何特定值。禁用混合意味着它们的值无关紧要。

答案 1 :(得分:0)

您是否尝试过保存并恢复图形状态?

CGContextRef context = UIGraphicsGetCurrentContext();
CGContextSaveGState(context);

// graphics state corrupting code ...

CGContextRestoreGState(context);