svga: improve check for 3D compressed textures

This is basically a a respin of f1dfcf4bce35e6796f873d9a00103b280da81e4c
per Jose's suggestion.

Just set the SVGA3dSurfaceFormatCaps flags for 3D and cube textures
when checking the texture format capabilities.  This will filter out
unsupported combinations like 3D+DXT.

Reviewed-by: Jose Fonseca <jfonseca@vmware.com>
This commit is contained in:
Brian Paul 2013-11-19 07:54:17 -08:00
parent 5ab59e5332
commit 92c3d5acf7

View file

@ -447,11 +447,6 @@ svga_is_format_supported( struct pipe_screen *screen,
}
}
if (target == PIPE_TEXTURE_3D && util_format_is_compressed(format)) {
/* we don't support compressed 3D textures at this time */
return FALSE;
}
/*
* Query the host capabilities.
*/
@ -469,6 +464,13 @@ svga_is_format_supported( struct pipe_screen *screen,
mask.texture = 1;
}
if (target == PIPE_TEXTURE_CUBE) {
mask.cubeTexture = 1;
}
if (target == PIPE_TEXTURE_3D) {
mask.volumeTexture = 1;
}
return (caps.value & mask.value) == mask.value;
}