I have the same failure on radeonsi. Marek
On Thu, Aug 7, 2014 at 7:43 PM, Ilia Mirkin <[email protected]> wrote: > Can I assume that you tested this on llvmpipe and it worked? I'm > getting failures on render-1darray with nvc0, whereby layers 1+ are > random data, but we pass all the regular texture lookup tests... > > On Fri, Aug 1, 2014 at 11:07 AM, Brian Paul <[email protected]> wrote: >> Check that we're sampling from the expected array slices. >> --- >> .../render-1darray-1slice.shader_test | 35 +++++++++++++++ >> .../ext_texture_array/render-1darray.shader_test | 45 >> ++++++++++++++++++++ >> .../render-2darray-1slice.shader_test | 34 +++++++++++++++ >> .../ext_texture_array/render-2darray.shader_test | 44 >> +++++++++++++++++++ >> 4 files changed, 158 insertions(+) >> create mode 100644 >> tests/spec/ext_texture_array/render-1darray-1slice.shader_test >> create mode 100644 tests/spec/ext_texture_array/render-1darray.shader_test >> create mode 100644 >> tests/spec/ext_texture_array/render-2darray-1slice.shader_test >> create mode 100644 tests/spec/ext_texture_array/render-2darray.shader_test >> >> diff --git a/tests/spec/ext_texture_array/render-1darray-1slice.shader_test >> b/tests/spec/ext_texture_array/render-1darray-1slice.shader_test >> new file mode 100644 >> index 0000000..f524c06 >> --- /dev/null >> +++ b/tests/spec/ext_texture_array/render-1darray-1slice.shader_test >> @@ -0,0 +1,35 @@ >> +# Test GL_TEXTURE_1D_ARRAY texture with just one layer >> +[require] >> +GLSL >= 1.10 >> +GL_EXT_texture_array >> + >> +[vertex shader] >> +#version 110 >> +varying vec4 texcoords; >> +void main() { >> + gl_Position = gl_Vertex; >> + texcoords = (gl_Vertex + 1.0) / 2.0; >> +} >> + >> +[fragment shader] >> +#version 110 >> +#extension GL_EXT_texture_array : enable >> +varying vec4 texcoords; >> +uniform sampler1DArray tex; >> +uniform float layer; >> + >> +void main() >> +{ >> + vec2 p = vec2(texcoords.x, layer); >> + gl_FragColor = texture1DArray(tex, p); >> +} >> + >> +[test] >> +uniform int tex 0 >> +texture rgbw 1DArray 0 ( 64 , 1 ) >> + >> +# layer=12 should get clamped to zero >> +uniform float layer 12 >> +draw rect -1 -1 2 2 >> +relative probe rgba (0.5, 0.5) (1.0, 0.0, 0.0, 1.0) >> + >> diff --git a/tests/spec/ext_texture_array/render-1darray.shader_test >> b/tests/spec/ext_texture_array/render-1darray.shader_test >> new file mode 100644 >> index 0000000..74b6154 >> --- /dev/null >> +++ b/tests/spec/ext_texture_array/render-1darray.shader_test >> @@ -0,0 +1,45 @@ >> +# Test GL_TEXTURE_1D_ARRAY texture with four layers >> +[require] >> +GLSL >= 1.10 >> +GL_EXT_texture_array >> + >> +[vertex shader] >> +#version 110 >> +varying vec4 texcoords; >> +void main() { >> + gl_Position = gl_Vertex; >> + texcoords = (gl_Vertex + 1.0) / 2.0; >> +} >> + >> +[fragment shader] >> +#version 110 >> +#extension GL_EXT_texture_array : enable >> +varying vec4 texcoords; >> +uniform sampler1DArray tex; >> +uniform float layer; >> + >> +void main() >> +{ >> + vec2 p = vec2(texcoords.x, layer); >> + gl_FragColor = texture1DArray(tex, p); >> +} >> + >> +[test] >> +uniform int tex 0 >> +texture rgbw 1DArray 0 ( 64 , 4 ) >> + >> +uniform float layer 0 >> +draw rect -1 -1 2 2 >> +relative probe rgba (0.5, 0.5) (1.0, 0.0, 0.0, 1.0) >> + >> +uniform float layer 1 >> +draw rect -1 -1 2 2 >> +relative probe rgba (0.5, 0.5) (0.0, 1.0, 0.0, 1.0) >> + >> +uniform float layer 2 >> +draw rect -1 -1 2 2 >> +relative probe rgba (0.5, 0.5) (0.0, 0.0, 1.0, 1.0) >> + >> +uniform float layer 3 >> +draw rect -1 -1 2 2 >> +relative probe rgba (0.5, 0.5) (1.0, 1.0, 1.0, 1.0) >> diff --git a/tests/spec/ext_texture_array/render-2darray-1slice.shader_test >> b/tests/spec/ext_texture_array/render-2darray-1slice.shader_test >> new file mode 100644 >> index 0000000..335436d >> --- /dev/null >> +++ b/tests/spec/ext_texture_array/render-2darray-1slice.shader_test >> @@ -0,0 +1,34 @@ >> +# Test GL_TEXTURE_2D_ARRAY with just one slice >> +[require] >> +GLSL >= 1.10 >> +GL_EXT_texture_array >> + >> +[vertex shader] >> +#version 110 >> +varying vec4 texcoords; >> +void main() { >> + gl_Position = gl_Vertex; >> + texcoords = (gl_Vertex + 1.0) / 2.0; >> +} >> + >> +[fragment shader] >> +#version 110 >> +#extension GL_EXT_texture_array : enable >> +varying vec4 texcoords; >> +uniform sampler2DArray tex; >> +uniform float layer; >> + >> +void main() >> +{ >> + vec3 p = vec3(texcoords.xy, layer); >> + gl_FragColor = texture2DArray(tex, p); >> +} >> + >> +[test] >> +uniform int tex 0 >> +texture rgbw 2DArray 0 (32, 32, 1) >> + >> +# layer=12 should get clamped to zero >> +uniform float layer 12 >> +draw rect -1 -1 2 2 >> +relative probe rgba (0.5, 0.5) (1.0, 0.0, 0.0, 1.0) >> diff --git a/tests/spec/ext_texture_array/render-2darray.shader_test >> b/tests/spec/ext_texture_array/render-2darray.shader_test >> new file mode 100644 >> index 0000000..189bb13 >> --- /dev/null >> +++ b/tests/spec/ext_texture_array/render-2darray.shader_test >> @@ -0,0 +1,44 @@ >> +[require] >> +GLSL >= 1.10 >> +GL_EXT_texture_array >> + >> +[vertex shader] >> +#version 110 >> +varying vec4 texcoords; >> +void main() { >> + gl_Position = gl_Vertex; >> + texcoords = (gl_Vertex + 1.0) / 2.0; >> +} >> + >> +[fragment shader] >> +#version 110 >> +#extension GL_EXT_texture_array : enable >> +varying vec4 texcoords; >> +uniform sampler2DArray tex; >> +uniform float layer; >> + >> +void main() >> +{ >> + vec3 p = vec3(texcoords.xy, layer); >> + gl_FragColor = texture2DArray(tex, p); >> +} >> + >> +[test] >> +uniform int tex 0 >> +texture rgbw 2DArray 0 (32, 32, 4) >> + >> +uniform float layer 0 >> +draw rect -1 -1 2 2 >> +relative probe rgba (0.5, 0.5) (1.0, 0.0, 0.0, 1.0) >> + >> +uniform float layer 1 >> +draw rect -1 -1 2 2 >> +relative probe rgba (0.5, 0.5) (0.0, 1.0, 0.0, 1.0) >> + >> +uniform float layer 2 >> +draw rect -1 -1 2 2 >> +relative probe rgba (0.5, 0.5) (0.0, 0.0, 1.0, 1.0) >> + >> +uniform float layer 3 >> +draw rect -1 -1 2 2 >> +relative probe rgba (0.5, 0.5) (1.0, 1.0, 1.0, 1.0) >> -- >> 1.7.10.4 >> >> _______________________________________________ >> Piglit mailing list >> [email protected] >> http://lists.freedesktop.org/mailman/listinfo/piglit > _______________________________________________ > Piglit mailing list > [email protected] > http://lists.freedesktop.org/mailman/listinfo/piglit _______________________________________________ Piglit mailing list [email protected] http://lists.freedesktop.org/mailman/listinfo/piglit
