summaryrefslogtreecommitdiffstats
path: root/libvo/d3d_shader_yuv.hlsl
diff options
context:
space:
mode:
Diffstat (limited to 'libvo/d3d_shader_yuv.hlsl')
-rw-r--r--libvo/d3d_shader_yuv.hlsl20
1 files changed, 20 insertions, 0 deletions
diff --git a/libvo/d3d_shader_yuv.hlsl b/libvo/d3d_shader_yuv.hlsl
new file mode 100644
index 0000000000..9d46e536fc
--- /dev/null
+++ b/libvo/d3d_shader_yuv.hlsl
@@ -0,0 +1,20 @@
+// Compile with:
+// fxc.exe /Tps_2_0 /Fhd3d_shader_yuv.h d3d_shader_yuv.hlsl /Vnd3d_shader_yuv
+
+sampler2D tex0 : register(s0);
+sampler2D tex1 : register(s1);
+sampler2D tex2 : register(s2);
+
+uniform float4x4 colormatrix : register(c0);
+
+float4 main(float2 t0 : TEXCOORD0,
+ float2 t1 : TEXCOORD1,
+ float2 t2 : TEXCOORD2)
+ : COLOR
+{
+ float4 c = float4(tex2D(tex0, t0).x,
+ tex2D(tex1, t1).x,
+ tex2D(tex2, t2).x,
+ 1);
+ return mul(c, colormatrix);
+}