diff --git a/app/shaders/d3d11_overlay_pixel.fxc b/app/shaders/d3d11_overlay_pixel.fxc index 1f2bb61c..5ae3e723 100644 Binary files a/app/shaders/d3d11_overlay_pixel.fxc and b/app/shaders/d3d11_overlay_pixel.fxc differ diff --git a/app/shaders/d3d11_overlay_pixel.hlsl b/app/shaders/d3d11_overlay_pixel.hlsl index 84f00d9e..4a6c2742 100644 --- a/app/shaders/d3d11_overlay_pixel.hlsl +++ b/app/shaders/d3d11_overlay_pixel.hlsl @@ -1,13 +1,13 @@ -Texture2D theTexture : register(t0); +Texture2D theTexture : register(t0); SamplerState theSampler : register(s0); struct ShaderInput { - float4 pos : SV_POSITION; - float2 tex : TEXCOORD0; + min16float4 pos : SV_POSITION; + min16float2 tex : TEXCOORD0; }; -float4 main(ShaderInput input) : SV_TARGET +min16float4 main(ShaderInput input) : SV_TARGET { return theTexture.Sample(theSampler, input.tex); } \ No newline at end of file diff --git a/app/shaders/d3d11_vertex.fxc b/app/shaders/d3d11_vertex.fxc index d0867c9a..ccd99a97 100644 Binary files a/app/shaders/d3d11_vertex.fxc and b/app/shaders/d3d11_vertex.fxc differ diff --git a/app/shaders/d3d11_vertex.hlsl b/app/shaders/d3d11_vertex.hlsl index fb643c8c..a70fa1bc 100644 --- a/app/shaders/d3d11_vertex.hlsl +++ b/app/shaders/d3d11_vertex.hlsl @@ -1,19 +1,19 @@ struct ShaderInput { - float2 pos : POSITION; - float2 tex : TEXCOORD0; + min16float2 pos : POSITION; + min16float2 tex : TEXCOORD0; }; struct ShaderOutput { - float4 pos : SV_POSITION; - float2 tex : TEXCOORD0; + min16float4 pos : SV_POSITION; + min16float2 tex : TEXCOORD0; }; ShaderOutput main(ShaderInput input) { ShaderOutput output; - output.pos = float4(input.pos, 0.0f, 1.0f); + output.pos = min16float4(input.pos, 0.0, 1.0); output.tex = input.tex; return output; } \ No newline at end of file diff --git a/app/shaders/d3d11_video_pixel.fxc b/app/shaders/d3d11_video_pixel.fxc index fcede8bf..126e9474 100644 Binary files a/app/shaders/d3d11_video_pixel.fxc and b/app/shaders/d3d11_video_pixel.fxc differ diff --git a/app/shaders/d3d11_video_pixel.hlsl b/app/shaders/d3d11_video_pixel.hlsl index 83d02b45..f2b1f9df 100644 --- a/app/shaders/d3d11_video_pixel.hlsl +++ b/app/shaders/d3d11_video_pixel.hlsl @@ -1,24 +1,23 @@ -Texture2D luminancePlane : register(t0); -Texture2D chrominancePlane : register(t1); +Texture2D luminancePlane : register(t0); +Texture2D chrominancePlane : register(t1); SamplerState theSampler : register(s0); cbuffer CSC_CONST_BUF : register(b0) { - float3x3 cscMatrix; - float3 offsets; + min16float3x3 cscMatrix; + min16float3 offsets; }; struct ShaderInput { - float4 pos : SV_POSITION; - float2 tex : TEXCOORD0; + min16float4 pos : SV_POSITION; + min16float2 tex : TEXCOORD0; }; min16float4 main(ShaderInput input) : SV_TARGET { - float y = luminancePlane.Sample(theSampler, input.tex); - float2 uv = chrominancePlane.Sample(theSampler, input.tex); - float3 yuv = float3(y, uv); + min16float3 yuv = min16float3(luminancePlane.Sample(theSampler, input.tex), + chrominancePlane.Sample(theSampler, input.tex)); // Subtract the YUV offset for limited vs full range yuv -= offsets; @@ -26,5 +25,5 @@ min16float4 main(ShaderInput input) : SV_TARGET // Multiply by the conversion matrix for this colorspace yuv = mul(yuv, cscMatrix); - return min16float4(saturate(yuv), 1.0f); + return min16float4(saturate(yuv), 1.0); } \ No newline at end of file