From 511e806c31cee8f5e187133df0b4386aeda9ed39 Mon Sep 17 00:00:00 2001 From: Chad Versace Date: Sat, 12 Mar 2011 15:07:18 -0800 Subject: shaders: Add tests for shadow2D() Test shadow2D(sampler2DShadow, vec3) for every combination of (depth_mode, compare_func), where - depth_mode is a one of {luminance, intensity, alpha} - compare_func is a one of {greater, always, never} Signed-off-by: Chad Versace --- tests/shaders/glsl-fs-shadow2d-01.shader_test | 28 +++++++++++++++++++++++++++ tests/shaders/glsl-fs-shadow2d-02.shader_test | 28 +++++++++++++++++++++++++++ tests/shaders/glsl-fs-shadow2d-03.shader_test | 28 +++++++++++++++++++++++++++ tests/shaders/glsl-fs-shadow2d-04.shader_test | 28 +++++++++++++++++++++++++++ tests/shaders/glsl-fs-shadow2d-05.shader_test | 28 +++++++++++++++++++++++++++ tests/shaders/glsl-fs-shadow2d-06.shader_test | 28 +++++++++++++++++++++++++++ tests/shaders/glsl-fs-shadow2d-07.shader_test | 28 +++++++++++++++++++++++++++ tests/shaders/glsl-fs-shadow2d-08.shader_test | 28 +++++++++++++++++++++++++++ tests/shaders/glsl-fs-shadow2d-09.shader_test | 28 +++++++++++++++++++++++++++ tests/shaders/glsl-fs-shadow2d.frag | 8 ++++++++ tests/shaders/glsl-fs-shadow2d.vert | 8 ++++++++ 11 files changed, 268 insertions(+) create mode 100644 tests/shaders/glsl-fs-shadow2d-01.shader_test create mode 100644 tests/shaders/glsl-fs-shadow2d-02.shader_test create mode 100644 tests/shaders/glsl-fs-shadow2d-03.shader_test create mode 100644 tests/shaders/glsl-fs-shadow2d-04.shader_test create mode 100644 tests/shaders/glsl-fs-shadow2d-05.shader_test create mode 100644 tests/shaders/glsl-fs-shadow2d-06.shader_test create mode 100644 tests/shaders/glsl-fs-shadow2d-07.shader_test create mode 100644 tests/shaders/glsl-fs-shadow2d-08.shader_test create mode 100644 tests/shaders/glsl-fs-shadow2d-09.shader_test create mode 100644 tests/shaders/glsl-fs-shadow2d.frag create mode 100644 tests/shaders/glsl-fs-shadow2d.vert diff --git a/tests/shaders/glsl-fs-shadow2d-01.shader_test b/tests/shaders/glsl-fs-shadow2d-01.shader_test new file mode 100644 index 000000000..0eb96dd82 --- /dev/null +++ b/tests/shaders/glsl-fs-shadow2d-01.shader_test @@ -0,0 +1,28 @@ +# [description] +# Test shadow2D(sampler2DShadow, vec3) with +# - depth texture mode = luminance +# - texture compare func = greater + +[require] +GLSL >= 1.10 + +[vertex shader file] +glsl-fs-shadow2d.vert + +[fragment shader file] +glsl-fs-shadow2d.frag + +[test] +uniform int tex 0 +texture shadow 0 (32, 32) +texparameter depth_mode luminance +texparameter compare_func greater +draw rect -1 -1 2 2 + +# depth comparison pass +relative probe rgba (0.0, 0.1) (1.0, 1.0, 1.0, 1.0) +relative probe rgba (0.9, 1.0) (1.0, 1.0, 1.0, 1.0) + +# depth comparison fail +relative probe rgba (0.1, 0.0) (0.0, 0.0, 0.0, 1.0) +relative probe rgba (1.0, 0.9) (0.0, 0.0, 0.0, 1.0) diff --git a/tests/shaders/glsl-fs-shadow2d-02.shader_test b/tests/shaders/glsl-fs-shadow2d-02.shader_test new file mode 100644 index 000000000..778dda6a9 --- /dev/null +++ b/tests/shaders/glsl-fs-shadow2d-02.shader_test @@ -0,0 +1,28 @@ +# [description] +# Test shadow2D(sampler2DShadow, vec3) with +# - depth texture mode = luminance +# - texture compare func = always + +[require] +GLSL >= 1.10 + +[vertex shader file] +glsl-fs-shadow2d.vert + +[fragment shader file] +glsl-fs-shadow2d.frag + +[test] +uniform int tex 0 +texture shadow 0 (32, 32) +texparameter depth_mode luminance +texparameter compare_func always +draw rect -1 -1 2 2 + +# depth comparison pass +relative probe rgba (0.0, 0.1) (1.0, 1.0, 1.0, 1.0) +relative probe rgba (0.9, 1.0) (1.0, 1.0, 1.0, 1.0) + +# depth comparison fail +relative probe rgba (0.1, 0.0) (1.0, 1.0, 1.0, 1.0) +relative probe rgba (1.0, 0.9) (1.0, 1.0, 1.0, 1.0) diff --git a/tests/shaders/glsl-fs-shadow2d-03.shader_test b/tests/shaders/glsl-fs-shadow2d-03.shader_test new file mode 100644 index 000000000..ca21e5c75 --- /dev/null +++ b/tests/shaders/glsl-fs-shadow2d-03.shader_test @@ -0,0 +1,28 @@ +# [description] +# Test shadow2D(sampler2DShadow, vec3) with +# - depth texture mode = luminance +# - texture compare func = never + +[require] +GLSL >= 1.10 + +[vertex shader file] +glsl-fs-shadow2d.vert + +[fragment shader file] +glsl-fs-shadow2d.frag + +[test] +uniform int tex 0 +texture shadow 0 (32, 32) +texparameter depth_mode luminance +texparameter compare_func never +draw rect -1 -1 2 2 + +# depth comparison pass +relative probe rgba (0.0, 0.1) (0.0, 0.0, 0.0, 1.0) +relative probe rgba (0.9, 1.0) (0.0, 0.0, 0.0, 1.0) + +# depth comparison fail +relative probe rgba (0.1, 0.0) (0.0, 0.0, 0.0, 1.0) +relative probe rgba (1.0, 0.9) (0.0, 0.0, 0.0, 1.0) diff --git a/tests/shaders/glsl-fs-shadow2d-04.shader_test b/tests/shaders/glsl-fs-shadow2d-04.shader_test new file mode 100644 index 000000000..76b2c58b9 --- /dev/null +++ b/tests/shaders/glsl-fs-shadow2d-04.shader_test @@ -0,0 +1,28 @@ +# [description] +# Test shadow2D(sampler2DShadow, vec3) with +# - depth texture mode = intensity +# - texture compare func = greater + +[require] +GLSL >= 1.10 + +[vertex shader file] +glsl-fs-shadow2d.vert + +[fragment shader file] +glsl-fs-shadow2d.frag + +[test] +uniform int tex 0 +texture shadow 0 (32, 32) +texparameter depth_mode intensity +texparameter compare_func greater +draw rect -1 -1 2 2 + +# depth comparison pass +relative probe rgba (0.0, 0.1) (1.0, 1.0, 1.0, 1.0) +relative probe rgba (0.9, 1.0) (1.0, 1.0, 1.0, 1.0) + +# depth comparison fail +relative probe rgba (0.1, 0.0) (0.0, 0.0, 0.0, 0.0) +relative probe rgba (1.0, 0.9) (0.0, 0.0, 0.0, 0.0) diff --git a/tests/shaders/glsl-fs-shadow2d-05.shader_test b/tests/shaders/glsl-fs-shadow2d-05.shader_test new file mode 100644 index 000000000..3707b1408 --- /dev/null +++ b/tests/shaders/glsl-fs-shadow2d-05.shader_test @@ -0,0 +1,28 @@ +# [description] +# Test shadow2D(sampler2DShadow, vec3) with +# - depth texture mode = intensity +# - texture compare func = always + +[require] +GLSL >= 1.10 + +[vertex shader file] +glsl-fs-shadow2d.vert + +[fragment shader file] +glsl-fs-shadow2d.frag + +[test] +uniform int tex 0 +texture shadow 0 (32, 32) +texparameter depth_mode intensity +texparameter compare_func always +draw rect -1 -1 2 2 + +# depth comparison pass +relative probe rgba (0.0, 0.1) (1.0, 1.0, 1.0, 1.0) +relative probe rgba (0.9, 1.0) (1.0, 1.0, 1.0, 1.0) + +# depth comparison fail +relative probe rgba (0.1, 0.0) (1.0, 1.0, 1.0, 1.0) +relative probe rgba (1.0, 0.9) (1.0, 1.0, 1.0, 1.0) diff --git a/tests/shaders/glsl-fs-shadow2d-06.shader_test b/tests/shaders/glsl-fs-shadow2d-06.shader_test new file mode 100644 index 000000000..200ffe25b --- /dev/null +++ b/tests/shaders/glsl-fs-shadow2d-06.shader_test @@ -0,0 +1,28 @@ +# [description] +# Test shadow2D(sampler2DShadow, vec3) with +# - depth texture mode = intensity +# - texture compare func = never + +[require] +GLSL >= 1.10 + +[vertex shader file] +glsl-fs-shadow2d.vert + +[fragment shader file] +glsl-fs-shadow2d.frag + +[test] +uniform int tex 0 +texture shadow 0 (32, 32) +texparameter depth_mode intensity +texparameter compare_func never +draw rect -1 -1 2 2 + +# depth comparison pass +relative probe rgba (0.0, 0.1) (0.0, 0.0, 0.0, 0.0) +relative probe rgba (0.9, 1.0) (0.0, 0.0, 0.0, 0.0) + +# depth comparison fail +relative probe rgba (0.1, 0.0) (0.0, 0.0, 0.0, 0.0) +relative probe rgba (1.0, 0.9) (0.0, 0.0, 0.0, 0.0) diff --git a/tests/shaders/glsl-fs-shadow2d-07.shader_test b/tests/shaders/glsl-fs-shadow2d-07.shader_test new file mode 100644 index 000000000..06f9642e7 --- /dev/null +++ b/tests/shaders/glsl-fs-shadow2d-07.shader_test @@ -0,0 +1,28 @@ +# [description] +# Test shadow2D(sampler2DShadow, vec3) with +# - depth texture mode = alpha +# - texture compare func = greater + +[require] +GLSL >= 1.10 + +[vertex shader file] +glsl-fs-shadow2d.vert + +[fragment shader file] +glsl-fs-shadow2d.frag + +[test] +uniform int tex 0 +texture shadow 0 (32, 32) +texparameter depth_mode alpha +texparameter compare_func greater +draw rect -1 -1 2 2 + +# depth comparison pass +relative probe rgba (0.0, 0.1) (0.0, 0.0, 0.0, 1.0) +relative probe rgba (0.9, 1.0) (0.0, 0.0, 0.0, 1.0) + +# depth comparison fail +relative probe rgba (0.1, 0.0) (0.0, 0.0, 0.0, 0.0) +relative probe rgba (1.0, 0.9) (0.0, 0.0, 0.0, 0.0) diff --git a/tests/shaders/glsl-fs-shadow2d-08.shader_test b/tests/shaders/glsl-fs-shadow2d-08.shader_test new file mode 100644 index 000000000..88ca0c449 --- /dev/null +++ b/tests/shaders/glsl-fs-shadow2d-08.shader_test @@ -0,0 +1,28 @@ +# [description] +# Test shadow2D(sampler2DShadow, vec3) with +# - depth texture mode = alpha +# - texture compare func = always + +[require] +GLSL >= 1.10 + +[vertex shader file] +glsl-fs-shadow2d.vert + +[fragment shader file] +glsl-fs-shadow2d.frag + +[test] +uniform int tex 0 +texture shadow 0 (32, 32) +texparameter depth_mode alpha +texparameter compare_func always +draw rect -1 -1 2 2 + +# depth comparison pass +relative probe rgba (0.0, 0.1) (0.0, 0.0, 0.0, 1.0) +relative probe rgba (0.9, 1.0) (0.0, 0.0, 0.0, 1.0) + +# depth comparison fail +relative probe rgba (0.1, 0.0) (0.0, 0.0, 0.0, 1.0) +relative probe rgba (1.0, 0.9) (0.0, 0.0, 0.0, 1.0) diff --git a/tests/shaders/glsl-fs-shadow2d-09.shader_test b/tests/shaders/glsl-fs-shadow2d-09.shader_test new file mode 100644 index 000000000..03a850fb5 --- /dev/null +++ b/tests/shaders/glsl-fs-shadow2d-09.shader_test @@ -0,0 +1,28 @@ +# [description] +# Test shadow2D(sampler2DShadow, vec3) with +# - depth texture mode = alpha +# - texture compare func = never + +[require] +GLSL >= 1.10 + +[vertex shader file] +glsl-fs-shadow2d.vert + +[fragment shader file] +glsl-fs-shadow2d.frag + +[test] +uniform int tex 0 +texture shadow 0 (32, 32) +texparameter depth_mode alpha +texparameter compare_func never +draw rect -1 -1 2 2 + +# depth comparison pass +relative probe rgba (0.0, 0.1) (0.0, 0.0, 0.0, 0.0) +relative probe rgba (0.9, 1.0) (0.0, 0.0, 0.0, 0.0) + +# depth comparison fail +relative probe rgba (0.1, 0.0) (0.0, 0.0, 0.0, 0.0) +relative probe rgba (1.0, 0.9) (0.0, 0.0, 0.0, 0.0) diff --git a/tests/shaders/glsl-fs-shadow2d.frag b/tests/shaders/glsl-fs-shadow2d.frag new file mode 100644 index 000000000..765f648d2 --- /dev/null +++ b/tests/shaders/glsl-fs-shadow2d.frag @@ -0,0 +1,8 @@ +#version 110 + +uniform sampler2DShadow tex; +varying vec4 tex_coord; + +void main() { + gl_FragColor = shadow2D(tex, tex_coord.xyy); +} diff --git a/tests/shaders/glsl-fs-shadow2d.vert b/tests/shaders/glsl-fs-shadow2d.vert new file mode 100644 index 000000000..426e7b791 --- /dev/null +++ b/tests/shaders/glsl-fs-shadow2d.vert @@ -0,0 +1,8 @@ +#version 110 + +varying vec4 tex_coord; + +void main() { + gl_Position = gl_Vertex; + tex_coord = (gl_Vertex + 1.0) / 2.0; +} -- cgit v1.2.3