[ { "id": "40ff4b15-9fd8-4c24-a1eb-43f9ab796590", "name": "玄粒子", "author": "unknown", "code": "void ANGLE_loopForwardProgress() {}\nvoid ANGLE_loopForwardProgress()\n{\n volatile bool p = true;\n}\n\nstruct ANGLE_InvocationFragmentGlobals\n{\n float4 gl_FragCoord [[position]];\n};\n\nstruct ANGLEDepthRangeParams\n{\n float ANGLE_near;\n float ANGLE_far;\n float ANGLE_diff;\n};\n\nstruct ANGLEUniformBlock\n{\n uint2 ANGLE_acbBufferOffsets;\n float2 ANGLE_depthRange;\n uint ANGLE_renderArea;\n uint ANGLE_flipXY;\n uint ANGLE_dither;\n uint ANGLE_misc;\n int4 ANGLE_xfbBufferOffsets;\n int ANGLE_xfbVerticesPerInstance;\n uint ANGLE_coverageMask;\n uint2 ANGLE_unused;\n};\n\nstruct ANGLE_NonConstGlobals\n{\n float4 ANGLE_flippedFragCoord;\n};\n\nstruct ANGLE_UserUniforms\n{\n float3 _uiResolution;\n float _uiTime;\n};\n\nstruct ANGLE_FragmentOut\n{\n float4 _ushadertoy_out_color [[__unassigned_output__]];\n uint ANGLE_metal_SampleMask [[sample_mask, function_constant(ANGLESampleMaskWriteEnabled)]];\n};\n\nstruct ANGLE_sbf1\n{\n float3 _usize;\n float _utime;\n int _uloaded;\n};\n\nstruct ANGLE_sbee\n{\n float3 _usize;\n float _utime;\n int _uloaded;\n};\n\nstruct ANGLE_sbeb\n{\n float3 _usize;\n float _utime;\n int _uloaded;\n};\n\nstruct ANGLE_sbe8\n{\n float3 _usize;\n float _utime;\n int _uloaded;\n};\n\nvoid _umainImage(out vec4 _uO, vec2 _uI);\n\nfloat2 ANGLE_sc11(float ANGLE_sc12, float ANGLE_sc13)\n{\n float2 ANGLE_sc14 = float2(ANGLE_sc12, ANGLE_sc13);\n return ANGLE_sc14;\n}\n\nfloat2 ANGLE_sc0e(float ANGLE_sc0f, float ANGLE_sc10)\n{\n float2 ANGLE_sc15 = float2(ANGLE_sc0f, ANGLE_sc10);\n return ANGLE_sc15;\n}\n\nfloat4 ANGLE_sc0b(float3 ANGLE_sc0c, float ANGLE_sc0d)\n{\n float4 ANGLE_sc16 = float4(ANGLE_sc0c.x, ANGLE_sc0c.y, ANGLE_sc0c.z, ANGLE_sc0d);\n return ANGLE_sc16;\n}\n\nvoid _umainImage(out vec4 _uO, vec2 _uI)\n{\n _uO = float4(0.0f, 0.0f, 0.0f, 0.0f);\n float2 _uv = iResolution.xy;\n float2 ANGLE_sc17 = (_uI + _uI);\n float2 ANGLE_sc18 = (ANGLE_sc17 - _uv);\n float2 ANGLE_sc19 = (ANGLE_sc18 / _uv.y);\n float2 _up = (ANGLE_sc19 / 0.300000012f);\n float _ui = 0.0f;\n float _uf = 0.0f;\n {\n _uO *= _ui;\n float ANGLE_sc1b = (_ui++);\n bool ANGLE_sbe6 = (ANGLE_sc1b < 9.0f);\n while (ANGLE_sbe6)\n {\n {\n ANGLE_loopForwardProgress();\n {\n {\n float2 ANGLE_sc1d = _uv = _up;\n float ANGLE_sc1e = _uf = 0.0f;\n float ANGLE_sc1f = (_uf++);\n bool ANGLE_sbe7 = (ANGLE_sc1f < 9.0f);\n while (ANGLE_sbe7)\n {\n {\n ANGLE_loopForwardProgress();\n {\n }\n }\n float2 ANGLE_sc21 = (_uv.yx * _uf);\n float2 ANGLE_sc22 = (ANGLE_sc21 + _ui);\n float2 ANGLE_sc23 = (ANGLE_sc22 + iTime);\n float2 ANGLE_sc24 = sin(ANGLE_sc23);\n float2 ANGLE_sc25 = (ANGLE_sc24 / _uf);\n _uv += ANGLE_sc25;\n float ANGLE_sc26 = (_uf++);\n ANGLE_sbe7 = (ANGLE_sc26 < 9.0f);\n }\n }\n }\n }\n float4 ANGLE_sc28 = (_ui + float4(0.0f, 1.0f, 2.0f, 3.0f));\n float4 ANGLE_sc29 = cos(ANGLE_sc28);\n float4 ANGLE_sc2a = (ANGLE_sc29 + 1.0f);\n float4 ANGLE_sc2b = (ANGLE_sc2a / 6.0f);\n float ANGLE_sc2c = length(_uv);\n float4 ANGLE_sc2d = (ANGLE_sc2b / ANGLE_sc2c);\n _uO += ANGLE_sc2d;\n float ANGLE_sc2e = (_ui++);\n ANGLE_sbe6 = (ANGLE_sc2e < 9.0f);\n }\n }\n float4 ANGLE_sc30 = (_uO * _uO);\n _uO = precise::tanh(ANGLE_sc30);\n}\n\n\nvoid mainImage(out vec4 fragColor, in vec2 fragCoord) { _umainImage(fragColor, fragCoord); }", "views": 13403, "likes": 395, "createdAt": "2026-04-01T12:26:22.129Z", "sourceFormat": "angle-metal-auto-converted" }, { "id": "f0cd7ab2-51a2-499e-b034-0c6b8235cbbc", "name": "线条", "author": "unknown", "code": "void ANGLE_loopForwardProgress() {}\nvoid ANGLE_loopForwardProgress()\n{\n volatile bool p = true;\n}\n\nstruct ANGLE_InvocationFragmentGlobals\n{\n float4 gl_FragCoord [[position]];\n};\n\nstruct ANGLEDepthRangeParams\n{\n float ANGLE_near;\n float ANGLE_far;\n float ANGLE_diff;\n};\n\nstruct ANGLEUniformBlock\n{\n uint2 ANGLE_acbBufferOffsets;\n float2 ANGLE_depthRange;\n uint ANGLE_renderArea;\n uint ANGLE_flipXY;\n uint ANGLE_dither;\n uint ANGLE_misc;\n int4 ANGLE_xfbBufferOffsets;\n int ANGLE_xfbVerticesPerInstance;\n uint ANGLE_coverageMask;\n uint2 ANGLE_unused;\n};\n\nstruct ANGLE_NonConstGlobals\n{\n float4 ANGLE_flippedFragCoord;\n};\n\nstruct ANGLE_UserUniforms\n{\n float3 _uiResolution;\n float _uiTime;\n};\n\nstruct ANGLE_FragmentOut\n{\n float4 _ushadertoy_out_color [[__unassigned_output__]];\n uint ANGLE_metal_SampleMask [[sample_mask, function_constant(ANGLESampleMaskWriteEnabled)]];\n};\n\nstruct ANGLE_sc07\n{\n float3 _usize;\n float _utime;\n int _uloaded;\n};\n\nstruct ANGLE_sc04\n{\n float3 _usize;\n float _utime;\n int _uloaded;\n};\n\nstruct ANGLE_sc01\n{\n float3 _usize;\n float _utime;\n int _uloaded;\n};\n\nstruct ANGLE_sbfe\n{\n float3 _usize;\n float _utime;\n int _uloaded;\n};\n\nvoid _umainImage(out vec4 _uO, vec2 _uC);\n\nfloat2 ANGLE_sc3f(float ANGLE_sc40, float ANGLE_sc41)\n{\n float2 ANGLE_sc42 = float2(ANGLE_sc40, ANGLE_sc41);\n return ANGLE_sc42;\n}\n\nfloat2 ANGLE_sc3c(float ANGLE_sc3d, float ANGLE_sc3e)\n{\n float2 ANGLE_sc43 = float2(ANGLE_sc3d, ANGLE_sc3e);\n return ANGLE_sc43;\n}\n\nfloat4 ANGLE_sc39(float3 ANGLE_sc3a, float ANGLE_sc3b)\n{\n float4 ANGLE_sc44 = float4(ANGLE_sc3a.x, ANGLE_sc3a.y, ANGLE_sc3a.z, ANGLE_sc3b);\n return ANGLE_sc44;\n}\n\nfloat4 ANGLE_sc36(float3 ANGLE_sc37, float ANGLE_sc38)\n{\n float4 ANGLE_sc45 = float4(ANGLE_sc37.x, ANGLE_sc37.y, ANGLE_sc37.z, ANGLE_sc38);\n return ANGLE_sc45;\n}\n\nfloat3 ANGLE_sc33(float2 ANGLE_sc34, float ANGLE_sc35)\n{\n float3 ANGLE_sc46 = float3(ANGLE_sc34.x, ANGLE_sc34.y, ANGLE_sc35);\n return ANGLE_sc46;\n}\n\nfloat3x3 ANGLE_sc2f(float3 ANGLE_sc30, float3 ANGLE_sc31, float3 ANGLE_sc32)\n{\n float3x3 ANGLE_sc47 = float3x3(ANGLE_sc30.x, ANGLE_sc30.y, ANGLE_sc30.z, ANGLE_sc31.x, ANGLE_sc31.y, ANGLE_sc31.z, ANGLE_sc32.x, ANGLE_sc32.y, ANGLE_sc32.z);\n return ANGLE_sc47;\n}\n\nfloat2x2 ANGLE_sc2a(float ANGLE_sc2b, float ANGLE_sc2c, float ANGLE_sc2d, float ANGLE_sc2e)\n{\n float2x2 ANGLE_sc48 = float2x2(ANGLE_sc2b, ANGLE_sc2c, ANGLE_sc2d, ANGLE_sc2e);\n return ANGLE_sc48;\n}\n\nfloat2x2 ANGLE_sc25(float ANGLE_sc26, float ANGLE_sc27, float ANGLE_sc28, float ANGLE_sc29)\n{\n float2x2 ANGLE_sc49 = float2x2(ANGLE_sc26, ANGLE_sc27, ANGLE_sc28, ANGLE_sc29);\n return ANGLE_sc49;\n}\n\nfloat3 ANGLE_sc21(float ANGLE_sc22, float ANGLE_sc23, float ANGLE_sc24)\n{\n float3 ANGLE_sc4a = float3(ANGLE_sc22, ANGLE_sc23, ANGLE_sc24);\n return ANGLE_sc4a;\n}\n\nfloat3 _upath(float _uv)\n{\n float ANGLE_sc4b = (_uv * 0.100000001f);\n float ANGLE_sc4c = sin(ANGLE_sc4b);\n float ANGLE_sc4d = (ANGLE_sc4c * 7.0f);\n float ANGLE_sc4e = (_uv * 0.150000006f);\n float ANGLE_sc4f = cos(ANGLE_sc4e);\n float ANGLE_sc50 = (ANGLE_sc4f * 5.0f);\n float3 ANGLE_sc51 = ANGLE_sc21(ANGLE_sc4d, ANGLE_sc50, _uv);\n return ANGLE_sc51;\n}\n\nfloat _ubulk( ANGLE_UserUniforms & ANGLE_userUniforms, float3 _up, float _uh)\n{\n float _ut = (iTime * 0.300000012f);\n {\n int _ui = 0;\n bool ANGLE_sbfc = (_ui < 8);\n while (ANGLE_sbfc)\n {\n {\n float3 ANGLE_sc54 = abs(_up);\n _up = (ANGLE_sc54 - float3(1.20000005f, 2.5f, 2.0f));\n float ANGLE_sc56 = (_ut * 0.5f);\n float ANGLE_sc57 = (_up.x * 0.100000001f);\n float ANGLE_sc58 = (ANGLE_sc56 + ANGLE_sc57);\n float ANGLE_sc59 = cos(ANGLE_sc58);\n float ANGLE_sc5a = (_ut * 0.5f);\n float ANGLE_sc5b = (_up.x * 0.100000001f);\n float ANGLE_sc5c = (ANGLE_sc5a + ANGLE_sc5b);\n float ANGLE_sc5d = sin(ANGLE_sc5c);\n float ANGLE_sc5e = (_ut * 0.5f);\n float ANGLE_sc5f = (_up.x * 0.100000001f);\n float ANGLE_sc60 = (ANGLE_sc5e + ANGLE_sc5f);\n float ANGLE_sc61 = sin(ANGLE_sc60);\n float ANGLE_sc62 = (-ANGLE_sc61);\n float ANGLE_sc63 = (_ut * 0.5f);\n float ANGLE_sc64 = (_up.x * 0.100000001f);\n float ANGLE_sc65 = (ANGLE_sc63 + ANGLE_sc64);\n float ANGLE_sc66 = cos(ANGLE_sc65);\n float2x2 ANGLE_sc67 = ANGLE_sc25(ANGLE_sc59, ANGLE_sc5d, ANGLE_sc62, ANGLE_sc66);\n _up.yz = (_up.yz * ANGLE_sc67);\n float ANGLE_sc68 = (_ut * 0.800000012f);\n float ANGLE_sc69 = (_up.y * 0.119999997f);\n float ANGLE_sc6a = (ANGLE_sc68 + ANGLE_sc69);\n float ANGLE_sc6b = cos(ANGLE_sc6a);\n float ANGLE_sc6c = (_ut * 0.800000012f);\n float ANGLE_sc6d = (_up.y * 0.119999997f);\n float ANGLE_sc6e = (ANGLE_sc6c + ANGLE_sc6d);\n float ANGLE_sc6f = sin(ANGLE_sc6e);\n float ANGLE_sc70 = (_ut * 0.800000012f);\n float ANGLE_sc71 = (_up.y * 0.119999997f);\n float ANGLE_sc72 = (ANGLE_sc70 + ANGLE_sc71);\n float ANGLE_sc73 = sin(ANGLE_sc72);\n float ANGLE_sc74 = (-ANGLE_sc73);\n float ANGLE_sc75 = (_ut * 0.800000012f);\n float ANGLE_sc76 = (_up.y * 0.119999997f);\n float ANGLE_sc77 = (ANGLE_sc75 + ANGLE_sc76);\n float ANGLE_sc78 = cos(ANGLE_sc77);\n float2x2 ANGLE_sc79 = ANGLE_sc2a(ANGLE_sc6b, ANGLE_sc6f, ANGLE_sc74, ANGLE_sc78);\n _up.xz = (_up.xz * ANGLE_sc79);\n float3 ANGLE_sc7a = (_up * 1.29999995f);\n _up = (ANGLE_sc7a - 0.200000003f);\n }\n _ui++;\n ANGLE_sbfc = (_ui < 8);\n }\n }\n float ANGLE_sc7d = length(_up);\n float ANGLE_sc7e = (ANGLE_sc7d * 0.122589514f);\n float ANGLE_sc7f = (-_uh);\n float ANGLE_sc80 = max(ANGLE_sc7e, ANGLE_sc7f);\n return ANGLE_sc80;\n}\n\nvoid _umainImage(out vec4 _uO, vec2 _uC)\n{\n _uO = float4(0.0f, 0.0f, 0.0f, 0.0f);\n float2 ANGLE_sc81 = (_uC * 2.0f);\n float2 ANGLE_sc82 = (ANGLE_sc81 - iResolution.xy);\n float2 _uuv = (ANGLE_sc82 / iResolution.y);\n float _us = (iTime * 5.0f);\n float _uz = 0.300000012f;\n float3 _uro = _upath(_us);\n float ANGLE_sc86 = (_us + 1.20000005f);\n float3 _uta = _upath(ANGLE_sc86);\n float3 ANGLE_sc88 = (_uta - _uro);\n float3 _uf = normalize(ANGLE_sc88);\n float3 ANGLE_sc8a = cross(_uf, float3(0.0f, 1.0f, 0.0f));\n float3 _ur = normalize(ANGLE_sc8a);\n float3 ANGLE_sc8c = cross(_ur, _uf);\n float3x3 ANGLE_sc8d = ANGLE_sc2f(_ur, ANGLE_sc8c, _uf);\n float3 ANGLE_sc8e = ANGLE_sc33(_uuv, 1.79999995f);\n float3 ANGLE_sc8f = normalize(ANGLE_sc8e);\n float3 _urd = (ANGLE_sc8d * ANGLE_sc8f);\n float3 _ucol = float3(0.0f, 0.0f, 0.0f);\n {\n float _ui = 0.0f;\n bool ANGLE_sbfd = (_ui < 120.0f);\n while (ANGLE_sbfd)\n {\n {\n ANGLE_loopForwardProgress();\n {\n float3 ANGLE_sc92 = (_urd * _uz);\n float3 _up = (_uro + ANGLE_sc92);\n float3 ANGLE_sc94 = _upath(_up.z);\n float3 _uq = (_up - ANGLE_sc94);\n float ANGLE_sc96 = length(_uq.xy);\n float _uh = (ANGLE_sc96 - 4.5f);\n float _ud = _ubulk(ANGLE_userUniforms, _uq, _uh);\n float3 ANGLE_sc99 = (_up / 10.0f);\n float3 ANGLE_sc9a = (ANGLE_sc99 + 0.5f);\n float3 _uid = floor(ANGLE_sc9a);\n float3 ANGLE_sc9c = (_uid * float3(12.8999996f, 78.1999969f, 45.2999992f));\n float3 ANGLE_sc9d = sin(ANGLE_sc9c);\n float3 ANGLE_sc9e = (ANGLE_sc9d * 43758.5f);\n float3 _uhsh = fract(ANGLE_sc9e);\n float3 ANGLE_sca0 = (_uid * 10.0f);\n float3 ANGLE_sca1 = (_up - ANGLE_sca0);\n float3 ANGLE_sca2 = (_uhsh - 0.5f);\n float3 ANGLE_sca3 = (ANGLE_sca2 * 10.0f);\n float3 ANGLE_sca4 = (ANGLE_sca1 - ANGLE_sca3);\n float ANGLE_sca5 = length(ANGLE_sca4);\n float _uds = (ANGLE_sca5 - 0.00999999978f);\n float ANGLE_sca7 = (-_uh);\n float ANGLE_sca8 = max(_uds, ANGLE_sca7);\n float ANGLE_sca9 = min(_ud, ANGLE_sca8);\n _ud = max(ANGLE_sca9, 0.00100000005f);\n float ANGLE_scab = (_up.z * 0.0500000007f);\n float ANGLE_scac = (iTime * 3.0f);\n float ANGLE_scad = (ANGLE_scab + ANGLE_scac);\n float ANGLE_scae = sin(ANGLE_scad);\n float ANGLE_scaf = (ANGLE_scae * 0.5f);\n float ANGLE_scb0 = (ANGLE_scaf + 0.5f);\n float _ush = powr(ANGLE_scb0, 1.60000002f);\n float ANGLE_scb2 = (_up.z * 0.0299999993f);\n float3 ANGLE_scb3 = (float3(4.0f, 2.79999995f, 1.20000005f) + ANGLE_scb2);\n float3 ANGLE_scb4 = (ANGLE_scb3 + _uhsh.x);\n float3 _ugc = sin(ANGLE_scb4);\n float3 ANGLE_scb6 = (2.20000005f + _ugc);\n float3 ANGLE_scb7 = (ANGLE_scb6 * _ush);\n float ANGLE_scb8 = (_ud + 0.0799999982f);\n float3 ANGLE_scb9 = (ANGLE_scb7 / ANGLE_scb8);\n _ucol += ANGLE_scb9;\n bool ANGLE_scba = (_uz > 80.0f);\n if (ANGLE_scba)\n {\n break;\n } else {}\n float ANGLE_scbb = (_ud * 0.550000012f);\n _uz += ANGLE_scbb;\n }\n }\n _ui++;\n ANGLE_sbfd = (_ui < 120.0f);\n }\n }\n float3 ANGLE_scbd = (_ucol / 350.0f);\n float3 ANGLE_scbe = precise::tanh(ANGLE_scbd);\n float3 ANGLE_scbf = powr(ANGLE_scbe, float3(1.20000005f, 1.20000005f, 1.20000005f));\n _uO = ANGLE_sc36(ANGLE_scbf, 1.0f);\n}\n\n\nvoid mainImage(out vec4 fragColor, in vec2 fragCoord) { _umainImage(fragColor, fragCoord); }", "views": 9700, "likes": 574, "createdAt": "2026-04-01T12:24:58.267Z", "updatedAt": "2026-04-01T12:25:18.712Z", "sourceFormat": "angle-metal-auto-converted" }, { "id": "0b5f6b51-d43d-4be8-b5a3-f430ebb1960e", "name": "粒子云", "author": "unknown", "code": "void ANGLE_loopForwardProgress() {}\nvoid ANGLE_loopForwardProgress()\n{\n volatile bool p = true;\n}\n\nstruct ANGLE_InvocationFragmentGlobals\n{\n float4 gl_FragCoord [[position]];\n};\n\nstruct ANGLEDepthRangeParams\n{\n float ANGLE_near;\n float ANGLE_far;\n float ANGLE_diff;\n};\n\nstruct ANGLEUniformBlock\n{\n uint2 ANGLE_acbBufferOffsets;\n float2 ANGLE_depthRange;\n uint ANGLE_renderArea;\n uint ANGLE_flipXY;\n uint ANGLE_dither;\n uint ANGLE_misc;\n int4 ANGLE_xfbBufferOffsets;\n int ANGLE_xfbVerticesPerInstance;\n uint ANGLE_coverageMask;\n uint2 ANGLE_unused;\n};\n\nstruct ANGLE_NonConstGlobals\n{\n float4 ANGLE_flippedFragCoord;\n};\n\nstruct ANGLE_UserUniforms\n{\n float3 _uiResolution;\n float _uiTime;\n};\n\nstruct ANGLE_FragmentOut\n{\n float4 _ushadertoy_out_color [[__unassigned_output__]];\n uint ANGLE_metal_SampleMask [[sample_mask, function_constant(ANGLESampleMaskWriteEnabled)]];\n};\n\nstruct ANGLE_sbf3\n{\n float3 _usize;\n float _utime;\n int _uloaded;\n};\n\nstruct ANGLE_sbf0\n{\n float3 _usize;\n float _utime;\n int _uloaded;\n};\n\nstruct ANGLE_sbed\n{\n float3 _usize;\n float _utime;\n int _uloaded;\n};\n\nstruct ANGLE_sbea\n{\n float3 _usize;\n float _utime;\n int _uloaded;\n};\n\nvoid _umainImage(out vec4 _uo, vec2 _uu);\n\nfloat2 ANGLE_sc1c(float ANGLE_sc1d, float ANGLE_sc1e)\n{\n float2 ANGLE_sc1f = float2(ANGLE_sc1d, ANGLE_sc1e);\n return ANGLE_sc1f;\n}\n\nfloat2 ANGLE_sc19(float ANGLE_sc1a, float ANGLE_sc1b)\n{\n float2 ANGLE_sc20 = float2(ANGLE_sc1a, ANGLE_sc1b);\n return ANGLE_sc20;\n}\n\nfloat4 ANGLE_sc16(float3 ANGLE_sc17, float ANGLE_sc18)\n{\n float4 ANGLE_sc21 = float4(ANGLE_sc17.x, ANGLE_sc17.y, ANGLE_sc17.z, ANGLE_sc18);\n return ANGLE_sc21;\n}\n\nfloat4 ANGLE_sc13(float3 ANGLE_sc14, int ANGLE_sc15)\n{\n float ANGLE_sc22 = float(ANGLE_sc15);\n float4 ANGLE_sc23 = float4(ANGLE_sc14.x, ANGLE_sc14.y, ANGLE_sc14.z, ANGLE_sc22);\n return ANGLE_sc23;\n}\n\nfloat3 ANGLE_sc10(float2 ANGLE_sc11, float ANGLE_sc12)\n{\n float3 ANGLE_sc24 = float3(ANGLE_sc11.x, ANGLE_sc11.y, ANGLE_sc12);\n return ANGLE_sc24;\n}\n\nfloat2 ANGLE_sc0d(float ANGLE_sc0e, float ANGLE_sc0f)\n{\n float2 ANGLE_sc25 = float2(ANGLE_sc0e, ANGLE_sc0f);\n return ANGLE_sc25;\n}\n\nvoid _umainImage(out vec4 _uo, vec2 _uu)\n{\n _uo = float4(0.0f, 0.0f, 0.0f, 0.0f);\n float3 _up = iResolution;\n float2 ANGLE_sc26 = (_uu + _uu);\n float2 ANGLE_sc27 = (ANGLE_sc26 - _up.xy);\n float2 ANGLE_sc28 = (ANGLE_sc27 / _up.y);\n float ANGLE_sc29 = (iTime * 2.0f);\n float ANGLE_sc2a = cos(ANGLE_sc29);\n float ANGLE_sc2b = (ANGLE_sc2a * 0.150000006f);\n float ANGLE_sc2c = cos(iTime);\n float ANGLE_sc2d = (ANGLE_sc2c * 0.129999995f);\n float2 ANGLE_sc2e = ANGLE_sc0d(ANGLE_sc2b, ANGLE_sc2d);\n float2 ANGLE_sc30 = _uu = (ANGLE_sc28 + ANGLE_sc2e);\n float3 ANGLE_sc31 = ANGLE_sc10(ANGLE_sc30, 0.699999988f);\n float3 _uD = normalize(ANGLE_sc31);\n float _ui = 0.0f;\n float _us = 0.0f;\n float _ud = 0.0f;\n {\n _uo *= _ui;\n float ANGLE_sc33 = (_ui++);\n bool ANGLE_sbe8 = (ANGLE_sc33 < 50.0f);\n while (ANGLE_sbe8)\n {\n {\n ANGLE_loopForwardProgress();\n {\n _up = (_uD * _ud);\n float ANGLE_sc36 = (iTime * 0.699999988f);\n float ANGLE_sc37 = (_up.x + ANGLE_sc36);\n float ANGLE_sc38 = sin(ANGLE_sc37);\n float ANGLE_sc39 = (ANGLE_sc38 + 1.5f);\n float ANGLE_sc3a = (_up.z * ANGLE_sc39);\n _up.z = cos(ANGLE_sc3a);\n {\n _us = 2.0f;\n float ANGLE_sc3c = (_us++);\n bool ANGLE_sbe9 = (ANGLE_sc3c < 15.0f);\n while (ANGLE_sbe9)\n {\n {\n ANGLE_loopForwardProgress();\n {\n }\n }\n float3 ANGLE_sc3e = (_up * 1.04999995f);\n float ANGLE_sc3f = (2.5999999f * iTime);\n float3 ANGLE_sc40 = (_up.yzx * _us);\n float3 ANGLE_sc41 = (ANGLE_sc3f + ANGLE_sc40);\n float3 ANGLE_sc42 = sin(ANGLE_sc41);\n float ANGLE_sc43 = (iTime * 0.699999988f);\n float ANGLE_sc44 = cos(ANGLE_sc43);\n float ANGLE_sc45 = (0.125f * ANGLE_sc44);\n float3 ANGLE_sc46 = (ANGLE_sc42 * ANGLE_sc45);\n _up = (ANGLE_sc3e + ANGLE_sc46);\n float ANGLE_sc48 = (_us++);\n ANGLE_sbe9 = (ANGLE_sc48 < 15.0f);\n }\n }\n float ANGLE_sc4a = length(_up);\n float ANGLE_sc4b = (ANGLE_sc4a - 0.800000012f);\n float ANGLE_sc4c = abs(ANGLE_sc4b);\n float ANGLE_sc4d = (0.100000001f * ANGLE_sc4c);\n float ANGLE_sc4f = _us = (0.00999999978f + ANGLE_sc4d);\n _ud += ANGLE_sc4f;\n float3 ANGLE_sc50 = (_up * float3(0.899999976f, 0.300000012f, 0.200000003f));\n float3 ANGLE_sc51 = (ANGLE_sc50 - float3(1.0f, 4.0f, 1.0f));\n float3 ANGLE_sc52 = sin(ANGLE_sc51);\n float4 ANGLE_sc53 = ANGLE_sc13(ANGLE_sc52, 0);\n float4 ANGLE_sc54 = (ANGLE_sc53 / _us);\n _uo += ANGLE_sc54;\n }\n }\n float ANGLE_sc55 = (_ui++);\n ANGLE_sbe8 = (ANGLE_sc55 < 50.0f);\n }\n }\n float4 ANGLE_sc57 = (_uo * _uo);\n float4 ANGLE_sc58 = (ANGLE_sc57 / 1000000.0f);\n float4 ANGLE_sc59 = precise::tanh(ANGLE_sc58);\n float ANGLE_sc5a = dot(_uu, _uu);\n float ANGLE_sc5b = (0.200000003f * ANGLE_sc5a);\n float ANGLE_sc5c = (1.0f - ANGLE_sc5b);\n _uo = (ANGLE_sc59 * ANGLE_sc5c);\n}\n\n\nvoid mainImage(out vec4 fragColor, in vec2 fragCoord) { _umainImage(fragColor, fragCoord); }", "views": 14387, "likes": 77, "createdAt": "2026-04-01T12:24:12.354Z", "updatedAt": "2026-04-01T12:24:38.268Z", "sourceFormat": "angle-metal-auto-converted" }, { "id": "7be053e5-33c9-4ecc-a6dc-b0e258f8bebe", "name": "星云", "author": "unknown", "code": "void ANGLE_loopForwardProgress() {}\nvoid ANGLE_loopForwardProgress()\n{\n volatile bool p = true;\n}\n\nstruct ANGLE_InvocationFragmentGlobals\n{\n float4 gl_FragCoord [[position]];\n};\n\nstruct ANGLEDepthRangeParams\n{\n float ANGLE_near;\n float ANGLE_far;\n float ANGLE_diff;\n};\n\nstruct ANGLEUniformBlock\n{\n uint2 ANGLE_acbBufferOffsets;\n float2 ANGLE_depthRange;\n uint ANGLE_renderArea;\n uint ANGLE_flipXY;\n uint ANGLE_dither;\n uint ANGLE_misc;\n int4 ANGLE_xfbBufferOffsets;\n int ANGLE_xfbVerticesPerInstance;\n uint ANGLE_coverageMask;\n uint2 ANGLE_unused;\n};\n\nstruct ANGLE_NonConstGlobals\n{\n float4 ANGLE_flippedFragCoord;\n};\n\nstruct ANGLE_UserUniforms\n{\n float3 _uiResolution;\n float _uiTime;\n};\n\nstruct ANGLE_FragmentOut\n{\n float4 _ushadertoy_out_color [[__unassigned_output__]];\n uint ANGLE_metal_SampleMask [[sample_mask, function_constant(ANGLESampleMaskWriteEnabled)]];\n};\n\nstruct ANGLE_sc1a\n{\n float3 _usize;\n float _utime;\n int _uloaded;\n};\n\nstruct ANGLE_sc17\n{\n float3 _usize;\n float _utime;\n int _uloaded;\n};\n\nstruct ANGLE_sc14\n{\n float3 _usize;\n float _utime;\n int _uloaded;\n};\n\nstruct ANGLE_sc11\n{\n float3 _usize;\n float _utime;\n int _uloaded;\n};\n\nvoid _umainImage(out vec4 _uo, vec2 _uu);\n\nfloat2 ANGLE_sc50(float ANGLE_sc51, float ANGLE_sc52)\n{\n float2 ANGLE_sc53 = float2(ANGLE_sc51, ANGLE_sc52);\n return ANGLE_sc53;\n}\n\nfloat2 ANGLE_sc4d(float ANGLE_sc4e, float ANGLE_sc4f)\n{\n float2 ANGLE_sc54 = float2(ANGLE_sc4e, ANGLE_sc4f);\n return ANGLE_sc54;\n}\n\nfloat4 ANGLE_sc4a(float3 ANGLE_sc4b, float ANGLE_sc4c)\n{\n float4 ANGLE_sc55 = float4(ANGLE_sc4b.x, ANGLE_sc4b.y, ANGLE_sc4b.z, ANGLE_sc4c);\n return ANGLE_sc55;\n}\n\nfloat4 ANGLE_sc45(float ANGLE_sc46, float ANGLE_sc47, float ANGLE_sc48, float ANGLE_sc49)\n{\n float4 ANGLE_sc56 = float4(ANGLE_sc46, ANGLE_sc47, ANGLE_sc48, ANGLE_sc49);\n return ANGLE_sc56;\n}\n\nfloat4 ANGLE_sc41(float2 ANGLE_sc42, float ANGLE_sc43, int ANGLE_sc44)\n{\n float ANGLE_sc57 = float(ANGLE_sc44);\n float4 ANGLE_sc58 = float4(ANGLE_sc42.x, ANGLE_sc42.y, ANGLE_sc43, ANGLE_sc57);\n return ANGLE_sc58;\n}\n\nfloat3 ANGLE_sc3e(float2 ANGLE_sc3f, float ANGLE_sc40)\n{\n float3 ANGLE_sc59 = float3(ANGLE_sc3f.x, ANGLE_sc3f.y, ANGLE_sc40);\n return ANGLE_sc59;\n}\n\nfloat3 ANGLE_sc3a(float ANGLE_sc3b, float ANGLE_sc3c, float ANGLE_sc3d)\n{\n float3 ANGLE_sc5a = float3(ANGLE_sc3b, ANGLE_sc3c, ANGLE_sc3d);\n return ANGLE_sc5a;\n}\n\nfloat2 ANGLE_sc37(float ANGLE_sc38, float ANGLE_sc39)\n{\n float2 ANGLE_sc5b = float2(ANGLE_sc38, ANGLE_sc39);\n return ANGLE_sc5b;\n}\n\nfloat2 ANGLE_sc34(int ANGLE_sc35, int ANGLE_sc36)\n{\n float ANGLE_sc5c = float(ANGLE_sc35);\n float ANGLE_sc5d = float(ANGLE_sc36);\n float2 ANGLE_sc5e = float2(ANGLE_sc5c, ANGLE_sc5d);\n return ANGLE_sc5e;\n}\n\nfloat _uStar(float2 _uuv, float _uflare)\n{\n float _ud = length(_uuv);\n float _um = (0.029995501f / _ud);\n float ANGLE_sc61 = (_uuv.x * _uuv.y);\n float ANGLE_sc62 = (ANGLE_sc61 * 1000.0f);\n float ANGLE_sc63 = abs(ANGLE_sc62);\n float ANGLE_sc64 = (0.5f - ANGLE_sc63);\n float _urays = max(0.0f, ANGLE_sc64);\n float ANGLE_sc66 = (_urays * _uflare);\n float ANGLE_sc67 = (ANGLE_sc66 * 2.0f);\n _um += ANGLE_sc67;\n float ANGLE_sc68 = smoothstep(1.0f, 0.100000001f, _ud);\n _um *= ANGLE_sc68;\n return _um;\n}\n\nfloat _uHash21(float2 _up)\n{\n float2 ANGLE_sc69 = (_up * float2(123.339996f, 456.209991f));\n _up = fract(ANGLE_sc69);\n float2 ANGLE_sc6b = (_up + 45.3199997f);\n float ANGLE_sc6c = dot(_up, ANGLE_sc6b);\n _up += ANGLE_sc6c;\n float ANGLE_sc6d = (_up.x * _up.y);\n float ANGLE_sc6e = fract(ANGLE_sc6d);\n return ANGLE_sc6e;\n}\n\nfloat3 _uStarLayer( ANGLE_UserUniforms & ANGLE_userUniforms, float2 _uuv)\n{\n float3 _ucol = float3(0.0f, 0.0f, 0.0f);\n float2 _ugv = fract(_uuv);\n float2 _uid = floor(_uuv);\n {\n int _uy = -1;\n bool ANGLE_sc0b = (_uy <= 1);\n while (ANGLE_sc0b)\n {\n {\n {\n int _ux = -1;\n bool ANGLE_sc0c = (_ux <= 1);\n while (ANGLE_sc0c)\n {\n {\n float2 _uoffs = ANGLE_sc34(_ux, _uy);\n float2 ANGLE_sc74 = (_uid + _uoffs);\n float _un = _uHash21(ANGLE_sc74);\n float _usize = fract(_un);\n float2 ANGLE_sc77 = (_ugv - _uoffs);\n float ANGLE_sc78 = (_un * 34.0f);\n float ANGLE_sc79 = fract(ANGLE_sc78);\n float2 ANGLE_sc7a = ANGLE_sc37(_un, ANGLE_sc79);\n float2 ANGLE_sc7b = (ANGLE_sc77 - ANGLE_sc7a);\n float2 ANGLE_sc7c = (ANGLE_sc7b + 0.5f);\n float ANGLE_sc7d = smoothstep(0.100000001f, 0.899999976f, _usize);\n float ANGLE_sc7e = (ANGLE_sc7d * 0.460000008f);\n float _ustar = _uStar(ANGLE_sc7c, ANGLE_sc7e);\n float ANGLE_sc80 = (_un * 2345.19995f);\n float ANGLE_sc81 = fract(ANGLE_sc80);\n float3 ANGLE_sc82 = (float3(0.200000003f, 0.300000012f, 0.899999976f) * ANGLE_sc81);\n float3 ANGLE_sc83 = (ANGLE_sc82 * 6.28318024f);\n float3 ANGLE_sc84 = sin(ANGLE_sc83);\n float3 ANGLE_sc85 = (ANGLE_sc84 * 0.25f);\n float3 _ucolor = (ANGLE_sc85 + 0.75f);\n float ANGLE_sc87 = (0.899999976f + _usize);\n float3 ANGLE_sc88 = ANGLE_sc3a(0.899999976f, 0.589999974f, ANGLE_sc87);\n _ucolor = (_ucolor * ANGLE_sc88);\n float ANGLE_sc8a = (iTime * 0.600000024f);\n float ANGLE_sc8b = (_un * 6.28318024f);\n float ANGLE_sc8c = (ANGLE_sc8a + ANGLE_sc8b);\n float ANGLE_sc8d = sin(ANGLE_sc8c);\n float ANGLE_sc8e = (ANGLE_sc8d * 0.5f);\n float ANGLE_sc8f = (ANGLE_sc8e + 0.5f);\n _ustar *= ANGLE_sc8f;\n float ANGLE_sc90 = (_ustar * _usize);\n float3 ANGLE_sc91 = (ANGLE_sc90 * _ucolor);\n _ucol += ANGLE_sc91;\n }\n _ux++;\n ANGLE_sc0c = (_ux <= 1);\n }\n }\n }\n _uy++;\n ANGLE_sc0b = (_uy <= 1);\n }\n }\n return _ucol;\n}\n\nvoid _umainImage(out vec4 _uo, vec2 _uu)\n{\n _uo = float4(0.0f, 0.0f, 0.0f, 0.0f);\n float _ui = 0.0f;\n float _us = 0.0f;\n float3 _up = float3(0.0f, 0.0f, 0.0f);\n float3 _ur = iResolution;\n float4 _uo2 = _uo;\n float2 _uF = _uu;\n float2 ANGLE_sc94 = (0.5f * iResolution.xy);\n float2 ANGLE_sc95 = (_uu - ANGLE_sc94);\n float2 _uuv = (ANGLE_sc95 / iResolution.y);\n float2 _uM = float2(0.0f, 0.0f);\n float _ut = (iTime * 0.0f);\n float3 _ucol = float3(0.0f, 0.0f, 0.0f);\n {\n float _ui = 0.0f;\n bool ANGLE_sc0d = (_ui < 1.0f);\n while (ANGLE_sc0d)\n {\n {\n ANGLE_loopForwardProgress();\n {\n float ANGLE_sc99 = (_ui + _ut);\n float _udepth = fract(ANGLE_sc99);\n float _uscale = mix(20.0f, 0.5f, _udepth);\n float ANGLE_sc9c = smoothstep(1.0f, 0.899999976f, _udepth);\n float _ufade = (_udepth * ANGLE_sc9c);\n float2 ANGLE_sc9e = (_uuv * _uscale);\n float ANGLE_sc9f = (_ui * 453.200012f);\n float2 ANGLE_sca0 = (ANGLE_sc9e + ANGLE_sc9f);\n float ANGLE_sca1 = (iTime * 0.0500000007f);\n float2 ANGLE_sca2 = (ANGLE_sca0 - ANGLE_sca1);\n float2 ANGLE_sca3 = (ANGLE_sca2 + _uM);\n float3 ANGLE_sca4 = _uStarLayer(ANGLE_userUniforms, ANGLE_sca3);\n float3 ANGLE_sca5 = (ANGLE_sca4 * _ufade);\n _ucol += ANGLE_sca5;\n }\n }\n _ui += 0.0833333358f;\n ANGLE_sc0d = (_ui < 1.0f);\n }\n }\n float2 ANGLE_sca7 = (_uu + _uu);\n float2 ANGLE_sca8 = (ANGLE_sca7 - _ur.xy);\n _uu = (ANGLE_sca8 / _ur.y);\n {\n _uo *= _ui;\n float ANGLE_scaa = (_ui++);\n bool ANGLE_sc0e = (ANGLE_scaa < 100.0f);\n while (ANGLE_sc0e)\n {\n {\n ANGLE_loopForwardProgress();\n {\n float2 ANGLE_scac = (_uu * _us);\n float3 ANGLE_scad = ANGLE_sc3e(ANGLE_scac, _us);\n _up += ANGLE_scad;\n _us = (6.0f + _up.y);\n float ANGLE_scaf = (0.100000001f * _up.z);\n float ANGLE_scb0 = (iTime + ANGLE_scaf);\n float3 ANGLE_scb1 = (0.300000012f * _up);\n float3 ANGLE_scb2 = (ANGLE_scb1 / 0.0799999982f);\n float3 ANGLE_scb3 = (ANGLE_scb0 + ANGLE_scb2);\n float3 ANGLE_scb4 = sin(ANGLE_scb3);\n float ANGLE_scb5 = dot(ANGLE_scb4, float3(0.159999996f, 0.159999996f, 0.159999996f));\n float ANGLE_scb6 = abs(ANGLE_scb5);\n _us -= ANGLE_scb6;\n float ANGLE_scb7 = (0.100000001f * _up.z);\n float ANGLE_scb8 = (iTime + ANGLE_scb7);\n float3 ANGLE_scb9 = (0.300000012f * _up);\n float3 ANGLE_scba = (ANGLE_scb9 / 0.200000003f);\n float3 ANGLE_scbb = (ANGLE_scb8 + ANGLE_scba);\n float3 ANGLE_scbc = sin(ANGLE_scbb);\n float ANGLE_scbd = dot(ANGLE_scbc, float3(0.400000006f, 0.400000006f, 0.400000006f));\n float ANGLE_scbe = abs(ANGLE_scbd);\n _us -= ANGLE_scbe;\n float ANGLE_scbf = (0.100000001f * _up.z);\n float ANGLE_scc0 = (iTime + ANGLE_scbf);\n float3 ANGLE_scc1 = (0.300000012f * _up);\n float3 ANGLE_scc2 = (ANGLE_scc1 / 0.600000024f);\n float3 ANGLE_scc3 = (ANGLE_scc0 + ANGLE_scc2);\n float3 ANGLE_scc4 = sin(ANGLE_scc3);\n float ANGLE_scc5 = dot(ANGLE_scc4, float3(1.20000005f, 1.20000005f, 1.20000005f));\n float ANGLE_scc6 = abs(ANGLE_scc5);\n _us -= ANGLE_scc6;\n float ANGLE_scc7 = abs(_us);\n float ANGLE_scc8 = (ANGLE_scc7 * 0.200000003f);\n _us = (0.100000001f + ANGLE_scc8);\n float4 ANGLE_scca = (float4(4.0f, 2.0f, 1.0f, 0.0f) / _us);\n _uo += ANGLE_scca;\n }\n }\n float ANGLE_sccb = (_ui++);\n ANGLE_sc0e = (ANGLE_sccb < 100.0f);\n }\n }\n float ANGLE_sccd = abs(_uu.y);\n float ANGLE_scce = smoothstep(0.800000012f, 0.75f, ANGLE_sccd);\n _uo *= ANGLE_scce;\n float2 _uR = iResolution.xy;\n _uo2 -= _uo2;\n {\n float _ud = 0.0f;\n float ANGLE_sccf = (-iTime);\n float _ut = (ANGLE_sccf * 0.00499999989f);\n float _ui = 0.0f;\n bool ANGLE_sc0f = (_ui > -1.0f);\n while (ANGLE_sc0f)\n {\n {\n ANGLE_loopForwardProgress();\n {\n float ANGLE_scd2 = (3.0f * _ut);\n float ANGLE_scd3 = (_ui - ANGLE_scd2);\n _ud = fract(ANGLE_scd3);\n float2 ANGLE_scd5 = (_uR * 0.5f);\n float2 ANGLE_scd6 = (_uF - ANGLE_scd5);\n float2 ANGLE_scd7 = (ANGLE_scd6 / _uR.y);\n float2 ANGLE_scd8 = (ANGLE_scd7 * _ud);\n float4 ANGLE_scd9 = ANGLE_sc41(ANGLE_scd8, _ui, 0);\n float4 _uc = (ANGLE_scd9 * 28.0f);\n {\n int _uj = 0;\n int ANGLE_scdb = (_uj++);\n bool ANGLE_sc10 = (ANGLE_scdb < 27);\n while (ANGLE_sc10)\n {\n {\n ANGLE_loopForwardProgress();\n {\n float ANGLE_scdd = dot(_uc, _uc);\n float4 ANGLE_scde = (_uc / ANGLE_scdd);\n float ANGLE_scdf = sin(_ut);\n float ANGLE_sce0 = (0.200000003f * ANGLE_scdf);\n float ANGLE_sce1 = (7.0f - ANGLE_sce0);\n float ANGLE_sce2 = (_ut / 0.800000012f);\n float ANGLE_sce3 = cos(ANGLE_sce2);\n float ANGLE_sce4 = (1.0f - ANGLE_sce3);\n float4 ANGLE_sce5 = ANGLE_sc45(ANGLE_sce1, 6.30000019f, 0.699999988f, ANGLE_sce4);\n float4 ANGLE_sce6 = (ANGLE_sce5 / 7.0f);\n float4 ANGLE_sce7 = (ANGLE_scde - ANGLE_sce6);\n _uc.xzyw = abs(ANGLE_sce7);\n }\n }\n int ANGLE_sce9 = (_uj++);\n ANGLE_sc10 = (ANGLE_sce9 < 27);\n }\n }\n float4 ANGLE_sceb = (_uc * _uc.yzww);\n float ANGLE_scec = (_ud--);\n float4 ANGLE_sced = (ANGLE_sceb * ANGLE_scec);\n float4 ANGLE_scee = (ANGLE_sced * _ud);\n float4 ANGLE_scef = (ANGLE_scee / float4(3.0f, 5.0f, 1.0f, 1.0f));\n _uo2 -= ANGLE_scef;\n }\n }\n _ui -= 0.0599999987f;\n ANGLE_sc0f = (_ui > -1.0f);\n }\n }\n _uo += _uo2;\n float4 ANGLE_scf1 = (_uo / 2000.0f);\n float ANGLE_scf2 = length(_uu);\n float4 ANGLE_scf3 = (ANGLE_scf1 / ANGLE_scf2);\n _uo = precise::tanh(ANGLE_scf3);\n float _ustarMask = smoothstep(-0.400000006f, 0.100000001f, _uu.y);\n float3 ANGLE_scf6 = (_ucol * _ustarMask);\n float3 ANGLE_scf7 = (ANGLE_scf6 * _uo2.xyz);\n float3 ANGLE_scf8 = (ANGLE_scf7 * 12.0f);\n _uo.xyz = (_uo.xyz + ANGLE_scf8);\n}\n\n\nvoid mainImage(out vec4 fragColor, in vec2 fragCoord) { _umainImage(fragColor, fragCoord); }", "views": 3190, "likes": 385, "createdAt": "2026-04-01T12:19:57.972Z", "updatedAt": "2026-04-01T12:24:38.269Z", "sourceFormat": "angle-metal-auto-converted" }, { "id": "c8775e7b-d592-4e58-8442-dd77f3364e95", "name": "云光", "author": "unknown", "code": "void ANGLE_loopForwardProgress() {}\nvoid ANGLE_loopForwardProgress()\n{\n volatile bool p = true;\n}\n\nstruct ANGLE_InvocationFragmentGlobals\n{\n float4 gl_FragCoord [[position]];\n};\n\nstruct ANGLEDepthRangeParams\n{\n float ANGLE_near;\n float ANGLE_far;\n float ANGLE_diff;\n};\n\nstruct ANGLEUniformBlock\n{\n uint2 ANGLE_acbBufferOffsets;\n float2 ANGLE_depthRange;\n uint ANGLE_renderArea;\n uint ANGLE_flipXY;\n uint ANGLE_dither;\n uint ANGLE_misc;\n int4 ANGLE_xfbBufferOffsets;\n int ANGLE_xfbVerticesPerInstance;\n uint ANGLE_coverageMask;\n uint2 ANGLE_unused;\n};\n\nstruct ANGLE_NonConstGlobals\n{\n float4 ANGLE_flippedFragCoord;\n};\n\nstruct ANGLE_UserUniforms\n{\n float3 _uiResolution;\n float _uiTime;\n};\n\nstruct ANGLE_FragmentOut\n{\n float4 _ushadertoy_out_color [[__unassigned_output__]];\n uint ANGLE_metal_SampleMask [[sample_mask, function_constant(ANGLESampleMaskWriteEnabled)]];\n};\n\nstruct ANGLE_sbf8\n{\n float3 _usize;\n float _utime;\n int _uloaded;\n};\n\nstruct ANGLE_sbf5\n{\n float3 _usize;\n float _utime;\n int _uloaded;\n};\n\nstruct ANGLE_sbf2\n{\n float3 _usize;\n float _utime;\n int _uloaded;\n};\n\nstruct ANGLE_sbef\n{\n float3 _usize;\n float _utime;\n int _uloaded;\n};\n\nvoid _umainImage(out vec4 _ufragColor, vec2 _ufragCoord);\n\nfloat2 ANGLE_sc1b(float ANGLE_sc1c, float ANGLE_sc1d)\n{\n float2 ANGLE_sc1e = float2(ANGLE_sc1c, ANGLE_sc1d);\n return ANGLE_sc1e;\n}\n\nfloat2 ANGLE_sc18(float ANGLE_sc19, float ANGLE_sc1a)\n{\n float2 ANGLE_sc1f = float2(ANGLE_sc19, ANGLE_sc1a);\n return ANGLE_sc1f;\n}\n\nfloat4 ANGLE_sc15(float3 ANGLE_sc16, float ANGLE_sc17)\n{\n float4 ANGLE_sc20 = float4(ANGLE_sc16.x, ANGLE_sc16.y, ANGLE_sc16.z, ANGLE_sc17);\n return ANGLE_sc20;\n}\n\nfloat4 ANGLE_sc12(float3 ANGLE_sc13, float ANGLE_sc14)\n{\n float4 ANGLE_sc21 = float4(ANGLE_sc13.x, ANGLE_sc13.y, ANGLE_sc13.z, ANGLE_sc14);\n return ANGLE_sc21;\n}\n\nfloat3 _upalette(float _ut)\n{\n float3 _ua = float3(0.5f, 0.5f, 0.5f);\n float3 _ub = float3(0.5f, 0.5f, 0.5f);\n float3 _uc = float3(1.0f, 1.0f, 1.0f);\n float3 _ud = float3(0.263000011f, 0.416000009f, 0.556999981f);\n float3 ANGLE_sc22 = (_uc * _ut);\n float3 ANGLE_sc23 = (ANGLE_sc22 + _ud);\n float3 ANGLE_sc24 = (6.28318024f * ANGLE_sc23);\n float3 ANGLE_sc25 = cos(ANGLE_sc24);\n float3 ANGLE_sc26 = (_ub * ANGLE_sc25);\n float3 ANGLE_sc27 = (_ua + ANGLE_sc26);\n return ANGLE_sc27;\n}\n\nvoid _umainImage(out vec4 _ufragColor, vec2 _ufragCoord)\n{\n _ufragColor = float4(0.0f, 0.0f, 0.0f, 0.0f);\n float2 ANGLE_sc28 = (_ufragCoord * 2.0f);\n float2 ANGLE_sc29 = (ANGLE_sc28 - iResolution.xy);\n float2 _uuv = (ANGLE_sc29 / iResolution.y);\n float2 _uuv0 = _uuv;\n float3 _ufinalColor = float3(0.0f, 0.0f, 0.0f);\n {\n float _ui = 0.0f;\n bool ANGLE_sbee = (_ui < 4.0f);\n while (ANGLE_sbee)\n {\n {\n ANGLE_loopForwardProgress();\n {\n float2 ANGLE_sc2c = (_uuv * 1.5f);\n float2 ANGLE_sc2d = fract(ANGLE_sc2c);\n _uuv = (ANGLE_sc2d - 0.5f);\n float ANGLE_sc2f = length(_uuv);\n float ANGLE_sc30 = length(_uuv0);\n float ANGLE_sc31 = (-ANGLE_sc30);\n float ANGLE_sc32 = exp(ANGLE_sc31);\n float _ud = (ANGLE_sc2f * ANGLE_sc32);\n float ANGLE_sc34 = length(_uuv0);\n float ANGLE_sc35 = (_ui * 0.400000006f);\n float ANGLE_sc36 = (ANGLE_sc34 + ANGLE_sc35);\n float ANGLE_sc37 = (iTime * 0.400000006f);\n float ANGLE_sc38 = (ANGLE_sc36 + ANGLE_sc37);\n float3 _ucol = _upalette(ANGLE_sc38);\n float ANGLE_sc3a = (_ud * 8.0f);\n float ANGLE_sc3b = (ANGLE_sc3a + iTime);\n float ANGLE_sc3c = sin(ANGLE_sc3b);\n _ud = (ANGLE_sc3c / 8.0f);\n _ud = abs(_ud);\n float ANGLE_sc3f = (0.00999999978f / _ud);\n _ud = powr(ANGLE_sc3f, 1.20000005f);\n float3 ANGLE_sc41 = (_ucol * _ud);\n _ufinalColor += ANGLE_sc41;\n }\n }\n _ui++;\n ANGLE_sbee = (_ui < 4.0f);\n }\n }\n _ufragColor = ANGLE_sc12(_ufinalColor, 1.0f);\n}\n\n\nvoid mainImage(out vec4 fragColor, in vec2 fragCoord) { _umainImage(fragColor, fragCoord); }", "views": 17430, "likes": 297, "createdAt": "2026-04-01T12:18:41.938Z", "updatedAt": "2026-04-01T12:24:38.269Z", "sourceFormat": "angle-metal-auto-converted" }, { "id": "abed41ac-a1fc-491e-815d-a38a34220993", "name": "蜂窝", "author": "unknown", "code": "void ANGLE_loopForwardProgress() {}\nfloat2 ANGLE_sc6f(float ANGLE_sc70, float ANGLE_sc71)\n{\n float2 ANGLE_sc72 = float2(ANGLE_sc70, ANGLE_sc71);\n return ANGLE_sc72;\n}\n\nfloat2 ANGLE_sc6c(float ANGLE_sc6d, float ANGLE_sc6e)\n{\n float2 ANGLE_sc73 = float2(ANGLE_sc6d, ANGLE_sc6e);\n return ANGLE_sc73;\n}\n\nfloat4 ANGLE_sc69(float3 ANGLE_sc6a, float ANGLE_sc6b)\n{\n float4 ANGLE_sc74 = float4(ANGLE_sc6a.x, ANGLE_sc6a.y, ANGLE_sc6a.z, ANGLE_sc6b);\n return ANGLE_sc74;\n}\n\nfloat4 ANGLE_sc66(float3 ANGLE_sc67, float ANGLE_sc68)\n{\n float4 ANGLE_sc75 = float4(ANGLE_sc67.x, ANGLE_sc67.y, ANGLE_sc67.z, ANGLE_sc68);\n return ANGLE_sc75;\n}\n\nfloat2 ANGLE_sc63(float ANGLE_sc64, float ANGLE_sc65)\n{\n float2 ANGLE_sc76 = float2(ANGLE_sc64, ANGLE_sc65);\n return ANGLE_sc76;\n}\n\nfloat2 ANGLE_sc60(float ANGLE_sc61, float ANGLE_sc62)\n{\n float2 ANGLE_sc77 = float2(ANGLE_sc61, ANGLE_sc62);\n return ANGLE_sc77;\n}\n\nfloat2 ANGLE_sc5d(float ANGLE_sc5e, float ANGLE_sc5f)\n{\n float2 ANGLE_sc78 = float2(ANGLE_sc5e, ANGLE_sc5f);\n return ANGLE_sc78;\n}\n\nfloat4 ANGLE_sc59(float ANGLE_sc5a, float ANGLE_sc5b, float2 ANGLE_sc5c)\n{\n float4 ANGLE_sc79 = float4(ANGLE_sc5a, ANGLE_sc5b, ANGLE_sc5c.x, ANGLE_sc5c.y);\n return ANGLE_sc79;\n}\n\nfloat2 ANGLE_sc56(float ANGLE_sc57, float ANGLE_sc58)\n{\n float2 ANGLE_sc7a = float2(ANGLE_sc57, ANGLE_sc58);\n return ANGLE_sc7a;\n}\n\nfloat2 ANGLE_sc53(float ANGLE_sc54, float ANGLE_sc55)\n{\n float2 ANGLE_sc7b = float2(ANGLE_sc54, ANGLE_sc55);\n return ANGLE_sc7b;\n}\n\nfloat2 ANGLE_sc50(float ANGLE_sc51, float ANGLE_sc52)\n{\n float2 ANGLE_sc7c = float2(ANGLE_sc51, ANGLE_sc52);\n return ANGLE_sc7c;\n}\n\nfloat2 _uhexCenter(float2 _uid)\n{\n float ANGLE_sc7d = (_uid.x * 1.73205078f);\n float ANGLE_sc7e = (ANGLE_sc7d / 2.0f);\n float ANGLE_sc7f = (_uid.x * 0.5f);\n float ANGLE_sc80 = (_uid.y - ANGLE_sc7f);\n float2 ANGLE_sc81 = ANGLE_sc50(ANGLE_sc7e, ANGLE_sc80);\n return ANGLE_sc81;\n}\n\nfloat4 _uhexVoronoi(float2 _up)\n{\n float ANGLE_sc82 = (_up.x * 2.0f);\n float ANGLE_sc83 = (ANGLE_sc82 / 1.73205078f);\n float ANGLE_sc84 = (_up.x * 0.5f);\n float ANGLE_sc85 = (_up.y + ANGLE_sc84);\n float2 _uq = ANGLE_sc53(ANGLE_sc83, ANGLE_sc85);\n float2 _ubase = floor(_uq);\n float _uf1 = 1000000000.0f;\n float _uf2 = 1000000000.0f;\n float2 _ubestId = float2(0.0f, 0.0f);\n {\n int _uj = -2;\n bool ANGLE_sc2a = (_uj <= 2);\n while (ANGLE_sc2a)\n {\n {\n {\n int _ui = -2;\n bool ANGLE_sc2b = (_ui <= 2);\n while (ANGLE_sc2b)\n {\n {\n float ANGLE_sc8a = float(_ui);\n float ANGLE_sc8b = float(_uj);\n float2 ANGLE_sc8c = ANGLE_sc56(ANGLE_sc8a, ANGLE_sc8b);\n float2 _uid = (_ubase + ANGLE_sc8c);\n float2 _uc = _uhexCenter(_uid);\n float2 ANGLE_sc8f = (_up - _uc);\n float _ud = length(ANGLE_sc8f);\n bool ANGLE_sc91 = (_ud < _uf1);\n if (ANGLE_sc91)\n {\n _uf2 = _uf1;\n _uf1 = _ud;\n _ubestId = _uid;\n }\n else\n {\n bool ANGLE_sc92 = (_ud < _uf2);\n if (ANGLE_sc92)\n {\n _uf2 = _ud;\n } else {}\n }\n }\n _ui++;\n ANGLE_sc2b = (_ui <= 2);\n }\n }\n }\n _uj++;\n ANGLE_sc2a = (_uj <= 2);\n }\n }\n float4 ANGLE_sc95 = ANGLE_sc59(_uf1, _uf2, _ubestId);\n return ANGLE_sc95;\n}\n\nfloat _uhash21(float2 _up)\n{\n float2 ANGLE_sc96 = (_up * float2(123.339996f, 456.209991f));\n _up = fract(ANGLE_sc96);\n float2 ANGLE_sc98 = (_up + 45.3199997f);\n float ANGLE_sc99 = dot(_up, ANGLE_sc98);\n _up += ANGLE_sc99;\n float ANGLE_sc9a = (_up.x * _up.y);\n float ANGLE_sc9b = fract(ANGLE_sc9a);\n return ANGLE_sc9b;\n}\n\nfloat _ufftSample( ANGLE_TextureEnvs & ANGLE_textureEnvs, float _ux)\n{\n _ux = clamp(_ux, 0.0f, 1.0f);\n float2 ANGLE_sc9d = ANGLE_sc5d(_ux, 0.25f);\n float4 ANGLE_sc9e = ANGLE_texture(ANGLE_textureEnvs._uiChannel0, ANGLE_sc9d);\n return ANGLE_sc9e.x;\n}\n\nfloat _uwaveSample( ANGLE_TextureEnvs & ANGLE_textureEnvs, float _ux)\n{\n _ux = clamp(_ux, 0.0f, 1.0f);\n float2 ANGLE_sca0 = ANGLE_sc60(_ux, 0.75f);\n float4 ANGLE_sca1 = ANGLE_texture(ANGLE_textureEnvs._uiChannel0, ANGLE_sca0);\n return ANGLE_sca1.x;\n}\n\nvoid _umainImage( ANGLE_UserUniforms & ANGLE_userUniforms, ANGLE_TextureEnvs & ANGLE_textureEnvs, float4 & _ufragColor, float2 _ufragCoord)\n{\n _ufragColor = float4(0.0f, 0.0f, 0.0f, 0.0f);\n float2 ANGLE_sca2 = (0.5f * iResolution.xy);\n float2 ANGLE_sca3 = (_ufragCoord - ANGLE_sca2);\n float2 _uuv = (ANGLE_sca3 / iResolution.y);\n float _uscale = 16.0f;\n _uuv *= _uscale;\n float2 _umouse = ANGLE_userUniforms._uiMouse.xy;\n bool ANGLE__1 = (_umouse.x <= 0.0f);\n if (ANGLE__1)\n {\n ANGLE__1 = (_umouse.y <= 0.0f);\n } else {}\n if (ANGLE__1)\n {\n _umouse = (0.5f * iResolution.xy);\n } else {}\n float2 ANGLE_sca9 = (0.5f * iResolution.xy);\n float2 ANGLE_scaa = (_umouse - ANGLE_sca9);\n float2 _upulseOrigin = (ANGLE_scaa / iResolution.y);\n _upulseOrigin *= _uscale;\n float2 _urel = (_uuv - _upulseOrigin);\n float _ur = length(_urel);\n float2 ANGLE_scae = (_urel + 9.99999975e-05f);\n float2 _udir = normalize(ANGLE_scae);\n float _ubassA = _ufftSample(ANGLE_textureEnvs, 0.00999999978f);\n float _ubassB = _ufftSample(ANGLE_textureEnvs, 0.0199999996f);\n float _ubassC = _ufftSample(ANGLE_textureEnvs, 0.0399999991f);\n float _ubassD = _ufftSample(ANGLE_textureEnvs, 0.0799999982f);\n float ANGLE_scb4 = (_ubassA * 0.400000006f);\n float ANGLE_scb5 = (_ubassB * 0.300000012f);\n float ANGLE_scb6 = (ANGLE_scb4 + ANGLE_scb5);\n float ANGLE_scb7 = (_ubassC * 0.200000003f);\n float ANGLE_scb8 = (ANGLE_scb6 + ANGLE_scb7);\n float ANGLE_scb9 = (_ubassD * 0.100000001f);\n float _ubass = (ANGLE_scb8 + ANGLE_scb9);\n float ANGLE_scbb = _ufftSample(ANGLE_textureEnvs, 0.119999997f);\n float ANGLE_scbc = (ANGLE_scbb * 0.600000024f);\n float ANGLE_scbd = _ufftSample(ANGLE_textureEnvs, 0.180000007f);\n float ANGLE_scbe = (ANGLE_scbd * 0.400000006f);\n float _ulowMid = (ANGLE_scbc + ANGLE_scbe);\n float ANGLE_scc0 = (iTime * 0.25f);\n float ANGLE_scc1 = fract(ANGLE_scc0);\n float _uwave = _uwaveSample(ANGLE_textureEnvs, ANGLE_scc1);\n float ANGLE_scc3 = (_uwave * 2.0f);\n _uwave = (ANGLE_scc3 - 1.0f);\n float ANGLE_scc5 = clamp(_ubass, 0.0f, 1.0f);\n _ubass = powr(ANGLE_scc5, 0.75f);\n float ANGLE_scc7 = (_ubass * 2.20000005f);\n float ANGLE_scc8 = (_ulowMid * 0.600000024f);\n float ANGLE_scc9 = (ANGLE_scc7 + ANGLE_scc8);\n float _uaudioDrive = clamp(ANGLE_scc9, 0.0f, 1.5f);\n float _uconeRadius = 2.4000001f;\n float ANGLE_sccb = (_ur / _uconeRadius);\n float ANGLE_sccc = powr(ANGLE_sccb, 2.0f);\n float ANGLE_sccd = (-ANGLE_sccc);\n float ANGLE_scce = (ANGLE_sccd * 2.20000005f);\n float _uconeCore = exp(ANGLE_scce);\n float ANGLE_scd0 = (_ur - _uconeRadius);\n float ANGLE_scd1 = (ANGLE_scd0 / 0.899999976f);\n float ANGLE_scd2 = powr(ANGLE_scd1, 2.0f);\n float ANGLE_scd3 = (-ANGLE_scd2);\n float ANGLE_scd4 = (ANGLE_scd3 * 2.0f);\n float _usurround = exp(ANGLE_scd4);\n float ANGLE_scd6 = (_ur * 7.5f);\n float ANGLE_scd7 = (iTime * 18.0f);\n float ANGLE_scd8 = (ANGLE_scd6 - ANGLE_scd7);\n float ANGLE_scd9 = sin(ANGLE_scd8);\n float ANGLE_scda = (ANGLE_scd9 * 0.649999976f);\n float ANGLE_scdb = (_ur * 4.0f);\n float ANGLE_scdc = (iTime * 10.0f);\n float ANGLE_scdd = (ANGLE_scdb - ANGLE_scdc);\n float ANGLE_scde = sin(ANGLE_scdd);\n float ANGLE_scdf = (ANGLE_scde * 0.349999994f);\n float _uripple = (ANGLE_scda + ANGLE_scdf);\n float ANGLE_sce1 = sign(_uripple);\n float ANGLE_sce2 = abs(_uripple);\n float ANGLE_sce3 = powr(ANGLE_sce2, 1.14999998f);\n _uripple = (ANGLE_sce1 * ANGLE_sce3);\n float ANGLE_sce5 = (_uconeCore * _uaudioDrive);\n float _uconePush = (ANGLE_sce5 * 0.219999999f);\n float ANGLE_sce7 = (_uripple * _uaudioDrive);\n float ANGLE_sce8 = (-_ur);\n float ANGLE_sce9 = (ANGLE_sce8 * 0.219999999f);\n float ANGLE_scea = exp(ANGLE_sce9);\n float ANGLE_sceb = (ANGLE_sce7 * ANGLE_scea);\n float _uripplePush = (ANGLE_sceb * 0.0900000036f);\n float ANGLE_sced = (_uwave * _uconeCore);\n float ANGLE_scee = (ANGLE_sced * 0.0149999997f);\n float ANGLE_scef = (-_ur);\n float ANGLE_scf0 = (ANGLE_scef * 0.119999997f);\n float ANGLE_scf1 = exp(ANGLE_scf0);\n float ANGLE_scf2 = (_uwave * ANGLE_scf1);\n float ANGLE_scf3 = (ANGLE_scf2 * 0.00600000005f);\n float _ufineVibe = (ANGLE_scee + ANGLE_scf3);\n float ANGLE_scf5 = (_uconePush + _uripplePush);\n float ANGLE_scf6 = (ANGLE_scf5 + _ufineVibe);\n float2 _udisplacement = (_udir * ANGLE_scf6);\n float ANGLE_scf8 = (-_udir.y);\n float2 _utangent = ANGLE_sc63(ANGLE_scf8, _udir.x);\n float2 ANGLE_scfa = (_utangent * _usurround);\n float2 ANGLE_scfb = (ANGLE_scfa * _uwave);\n float2 ANGLE_scfc = (ANGLE_scfb * _uaudioDrive);\n float2 ANGLE_scfd = (ANGLE_scfc * 0.00800000038f);\n _udisplacement += ANGLE_scfd;\n float2 _up = (_uuv + _udisplacement);\n float4 _uhv = _uhexVoronoi(_up);\n float _uf1 = _uhv.x;\n float _uf2 = _uhv.y;\n float2 _ucellId = _uhv.zw;\n float _uborderMetric = (_uf2 - _uf1);\n float _uwall = 0.0500000007f;\n float ANGLE_sd01 = (_uwall + 0.00800000038f);\n float ANGLE_sd02 = smoothstep(_uwall, ANGLE_sd01, _uborderMetric);\n float _uframeMask = (1.0f - ANGLE_sd02);\n float ANGLE_sd04 = (_uwall + 0.00999999978f);\n float ANGLE_sd05 = (_uwall + 0.0399999991f);\n float _uinnerMask = smoothstep(ANGLE_sd04, ANGLE_sd05, _uborderMetric);\n float ANGLE_sd07 = (_uwall + 0.00300000003f);\n float ANGLE_sd08 = (_uwall + 0.0120000001f);\n float ANGLE_sd09 = smoothstep(ANGLE_sd07, ANGLE_sd08, _uborderMetric);\n float ANGLE_sd0a = (_uwall + 0.0120000001f);\n float ANGLE_sd0b = (_uwall + 0.0299999993f);\n float ANGLE_sd0c = smoothstep(ANGLE_sd0a, ANGLE_sd0b, _uborderMetric);\n float _urimMask = (ANGLE_sd09 - ANGLE_sd0c);\n float3 _ubg = float3(0.0399999991f, 0.0450000018f, 0.0500000007f);\n float3 _umetalBase = float3(0.159999996f, 0.180000007f, 0.200000003f);\n float3 _umetalMid = float3(0.319999993f, 0.349999994f, 0.379999995f);\n float3 _umetalHi = float3(0.620000005f, 0.660000026f, 0.699999988f);\n float _urnd = _uhash21(_ucellId);\n float ANGLE_sd0f = (_up.x * 18.0f);\n float ANGLE_sd10 = (_up.y * 11.0f);\n float ANGLE_sd11 = (ANGLE_sd0f + ANGLE_sd10);\n float ANGLE_sd12 = (_urnd * 2.0f);\n float ANGLE_sd13 = (ANGLE_sd11 + ANGLE_sd12);\n float _ugrimeA = sin(ANGLE_sd13);\n float ANGLE_sd15 = (_up.x * 36.0f);\n float ANGLE_sd16 = (_up.y * 24.0f);\n float ANGLE_sd17 = (ANGLE_sd15 - ANGLE_sd16);\n float _ugrimeB = sin(ANGLE_sd17);\n float ANGLE_sd19 = (_ugrimeA + _ugrimeB);\n float ANGLE_sd1a = (ANGLE_sd19 * 0.25f);\n float _ugrime = (ANGLE_sd1a + 0.5f);\n float ANGLE_sd1c = (_uf1 * 20.0f);\n float ANGLE_sd1d = (iTime * 10.0f);\n float ANGLE_sd1e = (ANGLE_sd1c - ANGLE_sd1d);\n float ANGLE_sd1f = sin(ANGLE_sd1e);\n float ANGLE_sd20 = (0.5f * ANGLE_sd1f);\n float _upressureShade = (0.5f + ANGLE_sd20);\n float ANGLE_sd22 = (_uaudioDrive * 0.219999999f);\n float ANGLE_sd23 = (_uconeCore * _uaudioDrive);\n float ANGLE_sd24 = (ANGLE_sd23 * 0.180000007f);\n float ANGLE_sd25 = (ANGLE_sd22 + ANGLE_sd24);\n float _umetalLift = clamp(ANGLE_sd25, 0.0f, 0.5f);\n float3 _umetal = _umetalBase;\n float ANGLE_sd27 = (_urimMask * 0.899999976f);\n _umetal = mix(_umetal, _umetalMid, ANGLE_sd27);\n float ANGLE_sd29 = (_upressureShade * 0.140000001f);\n float ANGLE_sd2a = (ANGLE_sd29 + _umetalLift);\n _umetal = mix(_umetal, _umetalHi, ANGLE_sd2a);\n float ANGLE_sd2c = (_ugrime * 0.0299999993f);\n _umetal += ANGLE_sd2c;\n float ANGLE_sd2d = (_uwall + 0.00200000009f);\n float ANGLE_sd2e = (_uwall + 0.00999999978f);\n float _uwear = smoothstep(ANGLE_sd2d, ANGLE_sd2e, _uborderMetric);\n float ANGLE_sd30 = (_uwear * 0.449999988f);\n _umetal = mix(_umetal, _umetalHi, ANGLE_sd30);\n float ANGLE_sd32 = (_uaudioDrive * 0.100000001f);\n float ANGLE_sd33 = (0.200000003f + ANGLE_sd32);\n float3 ANGLE_sd34 = (float3(0.0299999993f, 0.0350000001f, 0.0399999991f) * ANGLE_sd33);\n float3 _ucavity = (_ubg + ANGLE_sd34);\n float3 _ucol = _ubg;\n _ucol = mix(_ucol, _ucavity, _uinnerMask);\n _ucol = mix(_ucol, _umetal, _uframeMask);\n float ANGLE_sd38 = (_uconeCore * _uaudioDrive);\n float _ucentreGlow = (ANGLE_sd38 * 0.0799999982f);\n float3 ANGLE_sd3a = (float3(0.0799999982f, 0.0900000036f, 0.100000001f) * _ucentreGlow);\n float3 ANGLE_sd3b = (ANGLE_sd3a * _uinnerMask);\n _ucol += ANGLE_sd3b;\n float2 _usuv = (_ufragCoord / iResolution.xy);\n float2 ANGLE_sd3d = (_usuv - 0.5f);\n float2 ANGLE_sd3e = (_usuv - 0.5f);\n float ANGLE_sd3f = dot(ANGLE_sd3d, ANGLE_sd3e);\n float ANGLE_sd40 = (ANGLE_sd3f * 0.800000012f);\n float _uvignette = (1.0f - ANGLE_sd40);\n _ucol *= _uvignette;\n float ANGLE_sd42 = (_ufragCoord.y * 0.349999994f);\n float ANGLE_sd43 = sin(ANGLE_sd42);\n float ANGLE_sd44 = (0.5f * ANGLE_sd43);\n float _uscan = (0.5f + ANGLE_sd44);\n float ANGLE_sd46 = (0.0149999997f * _uscan);\n float ANGLE_sd47 = (0.985000014f + ANGLE_sd46);\n _ucol *= ANGLE_sd47;\n _ufragColor = ANGLE_sc66(_ucol, 1.0f);\n}\n\n\nvoid mainImage(out vec4 fragColor, in vec2 fragCoord) { _umainImage(fragColor, fragCoord); }", "views": 23059, "likes": 526, "createdAt": "2026-04-01T12:17:45.743Z", "updatedAt": "2026-04-01T12:24:38.269Z", "sourceFormat": "angle-metal-auto-converted" }, { "id": "3697323d-bf83-412e-b5b5-772755a76102", "name": "地形", "author": "unknown", "code": "void ANGLE_loopForwardProgress() {}\nvoid ANGLE_loopForwardProgress()\n{\n volatile bool p = true;\n}\n\ntemplate \nstruct ANGLE_Out\n{\n T mTemp;\n T &mDest;\n ~ANGLE_Out() { mDest = mTemp; }\n ANGLE_Out( T &dest)\n : mTemp(dest), mDest(dest)\n {}\n operator T &() { return mTemp; }\n};\ntemplate \nANGLE_ALWAYS_INLINE ANGLE_Out ANGLE_out( T &dest)\n{\n return ANGLE_Out(dest);\n}\n\ntemplate \nstruct ANGLE_VectorElemRef\n{\n vec &mVec;\n T mRef;\n const int mIndex;\n ~ANGLE_VectorElemRef() { mVec[mIndex] = mRef; }\n ANGLE_VectorElemRef( vec &vec, int index)\n : mVec(vec), mRef(vec[index]), mIndex(index)\n {}\n operator T &() { return mRef; }\n};\ntemplate \nANGLE_ALWAYS_INLINE ANGLE_VectorElemRef ANGLE_elem_ref( vec &vec, int index)\n{\n return ANGLE_VectorElemRef(vec, clamp(index, 0, N - 1));\n}\n\ntemplate \nstruct ANGLE_SwizzleRef\n{\n vec &mVec;\n vec mRef;\n int mIndices[SN];\n ~ANGLE_SwizzleRef()\n {\n for (int i = 0; i < SN; ++i)\n {\n const int j = mIndices[i];\n mVec[j] = mRef[i];\n }\n }\n ANGLE_SwizzleRef( vec &vec, const int *indices)\n : mVec(vec)\n {\n for (int i = 0; i < SN; ++i)\n {\n const int j = indices[i];\n mIndices[i] = j;\n mRef[i] = mVec[j];\n }\n }\n operator vec &() { return mRef; }\n};\ntemplate \nANGLE_ALWAYS_INLINE ANGLE_VectorElemRef ANGLE_swizzle_ref( vec &vec, int i0)\n{\n return ANGLE_VectorElemRef(vec, i0);\n}\ntemplate \nANGLE_ALWAYS_INLINE ANGLE_SwizzleRef ANGLE_swizzle_ref( vec &vec, int i0, int i1)\n{\n const int is[] = { i0, i1 };\n return ANGLE_SwizzleRef(vec, is);\n}\ntemplate \nANGLE_ALWAYS_INLINE ANGLE_SwizzleRef ANGLE_swizzle_ref( vec &vec, int i0, int i1, int i2)\n{\n const int is[] = { i0, i1, i2 };\n return ANGLE_SwizzleRef(vec, is);\n}\ntemplate \nANGLE_ALWAYS_INLINE ANGLE_SwizzleRef ANGLE_swizzle_ref( vec &vec, int i0, int i1, int i2, int i3)\n{\n const int is[] = { i0, i1, i2, i3 };\n return ANGLE_SwizzleRef(vec, is);\n}\n\ntemplate \nANGLE_ALWAYS_INLINE T * ANGLE_addressof( T &ref)\n{\n return &ref;\n}\n\nstruct ANGLE_InvocationFragmentGlobals\n{\n float4 gl_FragCoord [[position]];\n};\n\nstruct ANGLEDepthRangeParams\n{\n float ANGLE_near;\n float ANGLE_far;\n float ANGLE_diff;\n};\n\nstruct ANGLEUniformBlock\n{\n uint2 ANGLE_acbBufferOffsets;\n float2 ANGLE_depthRange;\n uint ANGLE_renderArea;\n uint ANGLE_flipXY;\n uint ANGLE_dither;\n uint ANGLE_misc;\n int4 ANGLE_xfbBufferOffsets;\n int ANGLE_xfbVerticesPerInstance;\n uint ANGLE_coverageMask;\n uint2 ANGLE_unused;\n};\n\nstruct ANGLE_NonConstGlobals\n{\n float4 ANGLE_flippedFragCoord;\n float3 _uboxSize;\n};\n\nstruct ANGLE_UserUniforms\n{\n float3 _uiResolution;\n float _uiTime;\n float4 _uiMouse;\n array _uiChannelResolution;\n};\n\nstruct ANGLE_TextureEnvs\n{\n ANGLE_TextureEnv> _uiChannel0;\n ANGLE_TextureEnv> _uiChannel1;\n ANGLE_TextureEnv> _uiChannel2;\n};\n\nstruct ANGLE_FragmentOut\n{\n float4 _ushadertoy_out_color [[__unassigned_output__]];\n uint ANGLE_metal_SampleMask [[sample_mask, function_constant(ANGLESampleMaskWriteEnabled)]];\n};\n\nstruct ANGLE_sd02\n{\n float3 _usize;\n float _utime;\n int _uloaded;\n};\n\nstruct ANGLE_scff\n{\n float3 _usize;\n float _utime;\n int _uloaded;\n};\n\nstruct ANGLE_scfc\n{\n float3 _usize;\n float _utime;\n int _uloaded;\n};\n\nstruct ANGLE_scf9\n{\n float3 _usize;\n float _utime;\n int _uloaded;\n};\n\nvoid ANGLE_initGlobals( ANGLE_NonConstGlobals & ANGLE_nonConstGlobals);\nvoid _umainImage( ANGLE_UserUniforms & ANGLE_userUniforms, ANGLE_NonConstGlobals & ANGLE_nonConstGlobals, ANGLE_TextureEnvs & ANGLE_textureEnvs, float4 & _ufragColor, float2 _ufragCoord);\n\nfloat2 ANGLE_sd72(float ANGLE_sd73, float ANGLE_sd74)\n{\n float2 ANGLE_sd75 = float2(ANGLE_sd73, ANGLE_sd74);\n return ANGLE_sd75;\n}\n\nfloat2 ANGLE_sd6f(float ANGLE_sd70, float ANGLE_sd71)\n{\n float2 ANGLE_sd76 = float2(ANGLE_sd70, ANGLE_sd71);\n return ANGLE_sd76;\n}\n\nfloat4 ANGLE_sd6c(float3 ANGLE_sd6d, float ANGLE_sd6e)\n{\n float4 ANGLE_sd77 = float4(ANGLE_sd6d.x, ANGLE_sd6d.y, ANGLE_sd6d.z, ANGLE_sd6e);\n return ANGLE_sd77;\n}\n\nfloat4 ANGLE_sd69(float3 ANGLE_sd6a, float ANGLE_sd6b)\n{\n float4 ANGLE_sd78 = float4(ANGLE_sd6a.x, ANGLE_sd6a.y, ANGLE_sd6a.z, ANGLE_sd6b);\n return ANGLE_sd78;\n}\n\nfloat2 ANGLE_sd66(float ANGLE_sd67, float ANGLE_sd68)\n{\n float2 ANGLE_sd79 = float2(ANGLE_sd67, ANGLE_sd68);\n return ANGLE_sd79;\n}\n\nfloat3 ANGLE_sd62(float ANGLE_sd63, float ANGLE_sd64, float ANGLE_sd65)\n{\n float3 ANGLE_sd7a = float3(ANGLE_sd63, ANGLE_sd64, ANGLE_sd65);\n return ANGLE_sd7a;\n}\n\nfloat4 ANGLE_sd5f(float ANGLE_sd60, float3 ANGLE_sd61)\n{\n float4 ANGLE_sd7b = float4(ANGLE_sd60, ANGLE_sd61.x, ANGLE_sd61.y, ANGLE_sd61.z);\n return ANGLE_sd7b;\n}\n\nfloat3 ANGLE_sd5c(float2 ANGLE_sd5d, float ANGLE_sd5e)\n{\n float3 ANGLE_sd7c = float3(ANGLE_sd5d.x, ANGLE_sd5d.y, ANGLE_sd5e);\n return ANGLE_sd7c;\n}\n\nfloat3 ANGLE_sd59(float2 ANGLE_sd5a, float ANGLE_sd5b)\n{\n float3 ANGLE_sd7d = float3(ANGLE_sd5a.x, ANGLE_sd5a.y, ANGLE_sd5b);\n return ANGLE_sd7d;\n}\n\nfloat2 ANGLE_sd56(float ANGLE_sd57, float ANGLE_sd58)\n{\n float2 ANGLE_sd7e = float2(ANGLE_sd57, ANGLE_sd58);\n return ANGLE_sd7e;\n}\n\nfloat2 ANGLE_sd54(float ANGLE_sd55)\n{\n float2 ANGLE_sd7f = float2(ANGLE_sd55, ANGLE_sd55);\n return ANGLE_sd7f;\n}\n\nfloat2 ANGLE_sd51(float ANGLE_sd52, float ANGLE_sd53)\n{\n float2 ANGLE_sd80 = float2(ANGLE_sd52, ANGLE_sd53);\n return ANGLE_sd80;\n}\n\nfloat2 ANGLE_sd4f(float ANGLE_sd50)\n{\n float2 ANGLE_sd81 = float2(ANGLE_sd50, ANGLE_sd50);\n return ANGLE_sd81;\n}\n\nfloat2 ANGLE_sd4d(float ANGLE_sd4e)\n{\n float2 ANGLE_sd82 = float2(ANGLE_sd4e, ANGLE_sd4e);\n return ANGLE_sd82;\n}\n\nfloat2 ANGLE_sd4b(float ANGLE_sd4c)\n{\n float2 ANGLE_sd83 = float2(ANGLE_sd4c, ANGLE_sd4c);\n return ANGLE_sd83;\n}\n\nfloat2 ANGLE_sd48(float ANGLE_sd49, float ANGLE_sd4a)\n{\n float2 ANGLE_sd84 = float2(ANGLE_sd49, ANGLE_sd4a);\n return ANGLE_sd84;\n}\n\nfloat2 ANGLE_sd45(float ANGLE_sd46, float ANGLE_sd47)\n{\n float2 ANGLE_sd85 = float2(ANGLE_sd46, ANGLE_sd47);\n return ANGLE_sd85;\n}\n\nfloat2 ANGLE_sd43(float ANGLE_sd44)\n{\n float2 ANGLE_sd86 = float2(ANGLE_sd44, ANGLE_sd44);\n return ANGLE_sd86;\n}\n\nfloat2 ANGLE_sd41(float ANGLE_sd42)\n{\n float2 ANGLE_sd87 = float2(ANGLE_sd42, ANGLE_sd42);\n return ANGLE_sd87;\n}\n\nfloat2 ANGLE_sd3f(float ANGLE_sd40)\n{\n float2 ANGLE_sd88 = float2(ANGLE_sd40, ANGLE_sd40);\n return ANGLE_sd88;\n}\n\nfloat2 ANGLE_sd3d(float ANGLE_sd3e)\n{\n float2 ANGLE_sd89 = float2(ANGLE_sd3e, ANGLE_sd3e);\n return ANGLE_sd89;\n}\n\nfloat4 ANGLE_sd38(float ANGLE_sd39, float ANGLE_sd3a, float ANGLE_sd3b, float ANGLE_sd3c)\n{\n float4 ANGLE_sd8a = float4(ANGLE_sd39, ANGLE_sd3a, ANGLE_sd3b, ANGLE_sd3c);\n return ANGLE_sd8a;\n}\n\nfloat3 ANGLE_sd34(int ANGLE_sd35, int ANGLE_sd36, float ANGLE_sd37)\n{\n float ANGLE_sd8b = float(ANGLE_sd35);\n float ANGLE_sd8c = float(ANGLE_sd36);\n float3 ANGLE_sd8d = float3(ANGLE_sd8b, ANGLE_sd8c, ANGLE_sd37);\n return ANGLE_sd8d;\n}\n\nfloat2 ANGLE_sd31(float ANGLE_sd32, float ANGLE_sd33)\n{\n float2 ANGLE_sd8e = float2(ANGLE_sd32, ANGLE_sd33);\n return ANGLE_sd8e;\n}\n\nfloat2 ANGLE_sd2e(float ANGLE_sd2f, float ANGLE_sd30)\n{\n float2 ANGLE_sd8f = float2(ANGLE_sd2f, ANGLE_sd30);\n return ANGLE_sd8f;\n}\n\nfloat3x3 ANGLE_sd24(float ANGLE_sd25, float ANGLE_sd26, float ANGLE_sd27, float ANGLE_sd28, float ANGLE_sd29, float ANGLE_sd2a, float ANGLE_sd2b, float ANGLE_sd2c, float ANGLE_sd2d)\n{\n float3x3 ANGLE_sd90 = float3x3(ANGLE_sd25, ANGLE_sd26, ANGLE_sd27, ANGLE_sd28, ANGLE_sd29, ANGLE_sd2a, ANGLE_sd2b, ANGLE_sd2c, ANGLE_sd2d);\n return ANGLE_sd90;\n}\n\nfloat3 ANGLE_sd21(float2 ANGLE_sd22, float ANGLE_sd23)\n{\n float3 ANGLE_sd91 = float3(ANGLE_sd22.x, ANGLE_sd22.y, ANGLE_sd23);\n return ANGLE_sd91;\n}\n\nfloat2 ANGLE_sd1e(float ANGLE_sd1f, float ANGLE_sd20)\n{\n float2 ANGLE_sd92 = float2(ANGLE_sd1f, ANGLE_sd20);\n return ANGLE_sd92;\n}\n\nfloat2 _uboxIntersection(float3 _uro, float3 _urd, float3 _uboxSize, float3 & _uoutNormal)\n{\n _uoutNormal = float3(0.0f, 0.0f, 0.0f);\n float3 _um = (1.0f / _urd);\n float3 _un = (_um * _uro);\n float3 ANGLE_sd95 = abs(_um);\n float3 _uk = (ANGLE_sd95 * _uboxSize);\n float3 ANGLE_sd97 = (-_un);\n float3 _ut1 = (ANGLE_sd97 - _uk);\n float3 ANGLE_sd99 = (-_un);\n float3 _ut2 = (ANGLE_sd99 + _uk);\n float ANGLE_sd9b = max(_ut1.x, _ut1.y);\n float _utN = max(ANGLE_sd9b, _ut1.z);\n float ANGLE_sd9d = min(_ut2.x, _ut2.y);\n float _utF = min(ANGLE_sd9d, _ut2.z);\n bool ANGLE__1 = (_utN > _utF);\n if (!ANGLE__1)\n {\n ANGLE__1 = (_utF < 0.0f);\n } else {}\n if (ANGLE__1)\n {\n return float2(-1.0f, -1.0f);\n } else {}\n float3 ANGLE_sda2 = sign(_urd);\n float3 ANGLE_sda3 = (-ANGLE_sda2);\n float3 ANGLE_sda4 = step(_ut1.yzx, _ut1.xyz);\n float3 ANGLE_sda5 = (ANGLE_sda3 * ANGLE_sda4);\n float3 ANGLE_sda6 = step(_ut1.zxy, _ut1.xyz);\n _uoutNormal = (ANGLE_sda5 * ANGLE_sda6);\n float2 ANGLE_sda8 = ANGLE_sd1e(_utN, _utF);\n return ANGLE_sda8;\n}\n\nfloat3 _uCameraRay(float _ufov, float2 _usize, float2 _upos)\n{\n float2 ANGLE_sda9 = (_usize * 0.5f);\n float2 _uxy = (_upos - ANGLE_sda9);\n float ANGLE_sdab = (_ufov * 0.5f);\n float ANGLE_sdac = (90.0f - ANGLE_sdab);\n float ANGLE_sdad = (ANGLE_sdac * 0.0174532924f);\n float _ucot_half_fov = tan(ANGLE_sdad);\n float ANGLE_sdaf = (_usize.y * 0.5f);\n float _uz = (ANGLE_sdaf * _ucot_half_fov);\n float ANGLE_sdb1 = (-_uz);\n float3 ANGLE_sdb2 = ANGLE_sd21(_uxy, ANGLE_sdb1);\n float3 ANGLE_sdb3 = normalize(ANGLE_sdb2);\n return ANGLE_sdb3;\n}\n\nfloat3x3 _uCameraRotation(float2 _uangle)\n{\n float2 _uc = cos(_uangle);\n float2 _us = sin(_uangle);\n float ANGLE_sdb6 = (-_us.y);\n float ANGLE_sdb7 = (_us.y * _us.x);\n float ANGLE_sdb8 = (_uc.y * _us.x);\n float ANGLE_sdb9 = (_us.y * _uc.x);\n float ANGLE_sdba = (-_us.x);\n float ANGLE_sdbb = (_uc.y * _uc.x);\n float3x3 ANGLE_sdbc = ANGLE_sd24(_uc.y, 0.0f, ANGLE_sdb6, ANGLE_sdb7, _uc.x, ANGLE_sdb8, ANGLE_sdb9, ANGLE_sdba, ANGLE_sdbb);\n return ANGLE_sdbc;\n}\n\nvoid _uGetRay( float3 & _uro, float3 & _urd, float _uiTime, float4 _uiMouse, float3 _uiResolution, float2 _ufragCoord, float _udebugWidth)\n{\n _uro = float3(0.0f, 0.0f, 0.0f);\n _urd = float3(0.0f, 0.0f, 0.0f);\n float ANGLE_sdbd = (_uiTime * 2.0f);\n float _uiRevolution = (ANGLE_sdbd * 3.14159274f);\n float ANGLE_sdbf = ANGLE_mod(_uiTime, 240.0f);\n float ANGLE_sdc1;\n if (ANGLE_sdbf >= 120.0f)\n {\n ANGLE_sdc1 = 0.0f;\n }\n else\n {\n ANGLE_sdc1 = 0.0166666675f;\n }\n float ANGLE_sdc2 = (_uiRevolution * ANGLE_sdc1);\n float ANGLE_sdc3 = (_uiRevolution / 6.0f);\n float ANGLE_sdc4 = sin(ANGLE_sdc3);\n float ANGLE_sdc5 = (ANGLE_sdc4 * 0.0f);\n float ANGLE_sdc6 = (ANGLE_sdc5 * 6.0f);\n float ANGLE_sdc7 = (ANGLE_sdc2 + ANGLE_sdc6);\n float ANGLE_sdc8 = ANGLE_mod(_uiTime, 240.0f);\n float ANGLE_sdca;\n if (ANGLE_sdc8 >= 120.0f)\n {\n ANGLE_sdca = 0.25f;\n }\n else\n {\n ANGLE_sdca = -0.449999988f;\n }\n float ANGLE_sdcb = (ANGLE_sdca * 2.0f);\n float ANGLE_sdcc = (ANGLE_sdcb * 3.14159274f);\n float ANGLE_sdcd = (ANGLE_sdc7 + ANGLE_sdcc);\n float ANGLE_sdce = ANGLE_mod(_uiTime, 240.0f);\n float ANGLE_sdd0;\n if (ANGLE_sdce >= 120.0f)\n {\n ANGLE_sdd0 = -0.349999994f;\n }\n else\n {\n ANGLE_sdd0 = -0.430000007f;\n }\n float2 _ucameraAngle = ANGLE_sd2e(ANGLE_sdcd, ANGLE_sdd0);\n float ANGLE_sdd2 = ANGLE_mod(_uiTime, 240.0f);\n float ANGLE_sdd4;\n if (ANGLE_sdd2 >= 120.0f)\n {\n ANGLE_sdd4 = 1.5f;\n }\n else\n {\n ANGLE_sdd4 = 3.25f;\n }\n float _ucameraDistance = ANGLE_sdd4;\n bool ANGLE_sdd5 = (_uiMouse.z > 0.5f);\n if (ANGLE_sdd5)\n {\n float2 _umouse = (_uiMouse.xy / _uiResolution.xy);\n float ANGLE_sdd7 = mix(_umouse.y, 0.5f, -1.0f);\n _umouse.y = clamp(ANGLE_sdd7, 0.0f, 1.0f);\n float2 ANGLE_sdd9 = (_umouse - float2(0.5f, 1.0f));\n _ucameraAngle = (ANGLE_sdd9 * float2(-6.28318548f, 1.57079637f));\n } else {}\n float3x3 _urot = _uCameraRotation(_ucameraAngle.yx);\n float ANGLE_sddc = ANGLE_mod(_uiTime, 240.0f);\n float ANGLE_sdde;\n if (ANGLE_sddc >= 120.0f)\n {\n ANGLE_sdde = 20.0f;\n }\n else\n {\n ANGLE_sdde = 11.0f;\n }\n float ANGLE_sddf = (_udebugWidth / 2.0f);\n float2 ANGLE_sde0 = ANGLE_sd31(ANGLE_sddf, 0.0f);\n float2 ANGLE_sde1 = (_ufragCoord.xy - ANGLE_sde0);\n _urd = _uCameraRay(ANGLE_sdde, _uiResolution.xy, ANGLE_sde1);\n _urd = (_urot * _urd);\n float3 ANGLE_sde4 = ANGLE_sd34(0, 0, _ucameraDistance);\n float3 ANGLE_sde5 = (_urot * ANGLE_sde4);\n _uro = (float3(0.0f, 0.400000006f, 0.0f) + ANGLE_sde5);\n}\n\nfloat3 _uSkyColor(float3 _urd, float3 _usun)\n{\n float _ucosth = dot(_urd, _usun);\n float ANGLE_sde8 = abs(_ucosth);\n float ANGLE_sde9 = (ANGLE_sde8 * 0.800000012f);\n float ANGLE_sdea = (1.0f - ANGLE_sde9);\n float3 ANGLE_sdeb = (float3(0.0942477882f, 0.157079637f, 0.219911486f) * ANGLE_sdea);\n return ANGLE_sdeb;\n}\n\nfloat3 _uTonemap_ACES(float3 _ux)\n{\n float3 ANGLE_sdec = (2.50999999f * _ux);\n float3 ANGLE_sded = (ANGLE_sdec + 0.0299999993f);\n float3 ANGLE_sdee = (_ux * ANGLE_sded);\n float3 ANGLE_sdef = (2.43000007f * _ux);\n float3 ANGLE_sdf0 = (ANGLE_sdef + 0.589999974f);\n float3 ANGLE_sdf1 = (_ux * ANGLE_sdf0);\n float3 ANGLE_sdf2 = (ANGLE_sdf1 + 0.140000001f);\n float3 ANGLE_sdf3 = (ANGLE_sdee / ANGLE_sdf2);\n return ANGLE_sdf3;\n}\n\nfloat _upow5(float _ux)\n{\n float _ux2 = (_ux * _ux);\n float ANGLE_sdf5 = (_ux2 * _ux2);\n float ANGLE_sdf6 = (ANGLE_sdf5 * _ux);\n return ANGLE_sdf6;\n}\n\nfloat _uD_GGX(float _ulinearRoughness, float _uNoH, float3 _uh)\n{\n float ANGLE_sdf7 = (_uNoH * _uNoH);\n float _uoneMinusNoHSquared = (1.0f - ANGLE_sdf7);\n float _ua = (_uNoH * _ulinearRoughness);\n float ANGLE_sdfa = (_ua * _ua);\n float ANGLE_sdfb = (_uoneMinusNoHSquared + ANGLE_sdfa);\n float _uk = (_ulinearRoughness / ANGLE_sdfb);\n float ANGLE_sdfd = (_uk * _uk);\n float _ud = (ANGLE_sdfd * 0.318309873f);\n return _ud;\n}\n\nfloat _uV_SmithGGXCorrelated(float _ulinearRoughness, float _uNoV, float _uNoL)\n{\n float _ua2 = (_ulinearRoughness * _ulinearRoughness);\n float ANGLE_se00 = (_ua2 * _uNoV);\n float ANGLE_se01 = (_uNoV - ANGLE_se00);\n float ANGLE_se02 = (ANGLE_se01 * _uNoV);\n float ANGLE_se03 = (ANGLE_se02 + _ua2);\n float ANGLE_se04 = sqrt(ANGLE_se03);\n float _uGGXV = (_uNoL * ANGLE_se04);\n float ANGLE_se06 = (_ua2 * _uNoL);\n float ANGLE_se07 = (_uNoL - ANGLE_se06);\n float ANGLE_se08 = (ANGLE_se07 * _uNoL);\n float ANGLE_se09 = (ANGLE_se08 + _ua2);\n float ANGLE_se0a = sqrt(ANGLE_se09);\n float _uGGXL = (_uNoV * ANGLE_se0a);\n float ANGLE_se0c = (_uGGXV + _uGGXL);\n float ANGLE_se0d = (0.5f / ANGLE_se0c);\n return ANGLE_se0d;\n}\n\nfloat3 _uF_Schlick(float3 _uf0, float _uVoH)\n{\n float3 ANGLE_se0e = (float3(1.0f, 1.0f, 1.0f) - _uf0);\n float ANGLE_se0f = (1.0f - _uVoH);\n float ANGLE_se10 = _upow5(ANGLE_se0f);\n float3 ANGLE_se11 = (ANGLE_se0e * ANGLE_se10);\n float3 ANGLE_se12 = (_uf0 + ANGLE_se11);\n return ANGLE_se12;\n}\n\nfloat _uF_Schlick(float _uf0, float _uf90, float _uVoH)\n{\n float ANGLE_se13 = (_uf90 - _uf0);\n float ANGLE_se14 = (1.0f - _uVoH);\n float ANGLE_se15 = _upow5(ANGLE_se14);\n float ANGLE_se16 = (ANGLE_se13 * ANGLE_se15);\n float ANGLE_se17 = (_uf0 + ANGLE_se16);\n return ANGLE_se17;\n}\n\nfloat _uFd_Burley(float _ulinearRoughness, float _uNoV, float _uNoL, float _uLoH)\n{\n float ANGLE_se18 = (2.0f * _ulinearRoughness);\n float ANGLE_se19 = (ANGLE_se18 * _uLoH);\n float ANGLE_se1a = (ANGLE_se19 * _uLoH);\n float _uf90 = (0.5f + ANGLE_se1a);\n float _ulightScatter = _uF_Schlick(1.0f, _uf90, _uNoL);\n float _uviewScatter = _uF_Schlick(1.0f, _uf90, _uNoV);\n float ANGLE_se1e = (_ulightScatter * _uviewScatter);\n float ANGLE_se1f = (ANGLE_se1e * 0.318309873f);\n return ANGLE_se1f;\n}\n\nfloat _uFd_Lambert()\n{\n return 0.318309873f;\n}\n\nfloat3 _uShade(float3 _udiffuse, float3 _uf0, float _usmoothness, float3 _un, float3 _uv, float3 _ul, float3 _ulc)\n{\n float3 ANGLE_se20 = (_uv + _ul);\n float3 _uh = normalize(ANGLE_se20);\n float ANGLE_se22 = dot(_un, _uv);\n float ANGLE_se23 = abs(ANGLE_se22);\n float _uNoV = (ANGLE_se23 + 9.99999975e-06f);\n float ANGLE_se25 = dot(_un, _ul);\n float _uNoL = clamp(ANGLE_se25, 0.0f, 1.0f);\n float ANGLE_se27 = dot(_un, _uh);\n float _uNoH = clamp(ANGLE_se27, 0.0f, 1.0f);\n float ANGLE_se29 = dot(_ul, _uh);\n float _uLoH = clamp(ANGLE_se29, 0.0f, 1.0f);\n float _uroughness = (1.0f - _usmoothness);\n float _ulinearRoughness = (_uroughness * _uroughness);\n float _uD = _uD_GGX(_ulinearRoughness, _uNoH, _uh);\n float _uV = _uV_SmithGGXCorrelated(_ulinearRoughness, _uNoV, _uNoL);\n float3 _uF = _uF_Schlick(_uf0, _uLoH);\n float ANGLE_se30 = (_uD * _uV);\n float3 _uFr = (ANGLE_se30 * _uF);\n float ANGLE_se32 = _uFd_Burley(_ulinearRoughness, _uNoV, _uNoL, _uLoH);\n float3 _uFd = (_udiffuse * ANGLE_se32);\n float3 ANGLE_se34 = (_uFd + _uFr);\n float3 ANGLE_se35 = (ANGLE_se34 * _ulc);\n float3 ANGLE_se36 = (ANGLE_se35 * _uNoL);\n return ANGLE_se36;\n}\n\nfloat _uPhaseRayleigh(float _ucosth)\n{\n float ANGLE_se37 = (_ucosth * _ucosth);\n float ANGLE_se38 = (1.0f + ANGLE_se37);\n float ANGLE_se39 = (3.0f * ANGLE_se38);\n float ANGLE_se3a = (ANGLE_se39 / 50.2654839f);\n return ANGLE_se3a;\n}\n\nfloat _uPhaseMie(float _ucosth, float _ug)\n{\n _ug = min(_ug, 0.93809998f);\n float ANGLE_se3c = (1.54999995f * _ug);\n float ANGLE_se3d = (0.550000012f * _ug);\n float ANGLE_se3e = (ANGLE_se3d * _ug);\n float ANGLE_se3f = (ANGLE_se3e * _ug);\n float _uk = (ANGLE_se3c - ANGLE_se3f);\n float _ukcosth = (_uk * _ucosth);\n float ANGLE_se42 = (_uk * _uk);\n float ANGLE_se43 = (1.0f - ANGLE_se42);\n float ANGLE_se44 = (1.0f - _ukcosth);\n float ANGLE_se45 = (12.566371f * ANGLE_se44);\n float ANGLE_se46 = (1.0f - _ukcosth);\n float ANGLE_se47 = (ANGLE_se45 * ANGLE_se46);\n float ANGLE_se48 = (ANGLE_se43 / ANGLE_se47);\n return ANGLE_se48;\n}\n\nfloat4 _uunpack4(float _ucol)\n{\n int _uval = as_type(_ucol);\n int ANGLE_se4a = (_uval >> 24);\n int ANGLE_se4b = (ANGLE_se4a & 255);\n float ANGLE_se4c = float(ANGLE_se4b);\n float ANGLE_se4d = (ANGLE_se4c / 255.0f);\n int ANGLE_se4e = (_uval >> 16);\n int ANGLE_se4f = (ANGLE_se4e & 255);\n float ANGLE_se50 = float(ANGLE_se4f);\n float ANGLE_se51 = (ANGLE_se50 / 255.0f);\n int ANGLE_se52 = (_uval >> 8);\n int ANGLE_se53 = (ANGLE_se52 & 255);\n float ANGLE_se54 = float(ANGLE_se53);\n float ANGLE_se55 = (ANGLE_se54 / 255.0f);\n int ANGLE_se56 = (_uval & 255);\n float ANGLE_se57 = float(ANGLE_se56);\n float ANGLE_se58 = (ANGLE_se57 / 255.0f);\n float4 ANGLE_se59 = ANGLE_sd38(ANGLE_se4d, ANGLE_se51, ANGLE_se55, ANGLE_se58);\n return ANGLE_se59;\n}\n\nfloat3 _uGetChannel0( ANGLE_UserUniforms & ANGLE_userUniforms, ANGLE_TextureEnvs & ANGLE_textureEnvs, float2 _uuv)\n{\n float ANGLE_se5a = min(iResolution.x, iResolution.y);\n float ANGLE_se5b = min(ANGLE_se5a, 1080.0f);\n float2 ANGLE_se5c = ANGLE_sd3d(ANGLE_se5b);\n float2 ANGLE_se5d = (ANGLE_se5c / iResolution.xy);\n _uuv *= ANGLE_se5d;\n float4 ANGLE_se5e = ANGLE_texture(ANGLE_textureEnvs._uiChannel0, _uuv);\n return ANGLE_se5e.xyz;\n}\n\nfloat4 _uGetChannel1( ANGLE_UserUniforms & ANGLE_userUniforms, ANGLE_TextureEnvs & ANGLE_textureEnvs, float2 _uuv)\n{\n float ANGLE_se5f = min(iResolution.x, iResolution.y);\n float ANGLE_se60 = min(ANGLE_se5f, 1080.0f);\n float2 ANGLE_se61 = ANGLE_sd3f(ANGLE_se60);\n float2 ANGLE_se62 = (ANGLE_se61 / iResolution.xy);\n _uuv *= ANGLE_se62;\n float4 ANGLE_se63 = ANGLE_texture(ANGLE_textureEnvs._uiChannel1, _uuv);\n return ANGLE_se63;\n}\n\nfloat3 _uGetChannel0Data( ANGLE_UserUniforms & ANGLE_userUniforms, ANGLE_TextureEnvs & ANGLE_textureEnvs, float2 _uuv, float4 & _udata)\n{\n _udata = float4(0.0f, 0.0f, 0.0f, 0.0f);\n float ANGLE_se64 = min(iResolution.x, iResolution.y);\n float ANGLE_se65 = min(ANGLE_se64, 1080.0f);\n float2 ANGLE_se66 = ANGLE_sd41(ANGLE_se65);\n float2 ANGLE_se67 = (_uuv * ANGLE_se66);\n float2 _up = (ANGLE_se67 - 0.5f);\n int2 _ui = int2(_up);\n float2 _ub = fract(_up);\n float2 _ua = (1.0f - _ub);\n float4 _uAA = ANGLE_texelFetch(ANGLE_textureEnvs._uiChannel0, _ui, 0);\n int2 ANGLE_se6d = (_ui + int2(0, 1));\n float4 _uAB = ANGLE_texelFetch(ANGLE_textureEnvs._uiChannel0, ANGLE_se6d, 0);\n int2 ANGLE_se6f = (_ui + int2(1, 0));\n float4 _uBA = ANGLE_texelFetch(ANGLE_textureEnvs._uiChannel0, ANGLE_se6f, 0);\n int2 ANGLE_se71 = (_ui + int2(1, 1));\n float4 _uBB = ANGLE_texelFetch(ANGLE_textureEnvs._uiChannel0, ANGLE_se71, 0);\n float4 ANGLE_se73 = (_uAA * _ua.y);\n float4 ANGLE_se74 = (_uAB * _ub.y);\n float4 ANGLE_se75 = (ANGLE_se73 + ANGLE_se74);\n float4 ANGLE_se76 = (ANGLE_se75 * _ua.x);\n float4 ANGLE_se77 = (_uBA * _ua.y);\n float4 ANGLE_se78 = (_uBB * _ub.y);\n float4 ANGLE_se79 = (ANGLE_se77 + ANGLE_se78);\n float4 ANGLE_se7a = (ANGLE_se79 * _ub.x);\n float4 _uret = (ANGLE_se76 + ANGLE_se7a);\n float4 _uAAdata = _uunpack4(_uAA.w);\n float4 _uABdata = _uunpack4(_uAB.w);\n float4 _uBAdata = _uunpack4(_uBA.w);\n float4 _uBBdata = _uunpack4(_uBB.w);\n float4 ANGLE_se80 = (_uAAdata * _ua.y);\n float4 ANGLE_se81 = (_uABdata * _ub.y);\n float4 ANGLE_se82 = (ANGLE_se80 + ANGLE_se81);\n float4 ANGLE_se83 = (ANGLE_se82 * _ua.x);\n float4 ANGLE_se84 = (_uBAdata * _ua.y);\n float4 ANGLE_se85 = (_uBBdata * _ub.y);\n float4 ANGLE_se86 = (ANGLE_se84 + ANGLE_se85);\n float4 ANGLE_se87 = (ANGLE_se86 * _ub.x);\n _udata = (ANGLE_se83 + ANGLE_se87);\n return _uret.xyz;\n}\n\nfloat2 _uGetUV( ANGLE_UserUniforms & ANGLE_userUniforms, float3 _up)\n{\n float ANGLE_se89 = min(iResolution.x, iResolution.y);\n float ANGLE_se8a = min(ANGLE_se89, 1080.0f);\n float2 ANGLE_se8b = ANGLE_sd43(ANGLE_se8a);\n float2 _upixel = (float2(1.0f, 1.0f) / ANGLE_se8b);\n float2 ANGLE_se8d = (_upixel * 2.0f);\n float2 ANGLE_se8e = (1.0f - ANGLE_se8d);\n float2 ANGLE_se8f = (_up.xz * ANGLE_se8e);\n float2 _uuv = (ANGLE_se8f + float2(0.5f, 0.5f));\n float2 ANGLE_se91 = (float2(1.0f, 1.0f) - _upixel);\n _uuv = clamp(_uuv, _upixel, ANGLE_se91);\n float ANGLE_se93 = (iTime / 60.0f);\n float ANGLE_se94 = (ANGLE_se93 * 2.0f);\n float ANGLE_se95 = (ANGLE_se94 * 3.14159274f);\n float ANGLE_se96 = cos(ANGLE_se95);\n float ANGLE_se97 = (ANGLE_se96 * 2.0f);\n float ANGLE_se98 = (iTime / 60.0f);\n float ANGLE_se99 = (ANGLE_se98 * 2.0f);\n float ANGLE_se9a = (ANGLE_se99 * 3.14159274f);\n float ANGLE_se9b = sin(ANGLE_se9a);\n float ANGLE_se9c = (-ANGLE_se9b);\n float ANGLE_se9d = (ANGLE_se9c * 0.100000001f);\n float2 ANGLE_se9e = ANGLE_sd45(ANGLE_se97, ANGLE_se9d);\n float ANGLE_se9f = (iTime / 60.0f);\n float ANGLE_sea0 = (ANGLE_se9f * 2.0f);\n float ANGLE_sea1 = (ANGLE_sea0 * 3.14159274f);\n float ANGLE_sea2 = cos(ANGLE_sea1);\n float ANGLE_sea3 = (ANGLE_sea2 * 2.0f);\n float ANGLE_sea4 = (iTime / 60.0f);\n float ANGLE_sea5 = (ANGLE_sea4 * 2.0f);\n float ANGLE_sea6 = (ANGLE_sea5 * 3.14159274f);\n float ANGLE_sea7 = sin(ANGLE_sea6);\n float ANGLE_sea8 = (-ANGLE_sea7);\n float ANGLE_sea9 = (ANGLE_sea8 * 0.100000001f);\n float2 ANGLE_seaa = ANGLE_sd48(ANGLE_sea3, ANGLE_sea9);\n float ANGLE_seab = min(iResolution.x, iResolution.y);\n float ANGLE_seac = min(ANGLE_seab, 1080.0f);\n float2 ANGLE_sead = ANGLE_sd4b(ANGLE_seac);\n float2 ANGLE_seae = (ANGLE_seaa * ANGLE_sead);\n float2 ANGLE_seaf = round(ANGLE_seae);\n float ANGLE_seb0 = min(iResolution.x, iResolution.y);\n float ANGLE_seb1 = min(ANGLE_seb0, 1080.0f);\n float2 ANGLE_seb2 = ANGLE_sd4d(ANGLE_seb1);\n float2 ANGLE_seb3 = (ANGLE_seaf / ANGLE_seb2);\n float2 ANGLE_seb4 = (ANGLE_se9e - ANGLE_seb3);\n _uuv += ANGLE_seb4;\n return _uuv;\n}\n\nfloat _umapHeight( ANGLE_UserUniforms & ANGLE_userUniforms, ANGLE_TextureEnvs & ANGLE_textureEnvs, float2 _uuv)\n{\n float3 ANGLE_seb5 = _uGetChannel0(ANGLE_userUniforms, ANGLE_textureEnvs, _uuv);\n return ANGLE_seb5.x;\n}\n\nfloat4 _umap( ANGLE_UserUniforms & ANGLE_userUniforms, ANGLE_TextureEnvs & ANGLE_textureEnvs, float2 _uuv, float & _uerosion, float & _uridgemap, float & _utrees, float & _udebug)\n{\n _uerosion = 0.0f;\n _uridgemap = 0.0f;\n _utrees = 0.0f;\n _udebug = 0.0f;\n float4 _udata = float4(0.0f, 0.0f, 0.0f, 0.0f);\n float3 _utex = _uGetChannel0Data(ANGLE_userUniforms, ANGLE_textureEnvs, _uuv, _udata);\n float _uheight = _utex.x;\n float ANGLE_seb7 = min(iResolution.x, iResolution.y);\n float ANGLE_seb8 = min(ANGLE_seb7, 1080.0f);\n float2 ANGLE_seb9 = ANGLE_sd4f(ANGLE_seb8);\n float ANGLE_seba = (1.0f / ANGLE_seb9.x);\n float2 ANGLE_sebb = ANGLE_sd51(ANGLE_seba, 0.0f);\n float2 _uuv1 = (_uuv + ANGLE_sebb);\n float ANGLE_sebd = min(iResolution.x, iResolution.y);\n float ANGLE_sebe = min(ANGLE_sebd, 1080.0f);\n float2 ANGLE_sebf = ANGLE_sd54(ANGLE_sebe);\n float ANGLE_sec0 = (1.0f / ANGLE_sebf.y);\n float2 ANGLE_sec1 = ANGLE_sd56(0.0f, ANGLE_sec0);\n float2 _uuv2 = (_uuv + ANGLE_sec1);\n float3 ANGLE_sec3 = _uGetChannel0(ANGLE_userUniforms, ANGLE_textureEnvs, _uuv1);\n float _uh1 = ANGLE_sec3.x;\n float3 ANGLE_sec4 = _uGetChannel0(ANGLE_userUniforms, ANGLE_textureEnvs, _uuv2);\n float _uh2 = ANGLE_sec4.x;\n float2 ANGLE_sec5 = (_uuv1 - _uuv);\n float ANGLE_sec6 = (_uh1 - _uheight);\n float3 _uv1 = ANGLE_sd59(ANGLE_sec5, ANGLE_sec6);\n float2 ANGLE_sec8 = (_uuv2 - _uuv);\n float ANGLE_sec9 = (_uh2 - _uheight);\n float3 _uv2 = ANGLE_sd5c(ANGLE_sec8, ANGLE_sec9);\n float3 ANGLE_secb = cross(_uv1, _uv2);\n float3 ANGLE_secc = normalize(ANGLE_secb);\n float3 _unormal = ANGLE_secc.xzy;\n float ANGLE_secd = (_udata.x * 2.0f);\n _uerosion = (ANGLE_secd - 1.0f);\n _uridgemap = _udata.y;\n _utrees = _udata.z;\n _udebug = _udata.w;\n float4 ANGLE_secf = ANGLE_sd5f(_uheight, _unormal);\n return ANGLE_secf;\n}\n\nfloat _umarch( ANGLE_UserUniforms & ANGLE_userUniforms, ANGLE_NonConstGlobals & ANGLE_nonConstGlobals, ANGLE_TextureEnvs & ANGLE_textureEnvs, float3 _uro, float3 _urd, float3 & _unormal, int & _umaterial, float & _us_t)\n{\n _unormal = float3(0.0f, 0.0f, 0.0f);\n _umaterial = 0;\n _us_t = 0.0f;\n _us_t = 9999.0f;\n float3 _uboxNormal = float3(0.0f, 0.0f, 0.0f);\n float2 _ubox = _uboxIntersection(_uro, _urd, ANGLE_nonConstGlobals._uboxSize, _uboxNormal);\n float ANGLE_sed1 = max(0.0f, _ubox.x);\n float _utStart = (ANGLE_sed1 + 0.00999999978f);\n float _utEnd = (_ubox.y - 0.00999999978f);\n _umaterial = 0;\n float _ustepSize = 0.0f;\n float _ustepScale = 0.5f;\n int _usamples = 96;\n float _ut = _utStart;\n float _ualtitude = 0.0f;\n {\n int _ui = 0;\n bool ANGLE_scf7 = (_ui < _usamples);\n while (ANGLE_scf7)\n {\n {\n ANGLE_loopForwardProgress();\n {\n float3 ANGLE_sed5 = (_urd * _ut);\n float3 _upos = (_uro + ANGLE_sed5);\n float2 ANGLE_sed7 = _uGetUV(ANGLE_userUniforms, _upos);\n float _uh = _umapHeight(ANGLE_userUniforms, ANGLE_textureEnvs, ANGLE_sed7);\n _ualtitude = (_upos.y - _uh);\n float ANGLE_seda = (_ualtitude / _ut);\n float ANGLE_sedb = min(_us_t, ANGLE_seda);\n _us_t = max(0.0f, ANGLE_sedb);\n bool ANGLE_sedd = (_ualtitude < 0.0f);\n if (ANGLE_sedd)\n {\n bool ANGLE_sede = (_ui < 1);\n if (ANGLE_sede)\n {\n bool ANGLE_sedf = (_upos.y < 0.349999994f);\n if (ANGLE_sedf)\n {\n _us_t = 9999.0f;\n return -1.0f;\n } else {}\n _unormal = _uboxNormal;\n _umaterial = 1;\n break;\n } else {}\n } else {}\n bool ANGLE_see0 = (_ualtitude < 0.0f);\n if (ANGLE_see0)\n {\n _ustepScale *= 0.5f;\n float ANGLE_see1 = (_ustepSize * _ustepScale);\n _ut -= ANGLE_see1;\n }\n else\n {\n float ANGLE_see2 = abs(_ualtitude);\n float ANGLE_see3 = abs(_ualtitude);\n float ANGLE_see4 = (ANGLE_see3 * 0.00999999978f);\n float ANGLE_see5 = min(0.00999999978f, ANGLE_see4);\n _ustepSize = (ANGLE_see2 + ANGLE_see5);\n float ANGLE_see7 = (_ustepSize * _ustepScale);\n _ut += ANGLE_see7;\n }\n }\n }\n _ui++;\n ANGLE_scf7 = (_ui < _usamples);\n }\n }\n float3 _uwaterNormal = float3(0.0f, 0.0f, 0.0f);\n float ANGLE_see9 = ANGLE_mod(iTime, 120.0f);\n float ANGLE_seea = smoothstep(54.0f, 60.0f, ANGLE_see9);\n float ANGLE_seeb = ANGLE_mod(iTime, 120.0f);\n float ANGLE_seec = smoothstep(114.0f, 120.0f, ANGLE_seeb);\n float ANGLE_seed = (ANGLE_seea - ANGLE_seec);\n float ANGLE_seee = (0.100000001f * ANGLE_seed);\n float ANGLE_seef = (0.360000014f + ANGLE_seee);\n float3 ANGLE_sef0 = ANGLE_sd62(ANGLE_nonConstGlobals._uboxSize.x, ANGLE_seef, ANGLE_nonConstGlobals._uboxSize.z);\n float2 _uwater = _uboxIntersection(_uro, _urd, ANGLE_sef0, _uwaterNormal);\n bool ANGLE__4 = (_uwater.y > 0.0f);\n if (ANGLE__4)\n {\n bool ANGLE__2 = (_uwater.x < _ut);\n if (!ANGLE__2)\n {\n ANGLE__2 = (_ut < 0.0f);\n } else {}\n bool ANGLE__3 = ANGLE__2;\n if (ANGLE__3)\n {\n ANGLE__3 = (_umaterial != 1);\n } else {}\n ANGLE__4 = ANGLE__3;\n } else {}\n if (ANGLE__4)\n {\n _ut = max(0.0f, _uwater.x);\n _unormal = _uwaterNormal;\n _umaterial = 2;\n } else {}\n bool ANGLE_sefa = (_ubox.y < 0.0f);\n if (ANGLE_sefa)\n {\n _us_t = 9999.0f;\n return -1.0f;\n } else {}\n bool ANGLE_sefb = (_ut > _utEnd);\n if (ANGLE_sefb)\n {\n return -1.0f;\n } else {}\n return _ut;\n}\n\nfloat3 _uGetReflection( ANGLE_UserUniforms & ANGLE_userUniforms, ANGLE_NonConstGlobals & ANGLE_nonConstGlobals, ANGLE_TextureEnvs & ANGLE_textureEnvs, float3 _up, float3 _ur, float3 _usun, float _usmoothness)\n{\n float3 ANGLE_sefc = _uSkyColor(_ur, _usun);\n float3 _urefl = (ANGLE_sefc * 4.0f);\n float3 _ufoo = float3(0.0f, 0.0f, 0.0f);\n float _ur_t = 0.0f;\n int _ur_material = 0;\n _umarch(ANGLE_userUniforms, ANGLE_nonConstGlobals, ANGLE_textureEnvs, _up, _ur, _ufoo, _ur_material, _ur_t);\n float ANGLE_sefe = (-_ur_t);\n float ANGLE_seff = (ANGLE_sefe * 10.0f);\n float ANGLE_sf00 = (_usmoothness * _usmoothness);\n float ANGLE_sf01 = (ANGLE_seff * ANGLE_sf00);\n float ANGLE_sf02 = exp(ANGLE_sf01);\n float ANGLE_sf03 = (1.0f - ANGLE_sf02);\n float3 ANGLE_sf04 = (_urefl * ANGLE_sf03);\n return ANGLE_sf04;\n}\n\nvoid _umainImage( ANGLE_UserUniforms & ANGLE_userUniforms, ANGLE_NonConstGlobals & ANGLE_nonConstGlobals, ANGLE_TextureEnvs & ANGLE_textureEnvs, float4 & _ufragColor, float2 _ufragCoord)\n{\n _ufragColor = float4(0.0f, 0.0f, 0.0f, 0.0f);\n float _udebugWidth = 0.0f;\n float3 _uro = float3(0.0f, 0.0f, 0.0f);\n float3 _urd = float3(0.0f, 0.0f, 0.0f);\n _uGetRay(_uro, _urd, iTime, ANGLE_userUniforms._uiMouse, iResolution, _ufragCoord, _udebugWidth);\n float4 _ufoo = float4(0.0f, 0.0f, 0.0f, 0.0f);\n float3 _unormal = float3(0.0f, 0.0f, 0.0f);\n int _umaterial = 0;\n float _ut = _umarch(ANGLE_userUniforms, ANGLE_nonConstGlobals, ANGLE_textureEnvs, _uro, _urd, ANGLE_out(_unormal), ANGLE_out(_umaterial), ANGLE_swizzle_ref(_ufoo, 3u));\n float3 _usun = float3(-0.927477777f, 0.370991111f, 0.0463738889f);\n float3 ANGLE_sf06 = _uSkyColor(_urd, _usun);\n float3 ANGLE_sf07 = (-ANGLE_sf06);\n float3 ANGLE_sf08 = (ANGLE_sf07 * 2.0f);\n float3 ANGLE_sf09 = exp(ANGLE_sf08);\n float3 _ufogColor = (1.0f - ANGLE_sf09);\n float3 _ucolor = float3(0.0f, 0.0f, 0.0f);\n bool ANGLE_sf0b = (_ut < 0.0f);\n if (ANGLE_sf0b)\n {\n float ANGLE_sf0c = (_ufragCoord.y / iResolution.y);\n float ANGLE_sf0d = powr(ANGLE_sf0c, 3.0f);\n float ANGLE_sf0e = (ANGLE_sf0d * 3.0f);\n float ANGLE_sf0f = (1.0f + ANGLE_sf0e);\n float3 ANGLE_sf10 = (_ufogColor * ANGLE_sf0f);\n _ucolor = (ANGLE_sf10 * 0.5f);\n }\n else\n {\n float3 ANGLE_sf12 = (_urd * _ut);\n float3 _upos = (_uro + ANGLE_sf12);\n float _uerosion = 0.0f;\n float _uridgemap = 0.0f;\n float _utrees = 0.0f;\n float _udebug = 0.0f;\n float2 ANGLE_sf14 = _uGetUV(ANGLE_userUniforms, _upos);\n float4 _umapData = _umap( ANGLE_textureEnvs, ANGLE_sf14, _uerosion, _uridgemap, _utrees, _udebug);\n float ANGLE_sf16 = (_uridgemap / 0.300000012f);\n float ANGLE_sf17 = clamp(ANGLE_sf16, 0.0f, 1.0f);\n float ANGLE_sf18 = (1.0f - ANGLE_sf17);\n float ANGLE_sf19 = (ANGLE_sf18 * 1.5f);\n float _udrainage = clamp(ANGLE_sf19, 0.0f, 1.0f);\n float _udiff = (_upos.y - _umapData.x);\n float _ubreakup = 0.0f;\n float2 ANGLE_sf1c = _uGetUV(ANGLE_userUniforms, _upos);\n float4 _ubreakupTex = _uGetChannel1(ANGLE_userUniforms, ANGLE_textureEnvs, ANGLE_sf1c);\n _ubreakup = _ubreakupTex.x;\n bool ANGLE_sf1e = (_umaterial == 2);\n if (ANGLE_sf1e)\n {\n float2 ANGLE_sf1f = (_ubreakupTex.zy * 0.100000001f);\n _unormal.xz = (_unormal.xz + ANGLE_sf1f);\n _unormal = normalize(_unormal);\n } else {}\n float3 _uf0 = float3(0.0399999991f, 0.0399999991f, 0.0399999991f);\n float _usmoothness = 0.0f;\n float _uocclusion = 1.0f;\n float3 _ur = reflect(_urd, _unormal);\n float3 _udiffuseColor = float3(0.5f, 0.5f, 0.5f);\n bool ANGLE_sf22 = (_umaterial == 0);\n if (ANGLE_sf22)\n {\n _unormal = _umapData.yzw;\n float ANGLE_sf23 = (_uerosion + 0.5f);\n _uocclusion = clamp(ANGLE_sf23, 0.0f, 1.0f);\n float ANGLE_sf25 = smoothstep(0.400000006f, 0.519999981f, _upos.y);\n _udiffuseColor = (float3(0.219999999f, 0.200000003f, 0.200000003f) * ANGLE_sf25);\n float ANGLE_sf27 = (_ubreakup * 1.5f);\n float ANGLE_sf28 = (_uocclusion + ANGLE_sf27);\n float ANGLE_sf29 = smoothstep(0.600000024f, 0.0f, ANGLE_sf28);\n _udiffuseColor = mix(_udiffuseColor, float3(0.600000024f, 0.5f, 0.400000006f), ANGLE_sf29);\n float ANGLE_sf2b = (_ubreakup * 0.100000001f);\n float ANGLE_sf2c = (_upos.y + ANGLE_sf2b);\n float ANGLE_sf2d = smoothstep(0.529999971f, 0.600000024f, ANGLE_sf2c);\n _udiffuseColor = mix(_udiffuseColor, float3(1.0f, 1.0f, 1.0f), ANGLE_sf2d);\n float ANGLE_sf2f = ANGLE_mod(iTime, 120.0f);\n float ANGLE_sf30 = smoothstep(54.0f, 60.0f, ANGLE_sf2f);\n float ANGLE_sf31 = ANGLE_mod(iTime, 120.0f);\n float ANGLE_sf32 = smoothstep(114.0f, 120.0f, ANGLE_sf31);\n float ANGLE_sf33 = (ANGLE_sf30 - ANGLE_sf32);\n float ANGLE_sf34 = (0.100000001f * ANGLE_sf33);\n float ANGLE_sf35 = (0.360000014f + ANGLE_sf34);\n float ANGLE_sf36 = (ANGLE_sf35 + 0.00499999989f);\n float ANGLE_sf37 = ANGLE_mod(iTime, 120.0f);\n float ANGLE_sf38 = smoothstep(54.0f, 60.0f, ANGLE_sf37);\n float ANGLE_sf39 = ANGLE_mod(iTime, 120.0f);\n float ANGLE_sf3a = smoothstep(114.0f, 120.0f, ANGLE_sf39);\n float ANGLE_sf3b = (ANGLE_sf38 - ANGLE_sf3a);\n float ANGLE_sf3c = (0.100000001f * ANGLE_sf3b);\n float ANGLE_sf3d = (0.360000014f + ANGLE_sf3c);\n float ANGLE_sf3e = (_ubreakup * 0.00999999978f);\n float ANGLE_sf3f = (_upos.y + ANGLE_sf3e);\n float ANGLE_sf40 = smoothstep(ANGLE_sf36, ANGLE_sf3d, ANGLE_sf3f);\n _udiffuseColor = mix(_udiffuseColor, float3(0.800000012f, 0.699999988f, 0.600000024f), ANGLE_sf40);\n float ANGLE_sf42 = (_uerosion * 0.0500000007f);\n float ANGLE_sf43 = (_upos.y - ANGLE_sf42);\n float ANGLE_sf44 = (_ubreakup * 0.300000012f);\n float ANGLE_sf45 = (ANGLE_sf43 + ANGLE_sf44);\n float ANGLE_sf46 = smoothstep(0.400000006f, 0.600000024f, ANGLE_sf45);\n float3 _ugrassMix = mix(float3(0.150000006f, 0.300000012f, 0.100000001f), float3(0.400000006f, 0.5f, 0.200000003f), ANGLE_sf46);\n float ANGLE_sf48 = (_upos.y + 0.00999999978f);\n float ANGLE_sf49 = (_uocclusion - 0.800000012f);\n float ANGLE_sf4a = (ANGLE_sf49 * 0.0500000007f);\n float ANGLE_sf4b = (ANGLE_sf48 + ANGLE_sf4a);\n float ANGLE_sf4c = (_ubreakup * 0.0199999996f);\n float ANGLE_sf4d = (ANGLE_sf4b - ANGLE_sf4c);\n float ANGLE_sf4e = smoothstep(0.514999986f, 0.485000014f, ANGLE_sf4d);\n float ANGLE_sf4f = (1.0f - _unormal.y);\n float ANGLE_sf50 = (1.0f - _utrees);\n float ANGLE_sf51 = (ANGLE_sf4f * ANGLE_sf50);\n float ANGLE_sf52 = (1.0f - ANGLE_sf51);\n float ANGLE_sf53 = (_ubreakup * 0.100000001f);\n float ANGLE_sf54 = (ANGLE_sf52 + ANGLE_sf53);\n float ANGLE_sf55 = smoothstep(0.800000012f, 1.0f, ANGLE_sf54);\n float ANGLE_sf56 = (ANGLE_sf4e * ANGLE_sf55);\n _udiffuseColor = mix(_udiffuseColor, _ugrassMix, ANGLE_sf56);\n float ANGLE_sf58 = powr(_utrees, 8.0f);\n float3 ANGLE_sf59 = (float3(0.119999997f, 0.25999999f, 0.100000001f) * ANGLE_sf58);\n float ANGLE_sf5a = (_utrees * 2.20000005f);\n float ANGLE_sf5b = (ANGLE_sf5a - 0.800000012f);\n float ANGLE_sf5c = clamp(ANGLE_sf5b, 0.0f, 1.0f);\n float ANGLE_sf5d = (ANGLE_sf5c * 0.600000024f);\n _udiffuseColor = mix(_udiffuseColor, ANGLE_sf59, ANGLE_sf5d);\n float ANGLE_sf5f = (_ubreakup * 0.5f);\n float ANGLE_sf60 = (1.0f + ANGLE_sf5f);\n _udiffuseColor *= ANGLE_sf60;\n _udiffuseColor = mix(_udiffuseColor, float3(1.0f, 1.0f, 1.0f), _udrainage);\n }\n else\n {\n bool ANGLE_sf62 = (_umaterial == 1);\n if (ANGLE_sf62)\n {\n float3 ANGLE_sf63 = (_udiff * float3(130.0f, 190.0f, 250.0f));\n float3 ANGLE_sf64 = cos(ANGLE_sf63);\n float3 _ustrata = smoothstep(0.0f, 1.0f, ANGLE_sf64);\n _udiffuseColor = float3(0.300000012f, 0.300000012f, 0.300000012f);\n _udiffuseColor = mix(_udiffuseColor, float3(0.5f, 0.5f, 0.5f), _ustrata.x);\n _udiffuseColor = mix(_udiffuseColor, float3(0.550000012f, 0.550000012f, 0.550000012f), _ustrata.y);\n _udiffuseColor = mix(_udiffuseColor, float3(0.600000024f, 0.600000024f, 0.600000024f), _ustrata.z);\n float ANGLE_sf69 = (_udiff * 10.0f);\n float ANGLE_sf6a = exp(ANGLE_sf69);\n float3 ANGLE_sf6b = (ANGLE_sf6a * float3(1.0f, 0.899999976f, 0.699999988f));\n _udiffuseColor *= ANGLE_sf6b;\n }\n else\n {\n bool ANGLE_sf6c = (_umaterial == 2);\n if (ANGLE_sf6c)\n {\n float ANGLE_sf71;\n if (_unormal.y > 0.00999999978f)\n {\n float ANGLE_sf6e = (-_udiff);\n float ANGLE_sf6f = (ANGLE_sf6e * 60.0f);\n ANGLE_sf71 = exp(ANGLE_sf6f);\n }\n else\n {\n ANGLE_sf71 = 0.0f;\n }\n float _ushore = ANGLE_sf71;\n float ANGLE_sf76;\n if (_unormal.y > 0.00999999978f)\n {\n float ANGLE_sf73 = (_ubreakup * 0.00499999989f);\n float ANGLE_sf74 = (_udiff + ANGLE_sf73);\n ANGLE_sf76 = smoothstep(0.00499999989f, 0.0f, ANGLE_sf74);\n }\n else\n {\n ANGLE_sf76 = 0.0f;\n }\n float _ufoam = ANGLE_sf76;\n _udiffuseColor = mix(float3(0.0f, 0.0500000007f, 0.100000001f), float3(0.0f, 0.25f, 0.25f), _ushore);\n _udiffuseColor = mix(_udiffuseColor, float3(1.0f, 1.0f, 1.0f), _ufoam);\n _usmoothness = 0.949999988f;\n } else {}\n }\n }\n float _ushadow = 1.0f;\n bool ANGLE_sf79 = (_umaterial != 1);\n if (ANGLE_sf79)\n {\n float _us_t = 0.0f;\n int _us_material = 0;\n float3 ANGLE_sf7a = (_upos + float3(0.0f, 9.99999975e-05f, 0.0f));\n _umarch(ANGLE_userUniforms, ANGLE_nonConstGlobals, ANGLE_textureEnvs, ANGLE_sf7a, _usun, ANGLE_swizzle_ref(_ufoo, 0u, 1u, 2u), ANGLE_out(_us_material), ANGLE_out(_us_t));\n float ANGLE_sf7b = (-_us_t);\n float ANGLE_sf7c = (ANGLE_sf7b * 20.0f);\n float ANGLE_sf7d = exp(ANGLE_sf7c);\n _ushadow = (1.0f - ANGLE_sf7d);\n } else {}\n float3 ANGLE_sf7f = _uSkyColor(_unormal, _usun);\n float3 ANGLE_sf80 = (_udiffuseColor * ANGLE_sf7f);\n float ANGLE_sf81 = _uFd_Lambert();\n _ucolor = (ANGLE_sf80 * ANGLE_sf81);\n _ucolor *= _uocclusion;\n float3 ANGLE_sf83 = (-_urd);\n float3 ANGLE_sf84 = (float3(2.0f, 1.96000004f, 1.89999998f) * _ushadow);\n float3 ANGLE_sf85 = _uShade(_udiffuseColor, _uf0, _usmoothness, _unormal, ANGLE_sf83, _usun, ANGLE_sf84);\n _ucolor += ANGLE_sf85;\n float3 ANGLE_sf86 = (_udiffuseColor * float3(2.0f, 1.96000004f, 1.89999998f));\n float3 ANGLE_sf87 = (_usun * float3(1.0f, -1.0f, 1.0f));\n float ANGLE_sf88 = dot(_unormal, ANGLE_sf87);\n float ANGLE_sf89 = (ANGLE_sf88 * 0.5f);\n float ANGLE_sf8a = (ANGLE_sf89 + 0.5f);\n float3 ANGLE_sf8b = (ANGLE_sf86 * ANGLE_sf8a);\n float ANGLE_sf8c = _uFd_Lambert();\n float3 ANGLE_sf8d = (ANGLE_sf8b * ANGLE_sf8c);\n float3 ANGLE_sf8e = (ANGLE_sf8d / 3.14159274f);\n _ucolor += ANGLE_sf8e;\n float3 ANGLE_sf8f = _uGetReflection(ANGLE_userUniforms, ANGLE_nonConstGlobals, ANGLE_textureEnvs, _upos, _ur, _usun, _usmoothness);\n float3 ANGLE_sf90 = (-_urd);\n float ANGLE_sf91 = dot(ANGLE_sf90, _unormal);\n float3 ANGLE_sf92 = _uF_Schlick(_uf0, ANGLE_sf91);\n float3 ANGLE_sf93 = (ANGLE_sf8f * ANGLE_sf92);\n _ucolor += ANGLE_sf93;\n }\n float3 _uboxNormal = float3(0.0f, 0.0f, 0.0f);\n float2 _ubox = _uboxIntersection(_uro, _urd, ANGLE_nonConstGlobals._uboxSize, _uboxNormal);\n float _ucosth = dot(_urd, _usun);\n float _uphaseR = _uPhaseRayleigh(_ucosth);\n float _uphaseM = _uPhaseMie(_ucosth, 0.600000024f);\n float2 _uod = float2(0.0f, 0.0f);\n float3 _utsm = float3(0.0f, 0.0f, 0.0f);\n float3 _usct = float3(0.0f, 0.0f, 0.0f);\n float ANGLE_sf99;\n if (_ut > 0.0f)\n {\n ANGLE_sf99 = _ut;\n }\n else\n {\n ANGLE_sf99 = _ubox.y;\n }\n float _urayLength = (ANGLE_sf99 - _ubox.x);\n float _ustepSize = (_urayLength / 16.0f);\n {\n float _ui = 0.0f;\n bool ANGLE_scf8 = (_ui < 16.0f);\n while (ANGLE_scf8)\n {\n {\n ANGLE_loopForwardProgress();\n {\n float ANGLE_sf9d = (_ui + 0.5f);\n float ANGLE_sf9e = (ANGLE_sf9d * _ustepSize);\n float ANGLE_sf9f = (_ubox.x + ANGLE_sf9e);\n float3 ANGLE_sfa0 = (_urd * ANGLE_sf9f);\n float3 _up = (_uro + ANGLE_sfa0);\n float ANGLE_sfa2 = (_up.y - 0.349999994f);\n float _uh = max(0.0f, ANGLE_sfa2);\n float ANGLE_sfa4 = (_uh / 0.200000003f);\n float ANGLE_sfa5 = clamp(ANGLE_sfa4, 0.0f, 1.0f);\n float _ud = (1.0f - ANGLE_sfa5);\n bool ANGLE_sfa7 = (_up.y < 0.349999994f);\n if (ANGLE_sfa7)\n {\n _ud = 0.0f;\n } else {}\n float _udensityR = (_ud * 100000.0f);\n float _udensityM = (_ud * 100000.0f);\n float2 ANGLE_sfaa = ANGLE_sd66(_udensityR, _udensityM);\n float2 ANGLE_sfab = (_ustepSize * ANGLE_sfaa);\n _uod += ANGLE_sfab;\n float3 ANGLE_sfac = (_uod.x * float3(5.80200003e-06f, 1.35579994e-05f, 3.30999974e-05f));\n float3 ANGLE_sfad = (_uod.y * float3(3.99600003e-06f, 3.99600003e-06f, 3.99600003e-06f));\n float3 ANGLE_sfae = (ANGLE_sfac + ANGLE_sfad);\n float3 ANGLE_sfaf = (-ANGLE_sfae);\n _utsm = exp(ANGLE_sfaf);\n float3 ANGLE_sfb1 = (_utsm * float3(5.80200003e-06f, 1.35579994e-05f, 3.30999974e-05f));\n float3 ANGLE_sfb2 = (ANGLE_sfb1 * _uphaseR);\n float3 ANGLE_sfb3 = (ANGLE_sfb2 * _udensityR);\n float3 ANGLE_sfb4 = (ANGLE_sfb3 * _ustepSize);\n _usct += ANGLE_sfb4;\n float3 ANGLE_sfb5 = (_utsm * float3(3.99600003e-06f, 3.99600003e-06f, 3.99600003e-06f));\n float3 ANGLE_sfb6 = (ANGLE_sfb5 * _uphaseM);\n float3 ANGLE_sfb7 = (ANGLE_sfb6 * _udensityM);\n float3 ANGLE_sfb8 = (ANGLE_sfb7 * _ustepSize);\n _usct += ANGLE_sfb8;\n }\n }\n _ui++;\n ANGLE_scf8 = (_ui < 16.0f);\n }\n }\n float3 ANGLE_sfba = (_ucolor * _utsm);\n float3 ANGLE_sfbb = (_usct * 10.0f);\n _ucolor = (ANGLE_sfba + ANGLE_sfbb);\n _ucolor = _uTonemap_ACES(_ucolor);\n _ucolor = powr(_ucolor, float3(0.454545438f, 0.454545438f, 0.454545438f));\n float2 _uchannel2Res = ANGLE_userUniforms._uiChannelResolution[2].xy;\n float2 ANGLE_sfbf = ANGLE_mod(_ufragCoord.xy, _uchannel2Res);\n float2 _uchannel2Tiled = (ANGLE_sfbf / _uchannel2Res);\n float4 ANGLE_sfc1 = ANGLE_texture(ANGLE_textureEnvs._uiChannel2, _uchannel2Tiled);\n float3 ANGLE_sfc2 = (ANGLE_sfc1.xxx / 255.0f);\n _ucolor += ANGLE_sfc2;\n _ufragColor = ANGLE_sd69(_ucolor, 1.0f);\n}\n\n\nvoid mainImage(out vec4 fragColor, in vec2 fragCoord) { _umainImage(fragColor, fragCoord); }", "views": 6999, "likes": 402, "createdAt": "2026-04-01T12:12:43.914Z", "updatedAt": "2026-04-01T12:24:38.270Z", "sourceFormat": "angle-metal-auto-converted" }, { "id": "alien-core-ported", "name": "Alien Core (Ported)", "author": "glkt", "views": 9754, "likes": 256, "createdAt": "2026-04-01T00:00:00.000Z", "code": "vec3 paletteAC(float d) {\n return mix(vec3(0.2, 0.7, 0.9), vec3(1.0, 0.0, 1.0), d);\n}\n\nvec2 rotateAC(vec2 p, float a) {\n float c = cos(a);\n float s = sin(a);\n return mat2(c, -s, s, c) * p;\n}\n\nfloat mapAC(vec3 p) {\n for (int i = 0; i < 8; i++) {\n float t = iTime * 0.2;\n p.xz = rotateAC(p.xz, t);\n p.xy = rotateAC(p.xy, t * 1.89);\n p.xz = abs(p.xz) - 0.5;\n }\n return dot(sign(p), p) / 5.0;\n}\n\nvec4 raymarchAC(vec3 ro, vec3 rd) {\n float t = 0.0;\n vec3 col = vec3(0.0);\n float d = 0.0;\n for (int i = 0; i < 64; i++) {\n vec3 p = ro + rd * t;\n d = mapAC(p) * 0.5;\n if (d < 0.02 || d > 100.0) break;\n col += paletteAC(length(p) * 0.1) / (400.0 * d);\n t += d;\n }\n float alpha = 1.0 / (max(d, 0.0001) * 100.0);\n return vec4(col, alpha);\n}\n\nvoid mainImage(out vec4 fragColor, in vec2 fragCoord) {\n vec2 uv = (fragCoord - 0.5 * iResolution.xy) / iResolution.x;\n vec3 ro = vec3(0.0, 0.0, -50.0);\n ro.xz = rotateAC(ro.xz, iTime);\n\n vec3 cf = normalize(-ro);\n vec3 cs = normalize(cross(cf, vec3(0.0, 1.0, 0.0)));\n vec3 cu = normalize(cross(cf, cs));\n vec3 uuv = ro + cf * 3.0 + uv.x * cs + uv.y * cu;\n vec3 rd = normalize(uuv - ro);\n\n fragColor = raymarchAC(ro, rd);\n}" } ]