vulkan[13] vulkan-43f66d7fea35ab0d50ca2f95edc4898a
// VULKAN[13] source bytes (9232) ref=43f66d7fea35ab0d50ca2f95edc4898a
// Spirv source (8908), reflection performed with SPIRV-Cross, KhronosGroup
#version 450
layout(binding = 1, std140) uniform _1259_22044
{
layout(offset = 272) vec4 _m0;
layout(offset = 304) vec3 _m1;
layout(offset = 448) vec3 _m2;
layout(offset = 460) float _m3;
layout(offset = 464) float _m4;
layout(offset = 468) float _m5;
layout(offset = 472) float _m6;
} _22044;
layout(binding = 0, std140) uniform _2199_18812
{
layout(offset = 0) vec3 _m0;
layout(offset = 16) vec3 _m1;
layout(offset = 28) float _m2;
layout(offset = 32) vec3 _m3;
layout(offset = 44) float _m4;
layout(offset = 48) vec3 _m5;
layout(offset = 60) float _m6;
layout(offset = 64) vec3 _m7;
layout(offset = 76) float _m8;
layout(offset = 80) vec3 _m9;
layout(offset = 92) float _m10;
layout(offset = 96) vec3 _m11;
layout(offset = 272) vec3 _m12;
} _18812;
layout(binding = 0, std140) uniform _1407_4930
{
layout(offset = 16) vec3 _m0;
layout(offset = 32) vec3 _m1;
layout(offset = 48) vec3 _m2;
layout(offset = 64) vec3 _m3;
layout(offset = 384) vec3 _m4;
layout(offset = 400) vec3 _m5;
} _4930;
uniform sampler2D _25261;
uniform sampler2D _25263;
uniform sampler2D _25265;
uniform sampler2D _25267;
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 _4049;
layout(location = 6) in vec4 _4103;
layout(location = 7) in vec4 _5547;
layout(location = 8) in vec4 _3410;
layout(location = 9) in vec2 _4754;
layout(location = 0) out vec4 _3182;
layout(location = 1) out vec4 _3188;
vec4 _10264;
vec4 _11812;
void main()
{
vec3 _22291 = normalize(_4439.xyz);
vec3 _23580 = _4171.xyz * vec3(0.0078125);
float _11844 = _23580.y;
float _24989 = -_23580.z;
vec3 _16094 = vec3(_11844, _24989, 1.0);
float _13770 = _23580.x;
vec3 _22912 = vec3(_13770, _24989, 1.0);
vec3 _14466 = vec3(_13770, -_11844, 1.0);
vec4 _24547 = vec4(clamp(_5081.w * 2.0, 0.0, 1.0));
vec4 _24548 = vec4(clamp(_3271.w * 2.0, 0.0, 1.0));
vec4 _7071 = mix(mix(texture(_25263, _4103.xy), texture(_25263, _4103.zw), _24547), texture(_25263, _3410.zw), _24548);
vec4 _22004 = mix(mix(texture(_25265, _5547.xy), texture(_25265, _5547.zw), _24547), texture(_25265, _4754), _24548);
vec4 _20204 = mix(mix(texture(_25267, vec2(dot(_4930._m4, _16094), dot(_4930._m5, _16094))), texture(_25267, vec2(dot(_4930._m4, _22912), dot(_4930._m5, _22912))), _24547), texture(_25267, vec2(dot(_4930._m4, _14466), dot(_4930._m5, _14466))), _24548);
vec3 _17558 = mix(mix(texture(_25261, _4049.xy), texture(_25261, _4049.zw), _24547), texture(_25261, _3410.xy), _24548).xyz * _4930._m0;
vec4 _21753 = _10264;
_21753.x = _17558.x;
vec4 _16135 = _21753;
_16135.y = _17558.y;
vec4 _18504 = _16135;
_18504.z = _17558.z;
vec3 _17559 = _7071.xyz * _4930._m1;
vec4 _21754 = _7071;
_21754.x = _17559.x;
vec4 _16136 = _21754;
_16136.y = _17559.y;
vec4 _18505 = _16136;
_18505.z = _17559.z;
vec3 _17560 = _22004.xyz * _4930._m2;
vec4 _21755 = _22004;
_21755.x = _17560.x;
vec4 _16137 = _21755;
_16137.y = _17560.y;
vec4 _18506 = _16137;
_18506.z = _17560.z;
vec3 _17561 = _20204.xyz * _4930._m3;
vec4 _21756 = _20204;
_21756.x = _17561.x;
vec4 _16138 = _21756;
_16138.y = _17561.y;
vec4 _16117 = _16138;
_16117.z = _17561.z;
float _20025 = _7071.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 = _22004.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 = _20204.w;
float _20579 = clamp(smoothstep(max(0.0, _12534 - _3271.z), min(1.0, _12534 + _3271.z), _5081.z), 0.0, _15457);
vec3 _24904 = _18504.xyz * (_15457 - _20579);
vec4 _6712 = _10264;
_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 = _10264;
_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 = _10264;
_24985.x = _22631.x;
vec4 _16141 = _24985;
_16141.y = _22631.y;
vec4 _17623 = _16141;
_17623.z = _22631.z;
vec3 _22632 = _17623.xyz + (_16117.xyz * _20579);
vec4 _24986 = _10264;
_24986.x = _22632.x;
vec4 _16142 = _24986;
_16142.y = _22632.y;
vec4 _16424 = _16142;
_16424.z = _22632.z;
vec3 _19142 = _16424.xyz * _3942.xyz;
vec4 _11060 = _10264;
_11060.x = _19142.x;
vec4 _14596 = _11060;
_14596.y = _19142.y;
vec4 _18255 = _14596;
_18255.z = _19142.z;
float _19274 = clamp(dot(-_18812._m0, _22291), 0.0, 1.0);
vec3 _19161 = _18255.xyz * vec4(((_18812._m1 * _19274) + ((_18812._m9 * _18812._m8) * clamp(dot(_18812._m7, _22291), 0.0, 1.0))) + ((mix(_18812._m12, _18812._m11, vec3((_22291.z * 0.5) + 0.5)) * _18812._m10) * (1.0 - _19274)), 1.0).xyz;
float _10801 = _19161.x;
vec4 _21757 = _11812;
_21757.x = _10801;
float _19861 = _19161.y;
vec4 _16143 = _21757;
_16143.y = _19861;
float _19871 = _19161.z;
vec4 _15962 = _16143;
_15962.z = _19871;
vec4 _11678 = _15962;
_11678.x = _10801;
vec4 _15390 = _11678;
_15390.y = _19861;
vec4 _18256 = _15390;
_18256.z = _19871;
vec4 _23526 = _18256;
_23526.w = clamp(dot(_22044._m0, vec4(_4171.xyz, 1.0)) * _22044._m4, 0.0, 1.0);
vec3 _17839 = mix(_23526.xyz, _22044._m2, vec3(clamp(min(_22044._m5, pow(clamp((distance(_4171.xyz, _22044._m1) * _22044._m4) + _22044._m3, 0.0, 1.0), _22044._m6)), 0.0, 1.0)));
vec4 _15881 = _23526;
_15881.x = _17839.x;
vec4 _16144 = _15881;
_16144.y = _17839.y;
vec4 _19042 = _16144;
_19042.z = _17839.z;
_3182 = _19042;
_3188 = _4171.wwww;
}
// Source metadata (unknown encoding) (324)
[8908]
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 03 00 01 00 00 00 00 00
00 00 0F 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 04 00 00 00 00 00 01 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 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 02 00 00 00 00 00 00 00 00 00 00 00 03 00 00 00 00 00 00 00 03 00 00 00 00 00 00 00 00 00
F1 06 A0 D8