aboutsummaryrefslogtreecommitdiff
path: root/tests/texturing
diff options
context:
space:
mode:
authorBrian Paul <brianp@vmware.com>2012-09-29 08:33:54 -0600
committerBrian Paul <brianp@vmware.com>2012-10-03 08:13:57 -0600
commite2f091f574121a94371c2812b3e610cc5f2c5837 (patch)
treea863a891a72a3f55c0f2e17a377a8c61e530de9e /tests/texturing
parent022293cdc4ba8f965bd80df71d834ec7e86f940d (diff)
compressedteximage: use new piglit compressed texture helpers
Reviewed-by: Eric Anholt <eric@anholt.net>
Diffstat (limited to 'tests/texturing')
-rw-r--r--tests/texturing/compressedteximage.c52
1 files changed, 22 insertions, 30 deletions
diff --git a/tests/texturing/compressedteximage.c b/tests/texturing/compressedteximage.c
index dd83a7b1..7bcac9f2 100644
--- a/tests/texturing/compressedteximage.c
+++ b/tests/texturing/compressedteximage.c
@@ -44,7 +44,6 @@ PIGLIT_GL_TEST_MAIN(
struct format {
const char *name;
GLenum token;
- int bw, bh, bs;
const char **extension;
};
@@ -77,33 +76,27 @@ const char *RGTC_signed[] = {
NULL
};
-#define FORMAT(t, bw, bh, bs, ext) { #t, t, bw, bh, bs, ext }
+#define FORMAT(t, ext) { #t, t, ext }
static struct format formats[] = {
- FORMAT(GL_COMPRESSED_RGB_FXT1_3DFX, 8, 4, 16, FXT1),
- FORMAT(GL_COMPRESSED_RGBA_FXT1_3DFX, 8, 4, 16, FXT1),
-
- FORMAT(GL_COMPRESSED_RGB_S3TC_DXT1_EXT, 4, 4, 8, S3TC),
- FORMAT(GL_COMPRESSED_RGBA_S3TC_DXT1_EXT, 4, 4, 8, S3TC),
- FORMAT(GL_COMPRESSED_RGBA_S3TC_DXT3_EXT, 4, 4, 16, S3TC),
- FORMAT(GL_COMPRESSED_RGBA_S3TC_DXT5_EXT, 4, 4, 16, S3TC),
-
- FORMAT(GL_COMPRESSED_SRGB_S3TC_DXT1_EXT, 4, 4, 8, S3TC_srgb),
- FORMAT(GL_COMPRESSED_SRGB_ALPHA_S3TC_DXT1_EXT, 4, 4, 8, S3TC_srgb),
- FORMAT(GL_COMPRESSED_SRGB_ALPHA_S3TC_DXT3_EXT, 4, 4, 16, S3TC_srgb),
- FORMAT(GL_COMPRESSED_SRGB_ALPHA_S3TC_DXT5_EXT, 4, 4, 16, S3TC_srgb),
-
- FORMAT(GL_COMPRESSED_RED_RGTC1_EXT, 4, 4, 8, RGTC),
- FORMAT(GL_COMPRESSED_SIGNED_RED_RGTC1_EXT, 4, 4, 8, RGTC_signed),
- FORMAT(GL_COMPRESSED_RED_GREEN_RGTC2_EXT, 4, 4, 16, RGTC),
- FORMAT(GL_COMPRESSED_SIGNED_RED_GREEN_RGTC2_EXT, 4, 4, 16, RGTC_signed),
+ FORMAT(GL_COMPRESSED_RGB_FXT1_3DFX, FXT1),
+ FORMAT(GL_COMPRESSED_RGBA_FXT1_3DFX, FXT1),
+
+ FORMAT(GL_COMPRESSED_RGB_S3TC_DXT1_EXT, S3TC),
+ FORMAT(GL_COMPRESSED_RGBA_S3TC_DXT1_EXT, S3TC),
+ FORMAT(GL_COMPRESSED_RGBA_S3TC_DXT3_EXT, S3TC),
+ FORMAT(GL_COMPRESSED_RGBA_S3TC_DXT5_EXT, S3TC),
+
+ FORMAT(GL_COMPRESSED_SRGB_S3TC_DXT1_EXT, S3TC_srgb),
+ FORMAT(GL_COMPRESSED_SRGB_ALPHA_S3TC_DXT1_EXT, S3TC_srgb),
+ FORMAT(GL_COMPRESSED_SRGB_ALPHA_S3TC_DXT3_EXT, S3TC_srgb),
+ FORMAT(GL_COMPRESSED_SRGB_ALPHA_S3TC_DXT5_EXT, S3TC_srgb),
+
+ FORMAT(GL_COMPRESSED_RED_RGTC1_EXT, RGTC),
+ FORMAT(GL_COMPRESSED_SIGNED_RED_RGTC1_EXT, RGTC_signed),
+ FORMAT(GL_COMPRESSED_RED_GREEN_RGTC2_EXT, RGTC),
+ FORMAT(GL_COMPRESSED_SIGNED_RED_GREEN_RGTC2_EXT, RGTC_signed),
};
-static int
-align(int v, int a)
-{
- return (v + a - 1) & ~(a - 1);
-}
-
static void
display_mipmaps(int x, int y)
{
@@ -180,7 +173,9 @@ piglit_display(void)
GLuint tex, tex_src;
bool pass;
int level;
+ unsigned bw, bh, bs;
+ piglit_get_compressed_block_size(format->token, &bw, &bh, &bs);
glClearColor(0.5, 0.5, 0.5, 0.5);
glClear(GL_COLOR_BUFFER_BIT);
@@ -190,16 +185,13 @@ piglit_display(void)
glGenTextures(1, &tex);
for (level = 0; (SIZE >> level) > 0; level++) {
- int w, h, w_a, h_a;
+ int w, h;
int expected_size, size;
void *compressed;
w = SIZE >> level;
h = SIZE >> level;
- w_a = align(w, format->bw);
- h_a = align(h, format->bh);
- expected_size = ((w_a / format->bw) *
- (h_a / format->bh)) * format->bs;
+ expected_size = piglit_compressed_image_size(format->token, w, h);
glBindTexture(GL_TEXTURE_2D, tex_src);
glGetTexLevelParameteriv(GL_TEXTURE_2D, level,