The magnitude of the vector formed by the first three texcoords should not affect the result.
This turns out to be a significant edge case in the i965 driver, which normalizes the coords such that the largest component does not exceed [-1..1], but currently bogusly multiplies the fourth coord [the array index] as well. Signed-off-by: Chris Forbes <[email protected]> --- tests/spec/arb_texture_cube_map_array/cubemap.c | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/tests/spec/arb_texture_cube_map_array/cubemap.c b/tests/spec/arb_texture_cube_map_array/cubemap.c index 320f6dc..b1c5bb4 100644 --- a/tests/spec/arb_texture_cube_map_array/cubemap.c +++ b/tests/spec/arb_texture_cube_map_array/cubemap.c @@ -39,6 +39,8 @@ #define NUM_LAYERS 2 +#define COORD_SCALE 0.5 + PIGLIT_GL_TEST_CONFIG_BEGIN config.supports_gl_compat_version = 10; @@ -68,10 +70,12 @@ GLfloat a_cube_face_texcoords[6][4][4]; void setup_texcoords(void) { - int i, j; + int i, j, k; for (i = 0; i < 6; i++) { for (j = 0; j < 4; j++) { - memcpy(a_cube_face_texcoords[i][j], cube_face_texcoords[i][j], 3 * sizeof(GLfloat)); + for (k = 0; k < 3; k++) { + a_cube_face_texcoords[i][j][k] = COORD_SCALE * cube_face_texcoords[i][j][k]; + } } } } -- 1.8.4 _______________________________________________ Piglit mailing list [email protected] http://lists.freedesktop.org/mailman/listinfo/piglit
