查询OpenGL功能

时间:2012-09-28 06:01:06

标签: iphone ios ipad opengl-es opengl-es-2.0

我一直在使用glGetIntegerv和glGetString来查询OpenGL扩展和属性(例如最大纹理大小等)。现在我想知道我的设备是否支持浮动纹理:

GLint ext_tex;
glGetIntegerv(GL_HALF_FLOAT_OES, &ext_tex);

不幸的是,对于所有设备都返回“0”,也支持浮动纹理。如何确定设备是否支持此纹理格式?目前我使用的是iPhone 4S和iPad2及更高版本支持此扩展的iOS,但我更喜欢通用解决方案,而不是根据设备型号决定。

1 个答案:

答案 0 :(得分:1)

您可以通过获取扩展字符串(glGetString(GL_EXTENSIONS))并搜索相应的扩展名来检测对扩展的支持。如果它在那里,则支持它。