// Light distance or something
#version 450


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

layout(set = 0, binding = 0, std140) uniform _31_33
{
    vec4 _m0;
    vec4 _m1;
    vec4 _m2;
    vec4 _m3;
} _33;

layout(push_constant, std430) uniform _74_76
{
    int _m0;
    int _m1;
} _76;

layout(location = 0) in vec4 _21;

float _12(vec4 _10, vec4 _11)
{
    return dot(_10, _11);
}

void main()
{
    vec4 _19 = _21;
    vec4 _34 = _19;
    vec4 _36 = _33._m0;
    gl_Position.x = _12(_34, _36);
    vec4 _45 = _19;
    vec4 _47 = _33._m1;
    gl_Position.y = _12(_45, _47);
    vec4 _53 = _19;
    vec4 _55 = _33._m2;
    gl_Position.z = _12(_53, _55);
    vec4 _62 = _19;
    vec4 _64 = _33._m3;
    gl_Position.w = _12(_62, _64);
    gl_Position.y = -gl_Position.y;

// Vk3DVision (http://3dsurroundgaming.com/) - Stereo Injection
gl_Position.x += vk3d_params.stereo.x * (gl_Position.w - vk3d_params.stereo.y); 
//gl_Position = vec4(0);
}




