aboutsummaryrefslogtreecommitdiffstats
path: root/tests/manual/scenegraph_lancelot/data
diff options
context:
space:
mode:
authorPaul Olav Tvete <paul.tvete@qt.io>2020-05-12 16:01:53 +0200
committerPaul Olav Tvete <paul.tvete@qt.io>2020-05-15 09:35:36 +0200
commitbd221dfcb3126140071ceeb8f337cdacbe05a62e (patch)
tree4de8f7452db5c03dade0a0b5de214eeec08f3796 /tests/manual/scenegraph_lancelot/data
parent1907265de25d3815cba24885c01fe4072b570e46 (diff)
Add lancelot test for ShaderEffect on layer
Task-number: QTBUG-83975 Pick-to: 5.15 Change-Id: I40e3836205c62f52a80925384070175a7bcb5856 Reviewed-by: Laszlo Agocs <laszlo.agocs@qt.io>
Diffstat (limited to 'tests/manual/scenegraph_lancelot/data')
-rw-r--r--tests/manual/scenegraph_lancelot/data/shaders/layer/layer.qml23
-rw-r--r--tests/manual/scenegraph_lancelot/data/shared/shaders/+qsb/desaturate.fragbin0 -> 1343 bytes
-rw-r--r--tests/manual/scenegraph_lancelot/data/shared/shaders/compile.bat1
-rw-r--r--tests/manual/scenegraph_lancelot/data/shared/shaders/desaturate.frag9
-rw-r--r--tests/manual/scenegraph_lancelot/data/shared/shaders/desaturate_rhi.frag12
-rw-r--r--tests/manual/scenegraph_lancelot/data/shared/shared.qrc2
6 files changed, 47 insertions, 0 deletions
diff --git a/tests/manual/scenegraph_lancelot/data/shaders/layer/layer.qml b/tests/manual/scenegraph_lancelot/data/shaders/layer/layer.qml
new file mode 100644
index 0000000000..4f9a2a4fc3
--- /dev/null
+++ b/tests/manual/scenegraph_lancelot/data/shaders/layer/layer.qml
@@ -0,0 +1,23 @@
+import QtQuick 2.15
+
+Item {
+ width: 320
+ height: 480
+
+ Repeater {
+ model: 5
+ Rectangle {
+ x: 10 + 30 * index
+ y: 10 + 30 * index
+ width: 100
+ height: 100
+ color: Qt.hsva(index/5.0, 1.0, 1.0, 0.5)
+ }
+ }
+
+ layer.enabled: true
+ layer.samplerName: "source"
+ layer.effect: ShaderEffect {
+ fragmentShader: "qrc:shaders/desaturate.frag"
+ }
+}
diff --git a/tests/manual/scenegraph_lancelot/data/shared/shaders/+qsb/desaturate.frag b/tests/manual/scenegraph_lancelot/data/shared/shaders/+qsb/desaturate.frag
new file mode 100644
index 0000000000..42a11de194
--- /dev/null
+++ b/tests/manual/scenegraph_lancelot/data/shared/shaders/+qsb/desaturate.frag
Binary files differ
diff --git a/tests/manual/scenegraph_lancelot/data/shared/shaders/compile.bat b/tests/manual/scenegraph_lancelot/data/shared/shaders/compile.bat
index 8a7f56174c..950279b9dd 100644
--- a/tests/manual/scenegraph_lancelot/data/shared/shaders/compile.bat
+++ b/tests/manual/scenegraph_lancelot/data/shared/shaders/compile.bat
@@ -4,6 +4,7 @@ qsb --glsl "150,120,100 es" --hlsl 50 --msl 12 -o +qsb/basic.frag basic_rhi.frag
qsb --glsl "150,120,100 es" --hlsl 50 --msl 12 -o +qsb/basic_alpha.frag basic_alpha_rhi.frag
qsb --glsl "150,120,100 es" --hlsl 50 --msl 12 -o +qsb/cmyk.frag cmyk_rhi.frag
qsb --glsl "150,120,100 es" --hlsl 50 --msl 12 -o +qsb/culling.frag culling_rhi.frag
+qsb --glsl "150,120,100 es" --hlsl 50 --msl 12 -o +qsb/desaturate.frag desaturate_rhi.frag
qsb --glsl "150,120,100 es" --hlsl 50 --msl 12 -o +qsb/edge.frag edge_rhi.frag
qsb --glsl "150,120,100 es" --hlsl 50 --msl 12 -o +qsb/gradient.frag gradient_rhi.frag
qsb --glsl "150,120,100 es" --hlsl 50 --msl 12 -o +qsb/gradient2.frag gradient2_rhi.frag
diff --git a/tests/manual/scenegraph_lancelot/data/shared/shaders/desaturate.frag b/tests/manual/scenegraph_lancelot/data/shared/shaders/desaturate.frag
new file mode 100644
index 0000000000..a38f3d1de2
--- /dev/null
+++ b/tests/manual/scenegraph_lancelot/data/shared/shaders/desaturate.frag
@@ -0,0 +1,9 @@
+uniform lowp sampler2D source;
+varying highp vec2 qt_TexCoord0;
+
+void main() {
+ lowp vec4 c = texture2D(source, qt_TexCoord0);
+ lowp float level = c.r * 0.3 + c.g * 0.59 + c.b * 0.11;
+
+ gl_FragColor = vec4(level, level, level, c.a);
+}
diff --git a/tests/manual/scenegraph_lancelot/data/shared/shaders/desaturate_rhi.frag b/tests/manual/scenegraph_lancelot/data/shared/shaders/desaturate_rhi.frag
new file mode 100644
index 0000000000..a4299c6d68
--- /dev/null
+++ b/tests/manual/scenegraph_lancelot/data/shared/shaders/desaturate_rhi.frag
@@ -0,0 +1,12 @@
+#version 440
+
+layout(location = 0) in vec2 qt_TexCoord0;
+layout(location = 0) out vec4 fragColor;
+layout(binding = 1) uniform sampler2D source;
+
+void main() {
+ lowp vec4 c = texture(source, qt_TexCoord0);
+ lowp float level = c.r * 0.3 + c.g * 0.59 + c.b * 0.11;
+
+ fragColor = vec4(level, level, level, c.a);
+}
diff --git a/tests/manual/scenegraph_lancelot/data/shared/shared.qrc b/tests/manual/scenegraph_lancelot/data/shared/shared.qrc
index 10883211aa..8235e02188 100644
--- a/tests/manual/scenegraph_lancelot/data/shared/shared.qrc
+++ b/tests/manual/scenegraph_lancelot/data/shared/shared.qrc
@@ -4,6 +4,7 @@
<file>shaders/basic_alpha.frag</file>
<file>shaders/cmyk.frag</file>
<file>shaders/culling.frag</file>
+ <file>shaders/desaturate.frag</file>
<file>shaders/edge.frag</file>
<file>shaders/gradient.frag</file>
<file>shaders/gradient2.frag</file>
@@ -18,6 +19,7 @@
<file>shaders/+qsb/basic_alpha.frag</file>
<file>shaders/+qsb/cmyk.frag</file>
<file>shaders/+qsb/culling.frag</file>
+ <file>shaders/+qsb/desaturate.frag</file>
<file>shaders/+qsb/edge.frag</file>
<file>shaders/+qsb/gradient.frag</file>
<file>shaders/+qsb/gradient2.frag</file>