aboutsummaryrefslogtreecommitdiffstats
path: root/examples/quick/shadereffects/content/shaders/+hlsl/colorize.frag
diff options
context:
space:
mode:
authorLaszlo Agocs <laszlo.agocs@qt.io>2016-06-28 17:12:09 +0200
committerLaszlo Agocs <laszlo.agocs@qt.io>2016-06-29 12:00:09 +0000
commit15849d78b7cca848b87badcfee33db1db70b8b52 (patch)
tree1f0055732564f36c0427176f5853c4375ac0b21d /examples/quick/shadereffects/content/shaders/+hlsl/colorize.frag
parentf552d99f3d937ee9a8938673cd22246edbe70317 (diff)
Migrate shadereffects example to be cross-backend
...while demonstrating best practices like file selectors. Task-number: QTBUG-52914 Change-Id: Ibf7bca77b7b142f5ccb956e05efc5be974d53c79 Reviewed-by: Andy Nichols <andy.nichols@qt.io>
Diffstat (limited to 'examples/quick/shadereffects/content/shaders/+hlsl/colorize.frag')
-rw-r--r--examples/quick/shadereffects/content/shaders/+hlsl/colorize.frag17
1 files changed, 17 insertions, 0 deletions
diff --git a/examples/quick/shadereffects/content/shaders/+hlsl/colorize.frag b/examples/quick/shadereffects/content/shaders/+hlsl/colorize.frag
new file mode 100644
index 0000000000..d6e65b6b10
--- /dev/null
+++ b/examples/quick/shadereffects/content/shaders/+hlsl/colorize.frag
@@ -0,0 +1,17 @@
+cbuffer ConstantBuffer : register(b0)
+{
+ float4x4 qt_Matrix;
+ float qt_Opacity;
+ float4 tint;
+};
+
+Texture2D source : register(t0);
+SamplerState sourceSampler : register(s0);
+
+float4 main(float4 position : SV_POSITION, float2 coord : TEXCOORD0) : SV_TARGET
+{
+ float4 c = source.Sample(sourceSampler, coord);
+ float lo = min(min(c.x, c.y), c.z);
+ float hi = max(max(c.x, c.y), c.z);
+ return float4(lerp(float3(lo, lo, lo), float3(hi, hi, hi), tint.xyz), c.w) * qt_Opacity;
+}