首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >OpenGL各向异性滤波支持,检验结果矛盾

OpenGL各向异性滤波支持,检验结果矛盾
EN

Stack Overflow用户
提问于 2013-08-26 15:41:09
回答 2查看 1.5K关注 0票数 4

当检查是否支持各向异性滤波时,我得到了矛盾的结果。

代码语言:javascript
复制
if(glewIsSupported("GL_EXT_texture_filter_anisotropic") || GLEW_EXT_texture_filter_anisotropic) {
        std::cout << "support anisotropic" << std::endl;
    }

GLfloat max;
glGetFloatv(GL_MAX_TEXTURE_MAX_ANISOTROPY_EXT, &max);
std::cout << max << std::endl;

在我的机器上,这个部分的输出是:

代码语言:javascript
复制
16

因此,似乎支持16的各向异性过滤,但glewIsSupported和glew扩展字符串则相反。

检查GL_MAX_TEXTURE_MAX_ANISOTROPY_EXT足够了吗? glew检查错了吗?还是正在发生什么不同的事情?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2013-08-26 17:34:29

显然,有一个glew中已知的bug,即使在OpenGL 3+上下文中也使用了glGetString(GL_EXTENSIONS),而不是在OpenGL 3+中取代了扩展查询的glGetStringi

因此,在进行修补之前,扩展查询必须是手工完成

票数 2
EN

Stack Overflow用户

发布于 2013-10-14 20:25:58

解决鸡和蛋问题的一种可能方法是调用glGetString(GL_EXTENSIONS)并检查glGetError()是否为GL_INVALID_ENUM。只有在GL_EXTENSIONS不可用的情况下才会引发此问题。如果遇到此错误,请尝试glGetStringi。别忘了在这里检查错误。GLEW没有(从1.10 :/版本开始)。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/18447881

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档