#version 450

invariant gl_Position;

struct POST_PROCESSING_FILTER_2D_VS_CONSTANT_BUFFER
{
    vec4 _vfUVScale;
    vec4 _vfPixelSize;
    vec4 _vfOffsets[4];
};


// Vk3DVision (http://3dsurroundgaming.com/) - Stereo Injection
layout(set = 0, binding = 99, std140) uniform Vk3DParams
{
    vec4 stereo;
    vec4 custom_params;
}
 vk3d_params;

layout(set = 0, binding = 52, std140) uniform dyn_CONSTANT_BUFFER_BLOCK_0
{
    POST_PROCESSING_FILTER_2D_VS_CONSTANT_BUFFER _Filter2DVS;
} _33;

layout(location = 8) in vec2 in_TexCoord;
layout(location = 0) in vec4 in_Position;
layout(location = 8) out vec4 out_TexCoord0_1;

void main()
{
    gl_Position = in_Position;
    out_TexCoord0_1 = vec4(0.0);
    vec2 _113 = ((in_TexCoord * _33._Filter2DVS._vfUVScale.xy) + _33._Filter2DVS._vfUVScale.zw) + (_33._Filter2DVS._vfOffsets[0].xy * _33._Filter2DVS._vfPixelSize.xy);
    out_TexCoord0_1 = vec4(_113.x, _113.y, out_TexCoord0_1.z, out_TexCoord0_1.w);
    //gl_Position.x += vk3d_params.stereo.x * (gl_Position.w - vk3d_params.stereo.y);
    //out_TexCoord0_1.x -=vk3d_params.stereo.x * (gl_Position.w - vk3d_params.stereo.y);
}





