我有一些使用glBlendFuncSeparateOES和glBendEquationSeparateOES的代码,以便使用alpha渲染到帧缓冲区。
但是,我发现我的一些目标设备似乎不支持这些功能。它们无声地失败,所有发生的事情都是你的渲染模式没有被设置。我的Kinda Fire廉价平板电脑和老三星都表现出这种行为。
有没有一种好的方法,在Android上,查询他们是否真的实现了?我已经尝试了eglGetProcAddress,但是它返回了你抛出的任何字符串的地址!!!!!
目前,我只是让游戏在启动时对小型FBO进行快速渲染,以查看透明度是否正确或是否有伪影。它有效,但它是一种非常复杂的方法。
如果有类似glIsBlendFuncSeparateSupported()的话,我更喜欢。
答案 0 :(得分:1)
您可以使用glGetString(GL_EXTENSIONS)
获取所有可用扩展程序的列表。这将返回以空格分隔的受支持扩展列表。有关详细信息,请参阅Khronos specification。