diff options
author | Brian Paul <[email protected]> | 2012-03-17 16:30:03 -0600 |
---|---|---|
committer | Brian Paul <[email protected]> | 2012-03-20 08:23:32 -0600 |
commit | 73fd269d2f5aa2a0b9bc03ef904b81e263e3cc37 (patch) | |
tree | 1839105a2ce1d882e774437f78e78f28763fbc0f /src/mesa/main/texobj.h | |
parent | f4a93e0665881dd58a95abb6525676bd1cc2e6af (diff) |
mesa: add integer texture completeness check
Per the spec, only nearest filtering is supported for integer textures.
Otherwise, the texture is incomplete.
Reviewed-by: José Fonseca <[email protected]>
Reviewed-by: Eric Anholt <[email protected]>
Diffstat (limited to 'src/mesa/main/texobj.h')
-rw-r--r-- | src/mesa/main/texobj.h | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/src/mesa/main/texobj.h b/src/mesa/main/texobj.h index 850091e9636..c020b901382 100644 --- a/src/mesa/main/texobj.h +++ b/src/mesa/main/texobj.h @@ -83,6 +83,14 @@ static inline GLboolean _mesa_is_texture_complete(const struct gl_texture_object *texObj, const struct gl_sampler_object *sampler) { + if (texObj->_IsIntegerFormat && + (sampler->MagFilter != GL_NEAREST || + (sampler->MinFilter != GL_NEAREST && + sampler->MinFilter != GL_NEAREST_MIPMAP_NEAREST))) { + /* If the format is integer, only nearest filtering is allowed */ + return GL_FALSE; + } + if (_mesa_is_mipmap_filter(sampler)) return texObj->_MipmapComplete; else |