diff options
author | Ilia Mirkin <imirkin@alum.mit.edu> | 2015-03-23 06:19:38 -0400 |
---|---|---|
committer | Ilia Mirkin <imirkin@alum.mit.edu> | 2015-03-24 10:12:19 -0400 |
commit | 3a30f0e125bc5ded323dbd850ef9a2a61d04b71b (patch) | |
tree | b7d402f12ac817ca3b37fa4986e607882d3df9fd | |
parent | 23c0f58b87c2eb2b45f4016c1063e6c512c89308 (diff) |
samplers: add a test that has a sampler array inside of a struct
Based on in-parameter-struct-array.
Signed-off-by: Ilia Mirkin <imirkin@alum.mit.edu>
Reviewed-by: Tapani Pälli <tapani.palli@intel.com>
-rw-r--r-- | tests/spec/glsl-1.10/execution/samplers/in-parameter-struct-array.shader_test | 39 |
1 files changed, 39 insertions, 0 deletions
diff --git a/tests/spec/glsl-1.10/execution/samplers/in-parameter-struct-array.shader_test b/tests/spec/glsl-1.10/execution/samplers/in-parameter-struct-array.shader_test new file mode 100644 index 000000000..a392bd45e --- /dev/null +++ b/tests/spec/glsl-1.10/execution/samplers/in-parameter-struct-array.shader_test @@ -0,0 +1,39 @@ +[require] +GLSL >= 1.10 + +[vertex shader] +varying vec4 texcoords; + +void main() +{ + gl_Position = gl_Vertex; + texcoords = (gl_Vertex + 1.0) / 2.0; +} + +[fragment shader] +varying vec4 texcoords; +struct S { + float f; + sampler2D tex[1]; +}; +uniform S s; + +vec4 foo(in S foo_s, vec4 foo_texcoords) +{ + return texture2D(foo_s.tex[0], foo_texcoords.xy) * foo_s.f; +} + +void main() +{ + gl_FragColor = foo(s, texcoords); +} + +[test] +uniform int s.tex[0] 1 +uniform float s.f 1.0 +texture rgbw 1 (8, 8) +draw rect -1 -1 2 2 +relative probe rgb (0.25, 0.25) (1.0, 0.0, 0.0) +relative probe rgb (0.75, 0.25) (0.0, 1.0, 0.0) +relative probe rgb (0.25, 0.75) (0.0, 0.0, 1.0) +relative probe rgb (0.75, 0.75) (1.0, 1.0, 1.0) |