mirror of https://github.com/PCSX2/pcsx2.git
47 lines
833 B
HLSL
47 lines
833 B
HLSL
#ifdef SHADER_MODEL // make safe to include in resource file to enforce dependency
|
|
|
|
Texture2D Texture;
|
|
SamplerState Sampler;
|
|
|
|
cbuffer cb0
|
|
{
|
|
float2 ZrH;
|
|
};
|
|
|
|
struct PS_INPUT
|
|
{
|
|
float4 p : SV_Position;
|
|
float2 t : TEXCOORD0;
|
|
};
|
|
|
|
float4 ps_main0(PS_INPUT input) : SV_Target0
|
|
{
|
|
if ((int(input.p.y) & 1) == 0)
|
|
discard;
|
|
|
|
return Texture.Sample(Sampler, input.t);
|
|
}
|
|
|
|
float4 ps_main1(PS_INPUT input) : SV_Target0
|
|
{
|
|
if ((int(input.p.y) & 1) != 0)
|
|
discard;
|
|
|
|
return Texture.Sample(Sampler, input.t);
|
|
}
|
|
|
|
float4 ps_main2(PS_INPUT input) : SV_Target0
|
|
{
|
|
float4 c0 = Texture.Sample(Sampler, input.t - ZrH);
|
|
float4 c1 = Texture.Sample(Sampler, input.t);
|
|
float4 c2 = Texture.Sample(Sampler, input.t + ZrH);
|
|
|
|
return (c0 + c1 * 2 + c2) / 4;
|
|
}
|
|
|
|
float4 ps_main3(PS_INPUT input) : SV_Target0
|
|
{
|
|
return Texture.Sample(Sampler, input.t);
|
|
}
|
|
#endif
|