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);
}