Professional Documents
Culture Documents
Blurs Hader
Blurs Hader
// -------------------------------------------------------------------------
// Datatypes
// -------------------------------------------------------------------------
struct VS_INPUT1
{
vector Position : POSITION;
float2 TexPosition : TEXCOORD0;
};
struct PS_INPUT1
{
vector Position : POSITION;
float2 TexPosition : TEXCOORD0;
};
struct PS_OUTPUT1
{
vector Diffuse : COLOR0;
};
// -------------------------------------------------------------------------
// Vertexshader
// -------------------------------------------------------------------------
output.Position = input.Position;
output.TexPosition = input.TexPosition.xy;
return output;
}
// -------------------------------------------------------------------------
// Pixelshader
// -------------------------------------------------------------------------
output.Diffuse *= BlurSettings.x;
output.Diffuse -= BlurSettings.y;
output.Diffuse *= BlurSettings.z;
return output;
}
// -------------------------------------------------------------------------
// Datatypes
// -------------------------------------------------------------------------
struct VS_INPUTTwo
{
vector Position : POSITION;
float2 TexPositionA : TEXCOORD0;
float2 TexPositionB : TEXCOORD1;
float2 TexPositionC : TEXCOORD2;
float2 TexPositionD : TEXCOORD3;
float2 TexPositionE : TEXCOORD4;
float2 TexPositionF : TEXCOORD5;
float2 TexPositionG : TEXCOORD6;
float2 TexPositionH : TEXCOORD7;
};
struct PS_INPUT2
{
vector Position : POSITION;
float2 TexPosition : TEXCOORD0;
};
// -------------------------------------------------------------------------
// Vertexshader
// -------------------------------------------------------------------------
float4 Offset;
Offset.xy = OffsetDirection.xy;
// Offset.x = -0.01f;
Offset.z = 0.0f;
Offset.w = 0.0f;
output.Position = input.Position;
input.TexPosition -= Offset;
output.TexPositionA = input.TexPosition.xy;
input.TexPosition -= Offset;
output.TexPositionB = input.TexPosition.xy;
input.TexPosition -= Offset;
output.TexPositionC = input.TexPosition.xy;
input.TexPosition -= Offset;
output.TexPositionD = input.TexPosition.xy;
input.TexPosition -= Offset;
output.TexPositionE = input.TexPosition.xy;
input.TexPosition -= Offset;
output.TexPositionF = input.TexPosition.xy;
input.TexPosition -= Offset;
output.TexPositionG = input.TexPosition.xy;
input.TexPosition -= Offset;
output.TexPositionH = input.TexPosition.xy;
return output;
}
// -------------------------------------------------------------------------
// Pixelshader
// -------------------------------------------------------------------------
PS_OUTPUT1 PixelShader2(VS_INPUTTwo input)
{
PS_OUTPUT1 output = (PS_OUTPUT1)0;
return output;
}