我正在尝试在具有 arm6 处理器且仅支持 OpenGL ES 1.1 的旧 iOS 设备上构建代码。函数 glBlendFuncSeparate 崩溃。我在 stackoverflow 上找到了这篇文章 -
iPhone OpenGL ES missing functions should be there - glBlendFuncSeparate etc
所以我将 OES 添加到函数的末尾,但它仍然崩溃。我已经仔细检查以确保我包含了 OpenGLES/ES1/glext.h 并且我包含了。
有人知道这是怎么回事吗? iOS 上的 OpenGLES 1.1 是否支持此功能?如果是,您如何使用它?
最佳答案
经过大量研究和工作,我发现旧设备上的 iOS OpenGLES 1.1 不支持 glBlendFuncSeparate。
我们发现的最简单的解决方法(尽管确实涉及更多绘制调用)是使用 glColorMask。您屏蔽 alpha 并设置混合模式并绘制一次,然后屏蔽颜色并设置 alpha 混合模式并再次绘制。
希望这能帮助其他遇到同样问题的人!
关于ios - glBlendFuncSeparate 在 iOS 上的 OpenGL1.1 上崩溃,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5347156/