vulkan[1] vulkan-47421691b85f98ee41a7885f304ce813
// VULKAN[1] source bytes (8856) ref=47421691b85f98ee41a7885f304ce813
// Spirv source (8684), reflection performed with SPIRV-Cross, KhronosGroup
#version 450
layout(binding = 0, std140) uniform _2948_4930
{
layout(offset = 0) float _m0;
layout(offset = 16) vec3 _m1;
layout(offset = 32) vec3 _m2;
layout(offset = 48) vec3 _m3;
layout(offset = 64) vec3 _m4;
layout(offset = 240) float _m5;
layout(offset = 244) float _m6;
layout(offset = 416) vec3 _m7;
layout(offset = 432) vec3 _m8;
layout(offset = 448) vec3 _m9;
layout(offset = 464) vec3 _m10;
layout(offset = 480) vec3 _m11;
layout(offset = 496) vec3 _m12;
layout(offset = 512) vec3 _m13;
layout(offset = 528) vec3 _m14;
} _4930;
uniform sampler2D _25261;
uniform sampler2D _25263;
uniform sampler2D _25265;
uniform sampler2D _25267;
uniform sampler2D _25269;
uniform sampler2D _25271;
uniform sampler2D _25273;
uniform sampler2D _25275;
uniform sampler2D _25277;
uniform sampler2D _25279;
uniform sampler2D _25281;
uniform sampler2D _25283;
layout(location = 0) in vec4 _4171;
layout(location = 1) in vec4 _4439;
layout(location = 2) in vec4 _3942;
layout(location = 3) in vec4 _5081;
layout(location = 4) in vec4 _3271;
layout(location = 5) in vec4 _4482;
layout(location = 6) in vec4 _5145;
layout(location = 7) in vec4 _3880;
layout(location = 0) out vec4 _3182;
layout(location = 1) out vec4 _4256;
layout(location = 2) out vec4 _3188;
layout(location = 3) out vec4 _3598;
vec4 _10264;
vec3 _20327;
void main()
{
vec3 _20061 = normalize(_4439.xyz);
vec4 _20573 = texture(_25263, _5145.zw);
vec4 _20574 = texture(_25265, _3880.xy);
vec4 _19405 = texture(_25267, _3880.zw);
vec3 _17558 = texture(_25261, _5145.xy).xyz * _4930._m1;
vec4 _21753 = _10264;
_21753.x = _17558.x;
vec4 _16135 = _21753;
_16135.y = _17558.y;
vec4 _18504 = _16135;
_18504.z = _17558.z;
vec3 _17559 = _20573.xyz * _4930._m2;
vec4 _21754 = _20573;
_21754.x = _17559.x;
vec4 _16136 = _21754;
_16136.y = _17559.y;
vec4 _18505 = _16136;
_18505.z = _17559.z;
vec3 _17560 = _20574.xyz * _4930._m3;
vec4 _21755 = _20574;
_21755.x = _17560.x;
vec4 _16137 = _21755;
_16137.y = _17560.y;
vec4 _18506 = _16137;
_18506.z = _17560.z;
vec3 _17561 = _19405.xyz * _4930._m4;
vec4 _21756 = _19405;
_21756.x = _17561.x;
vec4 _16138 = _21756;
_16138.y = _17561.y;
vec4 _16116 = _16138;
_16116.z = _17561.z;
float _20025 = _20573.w;
float _7380 = smoothstep(max(0.0, _20025 - _3271.x), min(1.0, _20025 + _3271.x), _5081.x);
float _16584 = 1.0 - _7380;
float _21190 = _20574.w;
float _20617 = clamp(smoothstep(max(0.0, _21190 - _3271.y), min(1.0, _21190 + _3271.y), _5081.y), 0.0, _16584);
float _15457 = _16584 - _20617;
float _12534 = _19405.w;
float _20579 = clamp(smoothstep(max(0.0, _12534 - _3271.z), min(1.0, _12534 + _3271.z), _5081.z), 0.0, _15457);
float _16962 = _15457 - _20579;
vec3 _24904 = _18504.xyz * _16962;
vec4 _6712 = vec4(0.0);
_6712.x = _24904.x;
vec4 _16139 = _6712;
_16139.y = _24904.y;
vec4 _17621 = _16139;
_17621.z = _24904.z;
vec3 _22630 = _17621.xyz + (_18505.xyz * _7380);
vec4 _24984 = _17621;
_24984.x = _22630.x;
vec4 _16140 = _24984;
_16140.y = _22630.y;
vec4 _17622 = _16140;
_17622.z = _22630.z;
vec3 _22631 = _17622.xyz + (_18506.xyz * _20617);
vec4 _24985 = _17622;
_24985.x = _22631.x;
vec4 _16141 = _24985;
_16141.y = _22631.y;
vec4 _17623 = _16141;
_17623.z = _22631.z;
vec3 _22632 = _17623.xyz + (_16116.xyz * _20579);
vec4 _24986 = _17623;
_24986.x = _22632.x;
vec4 _16142 = _24986;
_16142.y = _22632.y;
vec4 _16424 = _16142;
_16424.z = _22632.z;
vec3 _19161 = _16424.xyz * _3942.xyz;
vec4 _21757 = _16424;
_21757.x = _19161.x;
vec4 _16143 = _21757;
_16143.y = _19161.y;
vec4 _19671 = _16143;
_19671.z = _19161.z;
vec3 _22132 = (((texture(_25269, _5145.xy).xyz * _16962) + (texture(_25271, _5145.zw).xyz * _7380)) + (texture(_25273, _3880.xy).xyz * _20617)) + (texture(_25275, _3880.zw).xyz * _20579);
float _8018 = _22132.x;
vec4 _24987 = vec4(0.0);
_24987.x = _8018;
vec4 _16144 = _24987;
_16144.y = _22132.y;
float _19551 = _22132.z;
vec4 _18507 = _16144;
_18507.z = _19551;
vec4 _22633 = _18507;
_22633.x = _8018 * _4930._m5;
vec4 _23800 = _22633;
_23800.z = _19551 * _4930._m6;
vec3 _23029 = vec3(texture(_25277, _5145.xy).wy, 1.0);
vec4 _15733 = _10264;
_15733.w = dot(_4930._m7, _23029);
vec4 _7214 = _15733;
_7214.y = dot(_4930._m8, _23029);
vec3 _23030 = vec3(texture(_25279, _5145.zw).wy, 1.0);
vec4 _15734 = _10264;
_15734.w = dot(_4930._m9, _23030);
vec4 _7215 = _15734;
_7215.y = dot(_4930._m10, _23030);
vec3 _23031 = vec3(texture(_25281, _3880.xy).wy, 1.0);
vec4 _15735 = _10264;
_15735.w = dot(_4930._m11, _23031);
vec4 _7216 = _15735;
_7216.y = dot(_4930._m12, _23031);
vec3 _23032 = vec3(texture(_25283, _3880.zw).wy, 1.0);
vec4 _17196 = _10264;
_17196.w = dot(_4930._m13, _23032);
vec4 _14503 = _17196;
_14503.y = dot(_4930._m14, _23032);
vec2 _24817 = (((((_7214 * _16962) + (_7215 * _7380)) + (_7216 * _20617)) + (_14503 * _20579)).wy * 2.0) - vec2(1.0);
vec3 _7526 = _20327;
_7526.x = _24817.x;
float _19818 = _24817.y;
vec3 _17735 = _7526;
_17735.y = _19818;
vec3 _7849 = _17735;
_7849.z = sqrt(clamp(1.0 - dot(_17735.xy, _17735.xy), 0.0, 1.0));
vec3 _18764 = _7849;
_18764.y = -_19818;
vec2 _20105 = _18764.xy * _4930._m0;
vec3 _6713 = _18764;
_6713.x = _20105.x;
vec3 _7350 = _6713;
_7350.y = _20105.y;
vec3 _24585 = normalize(_7350);
vec4 _18253 = _19671;
_18253.w = 0.0;
vec4 _17180 = _23800;
_17180.w = 0.0;
_3182 = _18253;
_4256 = _17180;
_3188 = _4171.wwww;
_3598 = vec4((normalize(((normalize(_4482.xyz) * _24585.x) + ((normalize(cross(_20061, _4482.xyz)) * _4482.w) * _24585.y)) + (_20061 * _24585.z)) * 0.5) + vec3(0.5), 0.0);
}
// Source metadata (unknown encoding) (172)
[8684]
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 01 00 01 00 00 00 00 00
00 00 CF 7B 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 01 00 01 00 00 00 0C 00 00 00 00 00 01 00
00 00 00 00 00 00 01 00 00 00 00 00