solidcolor_vulkan_50_vs.vcs frame[0x00] source[1] (SPIR-V) decompiled
#version 450

out float gl_ClipDistance[1];

layout(binding = 14, std140) uniform _2471_4930
{
    layout(offset = 272) vec4 _m0;
    layout(offset = 320) vec3 _m1;
    layout(offset = 364) float _m2;
    layout(offset = 372) float _m3;
    layout(offset = 400) vec4 _m4;
    layout(row_major, offset = 512) mat4 _m5[2];
    layout(offset = 640) vec4 _m6[2];
    layout(offset = 720) vec4 _m7[2];
} _4930;

uniform sampler2D SPIRV_Cross_Combined;

layout(location = 0) in vec3 _5275;
layout(location = 1) in vec4 _3208;
layout(location = 2) in vec2 _5800;
layout(location = 3) in uvec4 _5227;
layout(location = 4) in vec2 _4571;
layout(location = 0) out vec4 _5645;
layout(location = 1) out vec3 _4748;
layout(location = 2) out vec4 _5503;
layout(location = 3) out vec2 _5729;

vec4 _10264;

mat4 spvWorkaroundRowMajor(mat4 wrap) { return wrap; }

void main()
{
    vec4 _16492 = textureLodOffset(SPIRV_Cross_Combined, _4571, 0.0, ivec2(3, 0));
    uint _13689 = floatBitsToUint(_16492.y);
    vec4 _6854 = _10264;
    _6854.w = _16492.x;
    vec4 _15013 = _6854;
    _15013.x = float((_13689 >> uint(16)) & 255u) * 0.0039215688593685626983642578125;
    vec4 _15014 = _15013;
    _15014.y = float((_13689 >> uint(8)) & 255u) * 0.0039215688593685626983642578125;
    vec4 _15637 = _15014;
    _15637.z = float((_13689 >> uint(0)) & 255u) * 0.0039215688593685626983642578125;
    vec2 _17029 = _4571 + vec2((float((int(_5227.x) + 2) * 4) + 0.5) * _4930._m4.z, 0.0);
    float _9175 = _17029.x;
    float _19686 = floor(_9175);
    vec2 _9444 = _17029;
    _9444.x = _9175 - _19686;
    vec2 _11111 = _9444;
    _11111.y = _17029.y + (_19686 * _4930._m4.w);
    vec3 _19281 = vec4(_5275 * textureLod(SPIRV_Cross_Combined, _4571, 0.0).zzz, 1.0) * mat3x4(textureLod(SPIRV_Cross_Combined, _11111, 0.0),
        textureLodOffset(SPIRV_Cross_Combined, _11111, 0.0, ivec2(1, 0)), textureLodOffset(SPIRV_Cross_Combined, _11111, 0.0, ivec2(2, 0)));
    vec4 _18241 = vec4(_19281, 1.0);
    vec4 _14096 = (_18241 + (_4930._m7[0u] * 1.0)) * spvWorkaroundRowMajor(_4930._m5[0u]);
    _5645 = vec4(_14096.xy, (dot(_19281 - _4930._m6[0u].xyz, _4930._m1) - _4930._m2) / (_4930._m3 - _4930._m2), _14096.w);
    _4748 = _19281;
    _5503 = _15637;
    _5729 = _14096.zw;
    vec4 _16143 = _14096;
    _16143.y = -_14096.y;
    gl_Position = _16143;
    gl_ClipDistance[0] = dot(_18241, _4930._m0);
}