diff options
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 Binary files differnew file mode 100644 index 0000000000..42a11de194 --- /dev/null +++ b/tests/manual/scenegraph_lancelot/data/shared/shaders/+qsb/desaturate.frag 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> |