diff options
author | Sean Harmer <sean.harmer.qnx@kdab.com> | 2012-08-06 10:55:53 +0100 |
---|---|---|
committer | Qt by Nokia <qt-info@nokia.com> | 2012-08-06 16:04:43 +0200 |
commit | 96bc8835ebbbbc545b7cefd41f01512fc0d271c1 (patch) | |
tree | 3e71f6ce236d8eb5d42f6b54a3767111c82bf922 /src | |
parent | 57265a20cba2a1d5990dffb857c9e68e58644e28 (diff) |
OpenGL: Add finer-grained functionality checks for NPOT textures
The GL_IMG_texture_npot extension only provides partial support for
npot textures in that it allows use of npot textures but it does not
support the GL_REPEAT texture mode (needed for tiling fill modes in the
QQ2 image element).
Adding this new finer-grained feature check allows QQ2 to still use npot
textures where GL_REPEAT is not needed with only the IMG extension
present.
A follow-up commit will make a check for this in qtdeclarative.
Change-Id: Iff3dbdb955fb334d9e32f3abd49e90ff0ed9836c
Reviewed-by: Gunnar Sletta <gunnar.sletta@nokia.com>
Diffstat (limited to 'src')
-rw-r--r-- | src/gui/opengl/qopenglfunctions.cpp | 5 | ||||
-rw-r--r-- | src/gui/opengl/qopenglfunctions.h | 3 |
2 files changed, 5 insertions, 3 deletions
diff --git a/src/gui/opengl/qopenglfunctions.cpp b/src/gui/opengl/qopenglfunctions.cpp index a5fcbd1a8a..b2728abc10 100644 --- a/src/gui/opengl/qopenglfunctions.cpp +++ b/src/gui/opengl/qopenglfunctions.cpp @@ -265,10 +265,11 @@ static int qt_gl_resolve_features() QOpenGLFunctions::Multisample | QOpenGLFunctions::StencilSeparate; QOpenGLExtensionMatcher extensions; - if (extensions.match("GL_OES_texture_npot")) - features |= QOpenGLFunctions::NPOTTextures; if (extensions.match("GL_IMG_texture_npot")) features |= QOpenGLFunctions::NPOTTextures; + if (extensions.match("GL_OES_texture_npot")) + features |= QOpenGLFunctions::NPOTTextures | + QOpenGLFunctions::NPOTTextureRepeat; return features; #elif defined(QT_OPENGL_ES) int features = QOpenGLFunctions::Multitexture | diff --git a/src/gui/opengl/qopenglfunctions.h b/src/gui/opengl/qopenglfunctions.h index fc55a6b384..9657679bf9 100644 --- a/src/gui/opengl/qopenglfunctions.h +++ b/src/gui/opengl/qopenglfunctions.h @@ -217,7 +217,8 @@ public: CompressedTextures = 0x0200, Multisample = 0x0400, StencilSeparate = 0x0800, - NPOTTextures = 0x1000 + NPOTTextures = 0x1000, + NPOTTextureRepeat = 0x2000 }; Q_DECLARE_FLAGS(OpenGLFeatures, OpenGLFeature) |