On Fri, Jul 22, 2016 at 02:01:35PM -0700, Anuj Phogat wrote: > This adds the testing of EXT_texture_sRGB_decode with ASTC > compressed textures. > > Cc: Nanley Chery <[email protected]> > Signed-off-by: Anuj Phogat <[email protected]>
Patches 4 and 5 are, Reviewed-by: Nanley Chery <[email protected]> > --- > tests/all.py | 2 +- > .../khr_compressed_astc-miptree.c | 26 > +++++++++++++++++++--- > 2 files changed, 24 insertions(+), 4 deletions(-) > > diff --git a/tests/all.py b/tests/all.py > index 6db24ad..e2998d0 100644 > --- a/tests/all.py > +++ b/tests/all.py > @@ -4355,7 +4355,7 @@ with profile.group_manager( > g(['khr_compressed_astc-basic_gl'], 'basic-gl') > g(['khr_compressed_astc-basic_gles2'], 'basic-gles') > > - for subtest in ('hdr', 'ldr', 'srgb', "srgb-fp"): > + for subtest in ('hdr', 'ldr', 'srgb', "srgb-fp", "srgb-sd"): > g(['khr_compressed_astc-miptree_gl', '-subtest', subtest], > 'miptree-gl {}'.format(subtest)) > g(['khr_compressed_astc-miptree_gles2', '-subtest', subtest], > diff --git > a/tests/spec/khr_texture_compression_astc/khr_compressed_astc-miptree.c > b/tests/spec/khr_texture_compression_astc/khr_compressed_astc-miptree.c > index 61edc5f..da43cb8 100644 > --- a/tests/spec/khr_texture_compression_astc/khr_compressed_astc-miptree.c > +++ b/tests/spec/khr_texture_compression_astc/khr_compressed_astc-miptree.c > @@ -60,6 +60,7 @@ enum test_type > TEST_TYPE_LDR, > TEST_TYPE_SRGB, > TEST_TYPE_SRGB_FP, > + TEST_TYPE_SRGB_SD, > }; > > enum piglit_result > @@ -69,6 +70,7 @@ static enum test_type ldr_test = TEST_TYPE_LDR; > static enum test_type hdr_test = TEST_TYPE_HDR; > static enum test_type srgb_test = TEST_TYPE_SRGB; > static enum test_type srgb_fp_test = TEST_TYPE_SRGB_FP; > +static enum test_type srgb_skip_test = TEST_TYPE_SRGB_SD; > static const struct piglit_subtest subtests[] = { > { > "LDR Profile", > @@ -94,6 +96,12 @@ static const struct piglit_subtest subtests[] = { > test_miptrees, > &srgb_fp_test, > }, > + { > + "sRGB skip decode", > + "srgb-sd", > + test_miptrees, > + &srgb_skip_test, > + }, > {NULL}, > }; > > @@ -159,7 +167,7 @@ load_texture(const char *dir1, const char *dir2, > } > > /** Compares the compressed texture against the decompressed texture */ > -bool draw_compare_levels(bool check_error, > +bool draw_compare_levels(bool check_error, bool srgb_skip_decode, > GLint level_pixel_size_loc, GLint pixel_offset_loc, > GLuint compressed_tex, GLuint decompressed_tex) > { > @@ -179,12 +187,20 @@ bool draw_compare_levels(bool check_error, > > /* Draw miplevel of compressed texture. */ > glBindTexture(GL_TEXTURE_2D, compressed_tex); > + if (srgb_skip_decode) > + glTexParameteri(GL_TEXTURE_2D, > + GL_TEXTURE_SRGB_DECODE_EXT, > + GL_SKIP_DECODE_EXT); > glUniform2f(pixel_offset_loc, x, y); > glDrawArrays(GL_TRIANGLE_FAN, 0, NUM_VERTICES); > > /* Draw miplevel of decompressed texture. */ > if (!check_error) { > glBindTexture(GL_TEXTURE_2D, decompressed_tex); > + if (srgb_skip_decode) > + glTexParameteri(GL_TEXTURE_2D, > + GL_TEXTURE_SRGB_DECODE_EXT, > + GL_SKIP_DECODE_EXT); > glUniform2f(pixel_offset_loc, LEVEL0_WIDTH + x, y); > glDrawArrays(GL_TRIANGLE_FAN, 0, NUM_VERTICES); > } > @@ -224,9 +240,10 @@ test_miptrees(void* input_type) > { > const enum test_type subtest = *(enum test_type*) input_type; > const bool is_srgb_test = subtest == TEST_TYPE_SRGB; > + const bool is_srgb_skip_decode_test = subtest == TEST_TYPE_SRGB_SD; > const bool is_hdr_test = subtest == TEST_TYPE_HDR; > > - static const char * tests[4] = {"hdr", "ldrl", "ldrs", "ldrs"}; > + static const char * tests[5] = {"hdr", "ldrl", "ldrs", "ldrs", "ldrs"}; > static const char * block_dim_str[14] = { > "4x4", > "5x4", > @@ -248,6 +265,9 @@ test_miptrees(void* input_type) > GLint level_pixel_size_loc = glGetUniformLocation(prog, > "level_pixel_size"); > > + if (is_srgb_skip_decode_test) > + piglit_require_extension("GL_EXT_texture_sRGB_decode"); > + > /* Check for error color if an LDR-only sys reading an HDR > * texture. No need to draw a reference mipmap in this case. > */ > @@ -283,7 +303,7 @@ test_miptrees(void* input_type) > > /* Draw and compare each level of the two textures */ > glClear(GL_COLOR_BUFFER_BIT); > - if (!draw_compare_levels(check_error, > + if (!draw_compare_levels(check_error, is_srgb_skip_decode_test, > level_pixel_size_loc, > pixel_offset_loc, > tex_compressed, > -- > 2.5.5 > > _______________________________________________ > Piglit mailing list > [email protected] > https://lists.freedesktop.org/mailman/listinfo/piglit _______________________________________________ Piglit mailing list [email protected] https://lists.freedesktop.org/mailman/listinfo/piglit
