Added a procedural blood splat VFX, and some other files related to that and a previous experiment with dynamic VFX made with Material Maker.

remotes/1709858346833250237/update-godot-to-1852afb6b
unfa 2021-09-13 01:10:22 +02:00
parent 448894a40c
commit c33ee1d016
15 changed files with 4954 additions and 15 deletions

View File

@ -0,0 +1,965 @@
{
"connections": [
{
"from": "math",
"from_port": 0,
"to": "math_2",
"to_port": 1
},
{
"from": "math_2",
"from_port": 0,
"to": "tones_range",
"to_port": 0
},
{
"from": "invert",
"from_port": 0,
"to": "transform2",
"to_port": 0
},
{
"from": "transform2",
"from_port": 0,
"to": "blend",
"to_port": 0
},
{
"from": "math",
"from_port": 0,
"to": "transform2",
"to_port": 2
},
{
"from": "colorize",
"from_port": 0,
"to": "blend",
"to_port": 1
},
{
"from": "math_2",
"from_port": 0,
"to": "tones_map",
"to_port": 0
},
{
"from": "tones_map",
"from_port": 0,
"to": "colorize",
"to_port": 0
},
{
"from": "rotate",
"from_port": 0,
"to": "circle_map",
"to_port": 0
},
{
"from": "shape",
"from_port": 0,
"to": "blend_2",
"to_port": 0
},
{
"from": "gradient",
"from_port": 0,
"to": "blend_3",
"to_port": 1
},
{
"from": "blend_3",
"from_port": 0,
"to": "math_2",
"to_port": 0
},
{
"from": "circle_map",
"from_port": 0,
"to": "blend_2",
"to_port": 1
},
{
"from": "perlin_5",
"from_port": 0,
"to": "shape_2",
"to_port": 1
},
{
"from": "blend_2",
"from_port": 0,
"to": "blend_4",
"to_port": 1
},
{
"from": "math",
"from_port": 0,
"to": "math_5",
"to_port": 0
},
{
"from": "math_5",
"from_port": 0,
"to": "transform2_2",
"to_port": 4
},
{
"from": "math_5",
"from_port": 0,
"to": "transform2_2",
"to_port": 5
},
{
"from": "shape_2",
"from_port": 0,
"to": "transform2_2",
"to_port": 0
},
{
"from": "blend_4",
"from_port": 0,
"to": "math_6",
"to_port": 0
},
{
"from": "math_7",
"from_port": 0,
"to": "colorize_2",
"to_port": 0
},
{
"from": "colorize_2",
"from_port": 0,
"to": "tones_map_2",
"to_port": 0
},
{
"from": "tones_map_2",
"from_port": 0,
"to": "math",
"to_port": 0
},
{
"from": "math",
"from_port": 0,
"to": "tonality",
"to_port": 0
},
{
"from": "math",
"from_port": 0,
"to": "tonality_2",
"to_port": 0
},
{
"from": "tonality_2",
"from_port": 0,
"to": "blend_4",
"to_port": 2
},
{
"from": "math_6",
"from_port": 0,
"to": "math_4",
"to_port": 0
},
{
"from": "tonality",
"from_port": 0,
"to": "math_4",
"to_port": 1
},
{
"from": "math_4",
"from_port": 0,
"to": "math_8",
"to_port": 1
},
{
"from": "math_8",
"from_port": 0,
"to": "Material",
"to_port": 7
},
{
"from": "normal_map",
"from_port": 0,
"to": "Material",
"to_port": 4
},
{
"from": "math_4",
"from_port": 0,
"to": "tones_range_2",
"to_port": 0
},
{
"from": "voronoi",
"from_port": 0,
"to": "invert",
"to_port": 0
},
{
"from": "tones_range_2",
"from_port": 0,
"to": "math_9",
"to_port": 0
},
{
"from": "math_9",
"from_port": 0,
"to": "normal_map",
"to_port": 0
},
{
"from": "perlin_4",
"from_port": 0,
"to": "translate",
"to_port": 0
},
{
"from": "translate",
"from_port": 0,
"to": "blend_3",
"to_port": 0
},
{
"from": "blend",
"from_port": 0,
"to": "translate_2",
"to_port": 0
},
{
"from": "translate_2",
"from_port": 0,
"to": "rotate",
"to_port": 0
},
{
"from": "perlin_3",
"from_port": 0,
"to": "rotate_2",
"to_port": 0
},
{
"from": "rotate_2",
"from_port": 0,
"to": "shape",
"to_port": 0
},
{
"from": "transform2_2",
"from_port": 0,
"to": "rotate_3",
"to_port": 0
},
{
"from": "rotate_3",
"from_port": 0,
"to": "blend_4",
"to_port": 0
},
{
"from": "math_8",
"from_port": 0,
"to": "debug",
"to_port": 0
}
],
"label": "Graph",
"longdesc": "",
"name": "@@2278",
"node_position": {
"x": 0,
"y": 0
},
"nodes": [
{
"export_paths": {
"Godot": "/data/Projects/Games/Liblast/Game/Assets/Effects/BloodSpray"
},
"name": "Material",
"node_position": {
"x": 3453.300049,
"y": -33.299999
},
"parameters": {
"albedo_color": {
"a": 1,
"b": 0,
"g": 0,
"r": 0.435868,
"type": "Color"
},
"ao": 1,
"depth_scale": 0.5,
"emission_energy": 1,
"flags_transparent": true,
"metallic": 0.25,
"normal": 1,
"roughness": 0
},
"type": "material_dynamic"
},
{
"name": "gradient",
"node_position": {
"x": -1601,
"y": 170.5
},
"parameters": {
"gradient": {
"interpolation": 1,
"points": [
{
"a": 1,
"b": 0,
"g": 0,
"pos": 0,
"r": 0
},
{
"a": 1,
"b": 1,
"g": 1,
"pos": 1,
"r": 1
}
],
"type": "Gradient"
},
"repeat": 1,
"rotate": -90
},
"type": "gradient"
},
{
"name": "math",
"node_position": {
"x": -1482,
"y": -258.5
},
"parameters": {
"clamp": true,
"default_in1": 0,
"default_in2": 0,
"op": 7
},
"preview": 0,
"type": "math"
},
{
"name": "tones_range",
"node_position": {
"x": -533,
"y": 57.5
},
"parameters": {
"contrast": 0,
"invert": false,
"value": 0,
"width": 0.25
},
"type": "tones_range"
},
{
"name": "math_2",
"node_position": {
"x": -840,
"y": 125.5
},
"parameters": {
"clamp": false,
"default_in1": 0,
"default_in2": 0,
"op": 1
},
"type": "math"
},
{
"name": "voronoi",
"node_position": {
"x": -1216,
"y": 397.5
},
"parameters": {
"intensity": 1,
"randomness": 0.85,
"scale_x": 64,
"scale_y": 6,
"stretch_x": 1,
"stretch_y": 1
},
"type": "voronoi"
},
{
"name": "invert",
"node_position": {
"x": -764,
"y": 373.5
},
"parameters": {
},
"type": "invert"
},
{
"name": "blend",
"node_position": {
"x": 80.900002,
"y": 103.5
},
"parameters": {
"amount": 1,
"blend_type": 2
},
"type": "blend"
},
{
"name": "transform2",
"node_position": {
"x": -483,
"y": 384.5
},
"parameters": {
"mode": 1,
"rotate": 0,
"scale_x": 1,
"scale_y": 1,
"translate_x": 0,
"translate_y": -0.65
},
"type": "transform2"
},
{
"name": "colorize",
"node_position": {
"x": -250,
"y": -53.5
},
"parameters": {
"gradient": {
"interpolation": 1,
"points": [
{
"a": 1,
"b": 0,
"g": 0,
"pos": 0.718182,
"r": 0
},
{
"a": 1,
"b": 1,
"g": 1,
"pos": 0.918182,
"r": 1
},
{
"a": 1,
"b": 0,
"g": 0,
"pos": 0.945455,
"r": 0
}
],
"type": "Gradient"
}
},
"type": "colorize"
},
{
"name": "tones_map",
"node_position": {
"x": -634,
"y": -92.5
},
"parameters": {
"in_max": 2.51,
"in_min": -1.95,
"out_max": 2,
"out_min": 0.08
},
"type": "tones_map"
},
{
"name": "circle_map",
"node_position": {
"x": 932,
"y": 158.5
},
"parameters": {
"radius": 1,
"repeat": 1
},
"type": "circle_map"
},
{
"name": "rotate",
"node_position": {
"x": 605,
"y": 159.5
},
"parameters": {
"cx": 0,
"cy": 0,
"rotate": 180
},
"type": "rotate"
},
{
"name": "shape",
"node_position": {
"x": 842,
"y": -75.5
},
"parameters": {
"edge": 1,
"radius": 1,
"shape": 0,
"sides": 2
},
"type": "shape"
},
{
"name": "blend_2",
"node_position": {
"x": 1225,
"y": -3.5
},
"parameters": {
"amount": 1,
"blend_type": 2
},
"type": "blend"
},
{
"name": "perlin_3",
"node_position": {
"x": 192,
"y": -199.5
},
"parameters": {
"iterations": 2,
"persistence": 0.95,
"scale_x": 7,
"scale_y": 7
},
"type": "perlin"
},
{
"name": "perlin_4",
"node_position": {
"x": -1822.943848,
"y": 400.052063
},
"parameters": {
"iterations": 1,
"persistence": 0.5,
"scale_x": 12,
"scale_y": 1
},
"type": "perlin"
},
{
"name": "blend_3",
"node_position": {
"x": -1190.100098,
"y": 165.5
},
"parameters": {
"amount": 0.34,
"blend_type": 0
},
"type": "blend"
},
{
"name": "perlin_5",
"node_position": {
"x": 274.25,
"y": -480.5
},
"parameters": {
"iterations": 8,
"persistence": 0.4,
"scale_x": 32,
"scale_y": 32
},
"type": "perlin"
},
{
"name": "shape_2",
"node_position": {
"x": 869.25,
"y": -499.5
},
"parameters": {
"edge": 5,
"radius": 1,
"shape": 0,
"sides": 2
},
"type": "shape"
},
{
"name": "blend_4",
"node_position": {
"x": 1645,
"y": 34.5
},
"parameters": {
"amount": 1,
"blend_type": 0
},
"seed_value": 64017,
"type": "blend"
},
{
"name": "math_5",
"node_position": {
"x": 615.5,
"y": -305.399994
},
"parameters": {
"clamp": false,
"default_in1": 0,
"default_in2": 0.2,
"op": 0
},
"type": "math"
},
{
"name": "transform2_2",
"node_position": {
"x": 1157,
"y": -327.5
},
"parameters": {
"mode": 0,
"rotate": 0,
"scale_x": 2,
"scale_y": 2,
"translate_x": 0,
"translate_y": 0
},
"type": "transform2"
},
{
"name": "math_6",
"node_position": {
"x": 1982.900024,
"y": 14.599997
},
"parameters": {
"clamp": true,
"default_in1": 0,
"default_in2": 1,
"op": 2
},
"type": "math"
},
{
"name": "math_7",
"node_position": {
"x": -2693.599854,
"y": -278.5
},
"parameters": {
"clamp": false,
"default_in1": "$ANIM",
"default_in2": 0.55,
"op": 2
},
"type": "math"
},
{
"name": "colorize_2",
"node_position": {
"x": -2108.300049,
"y": -303.899963
},
"parameters": {
"gradient": {
"interpolation": 1,
"points": [
{
"a": 1,
"b": 0,
"g": 0,
"pos": 0,
"r": 0
},
{
"a": 1,
"b": 1,
"g": 1,
"pos": 1,
"r": 1
}
],
"type": "Gradient"
}
},
"type": "colorize"
},
{
"name": "tones_map_2",
"node_position": {
"x": -1778.300049,
"y": -246.699966
},
"parameters": {
"in_max": 1,
"in_min": -0.28,
"out_max": 1,
"out_min": 0
},
"type": "tones_map"
},
{
"name": "tonality",
"node_position": {
"x": 2014.5,
"y": -131.199997
},
"parameters": {
"curve": {
"points": [
{
"ls": 0,
"rs": -37.443563,
"x": 0,
"y": 1
},
{
"ls": 0,
"rs": -0,
"x": 0.045743,
"y": 0.00477
},
{
"ls": 1.276485,
"rs": 0.566183,
"x": 0.202899,
"y": 0.069952
},
{
"ls": 2.99028,
"rs": 3.026154,
"x": 0.633605,
"y": 0.527822
},
{
"ls": 0.266608,
"rs": -0,
"x": 1,
"y": 1
}
],
"type": "Curve"
}
},
"type": "tonality"
},
{
"name": "tonality_2",
"node_position": {
"x": 1427.099854,
"y": 193.299988
},
"parameters": {
"curve": {
"points": [
{
"ls": 0,
"rs": -0.653084,
"x": 0,
"y": 0.887122
},
{
"ls": -0.936089,
"rs": -1.978554,
"x": 0.451993,
"y": 0.484897
},
{
"ls": 0.068362,
"rs": -0,
"x": 1,
"y": 0
}
],
"type": "Curve"
}
},
"type": "tonality"
},
{
"name": "normal_map",
"node_position": {
"x": 2750.400146,
"y": -89.400009
},
"parameters": {
"param0": 8,
"param1": -0.1,
"param2": 0,
"param4": 0
},
"type": "normal_map"
},
{
"name": "math_4",
"node_position": {
"x": 2385.200195,
"y": 172.399979
},
"parameters": {
"clamp": false,
"default_in1": 0,
"default_in2": 0,
"op": 1
},
"type": "math"
},
{
"name": "math_8",
"node_position": {
"x": 2827.000244,
"y": 264.299988
},
"parameters": {
"clamp": true,
"default_in1": 0,
"default_in2": 0,
"op": 15
},
"type": "math"
},
{
"name": "tones_range_2",
"node_position": {
"x": 2393.463135,
"y": -95.18222
},
"parameters": {
"contrast": 0.14,
"invert": false,
"value": 0.38,
"width": 0.83
},
"type": "tones_range"
},
{
"name": "math_9",
"node_position": {
"x": 2595.863037,
"y": -258.482178
},
"parameters": {
"clamp": false,
"default_in1": 0,
"default_in2": 0,
"op": 19
},
"type": "math"
},
{
"name": "@@5166",
"node_position": {
"x": -3146.340088,
"y": -458.924744
},
"parameters": {
"ANIM": 0,
"OFFSET": 0
},
"type": "remote",
"widgets": [
{
"default": 0.5,
"label": "Animation",
"max": 1,
"min": 0,
"name": "ANIM",
"step": 0.01,
"type": "named_parameter"
},
{
"default": 0.5,
"label": "Offset",
"max": 1,
"min": 0,
"name": "OFFSET",
"step": 0.01,
"type": "named_parameter"
}
]
},
{
"name": "translate",
"node_position": {
"x": -1506.570068,
"y": 412.305725
},
"parameters": {
"translate_x": "$OFFSET * 3.5",
"translate_y": 0
},
"type": "translate"
},
{
"name": "translate_2",
"node_position": {
"x": 309.736572,
"y": 255.589172
},
"parameters": {
"translate_x": "$OFFSET * 1.32",
"translate_y": 0
},
"type": "translate"
},
{
"name": "rotate_2",
"node_position": {
"x": 540.236572,
"y": -80.410828
},
"parameters": {
"cx": 0,
"cy": 0,
"rotate": "$OFFSET * 180.0"
},
"type": "rotate"
},
{
"name": "rotate_3",
"node_position": {
"x": 1472.736572,
"y": -389.910828
},
"parameters": {
"cx": 0,
"cy": 0,
"rotate": "$OFFSET * 530.0"
},
"type": "rotate"
},
{
"name": "debug",
"node_position": {
"x": 3336.236572,
"y": -167.410828
},
"parameters": {
},
"type": "debug"
}
],
"parameters": {
},
"shortdesc": "",
"type": "graph"
}

File diff suppressed because one or more lines are too long

View File

@ -0,0 +1,594 @@
{
"connections": [
{
"from": "perlin",
"from_port": 0,
"to": "blend",
"to_port": 0
},
{
"from": "gradient",
"from_port": 0,
"to": "math",
"to_port": 0
},
{
"from": "math",
"from_port": 0,
"to": "blend",
"to_port": 1
},
{
"from": "blend",
"from_port": 0,
"to": "circle_map",
"to_port": 0
},
{
"from": "math_3",
"from_port": 0,
"to": "math",
"to_port": 1
},
{
"from": "circle_map",
"from_port": 0,
"to": "blend_2",
"to_port": 1
},
{
"from": "transform2",
"from_port": 0,
"to": "blend_2",
"to_port": 0
},
{
"from": "perlin_2",
"from_port": 0,
"to": "transform2",
"to_port": 0
},
{
"from": "math_5",
"from_port": 0,
"to": "math_3",
"to_port": 0
},
{
"from": "math_3",
"from_port": 0,
"to": "math_4",
"to_port": 0
},
{
"from": "math_4",
"from_port": 0,
"to": "tones_map_2",
"to_port": 0
},
{
"from": "tones_map_2",
"from_port": 0,
"to": "transform2",
"to_port": 4
},
{
"from": "tones_map_2",
"from_port": 0,
"to": "transform2",
"to_port": 5
},
{
"from": "math_3",
"from_port": 0,
"to": "transform2",
"to_port": 3
},
{
"from": "perlin_3",
"from_port": 0,
"to": "transform2_2",
"to_port": 0
},
{
"from": "tones_map_2",
"from_port": 0,
"to": "transform2_2",
"to_port": 4
},
{
"from": "tones_map_2",
"from_port": 0,
"to": "transform2_2",
"to_port": 5
},
{
"from": "math_3",
"from_port": 0,
"to": "transform2_2",
"to_port": 3
},
{
"from": "blend_2",
"from_port": 0,
"to": "blend_3",
"to_port": 1
},
{
"from": "transform2_2",
"from_port": 0,
"to": "blend_3",
"to_port": 0
},
{
"from": "math_6",
"from_port": 0,
"to": "math_5",
"to_port": 0
},
{
"from": "tones_map_3",
"from_port": 0,
"to": "math_7",
"to_port": 0
},
{
"from": "math_7",
"from_port": 0,
"to": "Material",
"to_port": 0
},
{
"from": "math_2",
"from_port": 0,
"to": "math_8",
"to_port": 0
},
{
"from": "blend_3",
"from_port": 0,
"to": "math_2",
"to_port": 0
},
{
"from": "math_3",
"from_port": 0,
"to": "math_9",
"to_port": 1
},
{
"from": "math_8",
"from_port": 0,
"to": "math_9",
"to_port": 0
},
{
"from": "math_9",
"from_port": 0,
"to": "tones_map_3",
"to_port": 0
},
{
"from": "shape",
"from_port": 0,
"to": "math_2",
"to_port": 1
}
],
"label": "Graph",
"longdesc": "",
"name": "@@271",
"node_position": {
"x": 0,
"y": 0
},
"nodes": [
{
"export_paths": {
},
"name": "Material",
"node_position": {
"x": 2627,
"y": -126
},
"parameters": {
"blend": 0
},
"type": "material_unlit"
},
{
"name": "perlin",
"node_position": {
"x": -853,
"y": 124.5
},
"parameters": {
"iterations": 2,
"persistence": 0.5,
"scale_x": 63,
"scale_y": 1
},
"type": "perlin"
},
{
"name": "circle_map",
"node_position": {
"x": -82.090912,
"y": 255.590912
},
"parameters": {
"radius": 1,
"repeat": 1
},
"preview": 0,
"type": "circle_map"
},
{
"name": "gradient",
"node_position": {
"x": -1044,
"y": 443.5
},
"parameters": {
"gradient": {
"interpolation": 1,
"points": [
{
"a": 1,
"b": 0,
"g": 0,
"pos": 0,
"r": 0
},
{
"a": 1,
"b": 1,
"g": 1,
"pos": 1,
"r": 1
}
],
"type": "Gradient"
},
"repeat": 1,
"rotate": -90
},
"type": "gradient"
},
{
"name": "blend",
"node_position": {
"x": -376,
"y": 295.5
},
"parameters": {
"amount": 0.33,
"blend_type": 0
},
"type": "blend"
},
{
"name": "math",
"node_position": {
"x": -667,
"y": 401.5
},
"parameters": {
"clamp": false,
"default_in1": 0,
"default_in2": 0,
"op": 0
},
"type": "math"
},
{
"name": "colorize",
"node_position": {
"x": 1615.181763,
"y": -153.5
},
"parameters": {
"gradient": {
"interpolation": 1,
"points": [
{
"a": 1,
"b": 0,
"g": 0,
"pos": 0.328512,
"r": 0
},
{
"a": 1,
"b": 1,
"g": 1,
"pos": 0.337603,
"r": 1
},
{
"a": 1,
"b": 0,
"g": 0,
"pos": 0.483058,
"r": 0
}
],
"type": "Gradient"
}
},
"type": "colorize"
},
{
"name": "shape",
"node_position": {
"x": 452,
"y": -353.5
},
"parameters": {
"edge": 1,
"radius": 1,
"shape": 0,
"sides": 15
},
"type": "shape"
},
{
"name": "math_2",
"node_position": {
"x": 814,
"y": 58.5
},
"parameters": {
"clamp": false,
"default_in1": 0,
"default_in2": 0,
"op": 2
},
"type": "math"
},
{
"name": "math_3",
"node_position": {
"x": -868,
"y": -292.5
},
"parameters": {
"clamp": true,
"default_in1": 0,
"default_in2": 0,
"op": 0
},
"type": "math"
},
{
"name": "perlin_2",
"node_position": {
"x": -498.5,
"y": -603.5
},
"parameters": {
"iterations": 7,
"persistence": 0.75,
"scale_x": 16,
"scale_y": 16
},
"type": "perlin"
},
{
"name": "transform2",
"node_position": {
"x": 148,
"y": -267.5
},
"parameters": {
"mode": 1,
"rotate": 15,
"scale_x": 1,
"scale_y": 1,
"translate_x": 0,
"translate_y": 0
},
"type": "transform2"
},
{
"name": "blend_2",
"node_position": {
"x": 190,
"y": 231.5
},
"parameters": {
"amount": 0.39,
"blend_type": 4
},
"type": "blend"
},
{
"name": "math_5",
"node_position": {
"x": -1260.090942,
"y": -276.136383
},
"parameters": {
"clamp": false,
"default_in1": "$time",
"default_in2": 0,
"op": 12
},
"type": "math"
},
{
"name": "tones_map_2",
"node_position": {
"x": -161.681885,
"y": -124.818176
},
"parameters": {
"in_max": 1,
"in_min": 0,
"out_max": 5.16,
"out_min": 0.7
},
"type": "tones_map"
},
{
"name": "math_4",
"node_position": {
"x": -453.681885,
"y": -87.818176
},
"parameters": {
"clamp": false,
"default_in1": 0,
"default_in2": 2.11,
"op": 6
},
"type": "math"
},
{
"name": "perlin_3",
"node_position": {
"x": -189.181885,
"y": -627.818176
},
"parameters": {
"iterations": 9,
"persistence": 0.75,
"scale_x": 8,
"scale_y": 8
},
"type": "perlin"
},
{
"name": "transform2_2",
"node_position": {
"x": 170.318115,
"y": -537.318176
},
"parameters": {
"mode": 1,
"rotate": -15,
"scale_x": 1,
"scale_y": 1,
"translate_x": 0,
"translate_y": 0
},
"type": "transform2"
},
{
"name": "blend_3",
"node_position": {
"x": 439.317993,
"y": 204.681824
},
"parameters": {
"amount": 0.22,
"blend_type": 4
},
"type": "blend"
},
{
"name": "tones_map_3",
"node_position": {
"x": 2065.318115,
"y": -10.818176
},
"parameters": {
"in_max": 0.78,
"in_min": 0.08,
"out_max": 1,
"out_min": 0
},
"type": "tones_map"
},
{
"name": "math_6",
"node_position": {
"x": -1519.181885,
"y": -274.818176
},
"parameters": {
"clamp": false,
"default_in1": "$time",
"default_in2": 2,
"op": 2
},
"type": "math"
},
{
"name": "math_7",
"node_position": {
"x": 2378.318115,
"y": -27.818176
},
"parameters": {
"clamp": true,
"default_in1": 0,
"default_in2": 0,
"op": 0
},
"type": "math"
},
{
"name": "math_8",
"node_position": {
"x": 1082.318115,
"y": 70.181824
},
"parameters": {
"clamp": false,
"default_in1": 0,
"default_in2": 1,
"op": 6
},
"type": "math"
},
{
"name": "math_9",
"node_position": {
"x": 1404.318115,
"y": -27.818176
},
"parameters": {
"clamp": false,
"default_in1": 0,
"default_in2": 0,
"op": 0
},
"type": "math"
},
{
"name": "math_10",
"node_position": {
"x": 1231.318115,
"y": -382.818176
},
"parameters": {
"clamp": false,
"default_in1": 0,
"default_in2": 0,
"op": 0
},
"type": "math"
},
{
"name": "shape_2",
"node_position": {
"x": 773.318115,
"y": -582.818237
},
"parameters": {
"edge": 1,
"radius": 1,
"shape": 0,
"sides": 15
},
"type": "shape"
}
],
"parameters": {
},
"shortdesc": "",
"type": "graph"
}

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,730 @@
shader_type spatial;
uniform vec3 uv1_scale = vec3(1.0, 1.0, 1.0);
uniform int depth_min_layers = 8;
uniform int depth_max_layers = 16;
uniform vec2 depth_flip = vec2(1.0);
varying float elapsed_time;
void vertex() {
elapsed_time = TIME;
}
float rand(vec2 x) {
return fract(cos(mod(dot(x, vec2(13.9898, 8.141)), 3.14)) * 43758.5453);
}
vec2 rand2(vec2 x) {
return fract(cos(mod(vec2(dot(x, vec2(13.9898, 8.141)),
dot(x, vec2(3.4562, 17.398))), vec2(3.14))) * 43758.5453);
}
vec3 rand3(vec2 x) {
return fract(cos(mod(vec3(dot(x, vec2(13.9898, 8.141)),
dot(x, vec2(3.4562, 17.398)),
dot(x, vec2(13.254, 5.867))), vec3(3.14))) * 43758.5453);
}
vec3 rgb2hsv(vec3 c) {
vec4 K = vec4(0.0, -1.0 / 3.0, 2.0 / 3.0, -1.0);
vec4 p = c.g < c.b ? vec4(c.bg, K.wz) : vec4(c.gb, K.xy);
vec4 q = c.r < p.x ? vec4(p.xyw, c.r) : vec4(c.r, p.yzx);
float d = q.x - min(q.w, q.y);
float e = 1.0e-10;
return vec3(abs(q.z + (q.w - q.y) / (6.0 * d + e)), d / (q.x + e), q.x);
}
vec3 hsv2rgb(vec3 c) {
vec4 K = vec4(1.0, 2.0 / 3.0, 1.0 / 3.0, 3.0);
vec3 p = abs(fract(c.xxx + K.xyz) * 6.0 - K.www);
return c.z * mix(K.xxx, clamp(p - K.xxx, 0.0, 1.0), c.y);
}
const float o3007790_ANIM = 0; // {default:0.5, label:Animation, max:1, min:0, name:ANIM, step:0.01, type:named_parameter}
const float o3007790_OFFSET = 0; // {default:0.5, label:Offset, max:1, min:0, name:OFFSET, step:0.01, type:named_parameter}
float perlin(vec2 uv, vec2 size, int iterations, float persistence, int seed) {
vec2 seed2 = rand2(vec2(float(seed), 1.0-float(seed)));
float rv = 0.0;
float coef = 1.0;
float acc = 0.0;
for (int i = 0; i < iterations; ++i) {
vec2 step = vec2(1.0)/size;
vec2 xy = floor(uv*size);
float f0 = rand(seed2+mod(xy, size));
float f1 = rand(seed2+mod(xy+vec2(1.0, 0.0), size));
float f2 = rand(seed2+mod(xy+vec2(0.0, 1.0), size));
float f3 = rand(seed2+mod(xy+vec2(1.0, 1.0), size));
vec2 mixval = smoothstep(0.0, 1.0, fract(uv*size));
rv += coef * mix(mix(f0, f1, mixval.x), mix(f2, f3, mixval.x), mixval.y);
acc += coef;
size *= 2.0;
coef *= persistence;
}
return rv / acc;
}
float shape_circle(vec2 uv, float sides, float size, float edge) {
uv = 2.0*uv-1.0;
edge = max(edge, 1.0e-8);
float distance = length(uv);
return clamp((1.0-distance/size)/edge, 0.0, 1.0);
}
float shape_polygon(vec2 uv, float sides, float size, float edge) {
uv = 2.0*uv-1.0;
edge = max(edge, 1.0e-8);
float angle = atan(uv.x, uv.y)+3.14159265359;
float slice = 6.28318530718/sides;
return clamp((1.0-(cos(floor(0.5+angle/slice)*slice-angle)*length(uv))/size)/edge, 0.0, 1.0);
}
float shape_star(vec2 uv, float sides, float size, float edge) {
uv = 2.0*uv-1.0;
edge = max(edge, 1.0e-8);
float angle = atan(uv.x, uv.y);
float slice = 6.28318530718/sides;
return clamp((1.0-(cos(floor(angle*sides/6.28318530718-0.5+2.0*step(fract(angle*sides/6.28318530718), 0.5))*slice-angle)*length(uv))/size)/edge, 0.0, 1.0);
}
float shape_curved_star(vec2 uv, float sides, float size, float edge) {
uv = 2.0*uv-1.0;
edge = max(edge, 1.0e-8);
float angle = 2.0*(atan(uv.x, uv.y)+3.14159265359);
float slice = 6.28318530718/sides;
return clamp((1.0-cos(floor(0.5+0.5*angle/slice)*2.0*slice-angle)*length(uv)/size)/edge, 0.0, 1.0);
}
float shape_rays(vec2 uv, float sides, float size, float edge) {
uv = 2.0*uv-1.0;
edge = 0.5*max(edge, 1.0e-8)*size;
float slice = 6.28318530718/sides;
float angle = mod(atan(uv.x, uv.y)+3.14159265359, slice)/slice;
return clamp(min((size-angle)/edge, angle/edge), 0.0, 1.0);
}
vec2 transform2_clamp(vec2 uv) {
return clamp(uv, vec2(0.0), vec2(1.0));
}
vec2 transform2(vec2 uv, vec2 translate, float rotate, vec2 scale) {
vec2 rv;
uv -= translate;
uv -= vec2(0.5);
rv.x = cos(rotate)*uv.x + sin(rotate)*uv.y;
rv.y = -sin(rotate)*uv.x + cos(rotate)*uv.y;
rv /= scale;
rv += vec2(0.5);
return rv;
}
vec2 rotate(vec2 uv, vec2 center, float rotate) {
vec2 rv;
uv -= center;
rv.x = cos(rotate)*uv.x + sin(rotate)*uv.y;
rv.y = -sin(rotate)*uv.x + cos(rotate)*uv.y;
rv += center;
return rv;
}
// Based on https://www.shadertoy.com/view/ldl3W8
// The MIT License
// Copyright © 2013 Inigo Quilez
vec3 iq_voronoi(vec2 x, vec2 size, vec2 stretch, float randomness, vec2 seed) {
vec2 n = floor(x);
vec2 f = fract(x);
vec2 mg, mr, mc;
float md = 8.0;
for (int j=-1; j<=1; j++)
for (int i=-1; i<=1; i++) {
vec2 g = vec2(float(i),float(j));
vec2 o = randomness*rand2(seed + mod(n + g + size, size));
vec2 c = g + o;
vec2 r = c - f;
vec2 rr = r*stretch;
float d = dot(rr,rr);
if (d<md) {
mc = c;
md = d;
mr = r;
mg = g;
}
}
md = 8.0;
for (int j=-2; j<=2; j++)
for (int i=-2; i<=2; i++) {
vec2 g = mg + vec2(float(i),float(j));
vec2 o = randomness*rand2(seed + mod(n + g + size, size));
vec2 r = g + o - f;
vec2 rr = (mr-r)*stretch;
if (dot(rr,rr)>0.00001)
md = min(md, dot(0.5*(mr+r)*stretch, normalize((r-mr)*stretch)));
}
return vec3(md, mc+n);
}
vec4 voronoi(vec2 uv, vec2 size, vec2 stretch, float intensity, float randomness, int seed) {
uv *= size;
vec3 v = iq_voronoi(uv, size, stretch, randomness, rand2(vec2(float(seed), 1.0-float(seed))));
return vec4(v.yz, intensity*length((uv-v.yz)*stretch), v.x);
}
vec3 blend_normal(vec2 uv, vec3 c1, vec3 c2, float opacity) {
return opacity*c1 + (1.0-opacity)*c2;
}
vec3 blend_dissolve(vec2 uv, vec3 c1, vec3 c2, float opacity) {
if (rand(uv) < opacity) {
return c1;
} else {
return c2;
}
}
vec3 blend_multiply(vec2 uv, vec3 c1, vec3 c2, float opacity) {
return opacity*c1*c2 + (1.0-opacity)*c2;
}
vec3 blend_screen(vec2 uv, vec3 c1, vec3 c2, float opacity) {
return opacity*(1.0-(1.0-c1)*(1.0-c2)) + (1.0-opacity)*c2;
}
float blend_overlay_f(float c1, float c2) {
return (c1 < 0.5) ? (2.0*c1*c2) : (1.0-2.0*(1.0-c1)*(1.0-c2));
}
vec3 blend_overlay(vec2 uv, vec3 c1, vec3 c2, float opacity) {
return opacity*vec3(blend_overlay_f(c1.x, c2.x), blend_overlay_f(c1.y, c2.y), blend_overlay_f(c1.z, c2.z)) + (1.0-opacity)*c2;
}
vec3 blend_hard_light(vec2 uv, vec3 c1, vec3 c2, float opacity) {
return opacity*0.5*(c1*c2+blend_overlay(uv, c1, c2, 1.0)) + (1.0-opacity)*c2;
}
float blend_soft_light_f(float c1, float c2) {
return (c2 < 0.5) ? (2.0*c1*c2+c1*c1*(1.0-2.0*c2)) : 2.0*c1*(1.0-c2)+sqrt(c1)*(2.0*c2-1.0);
}
vec3 blend_soft_light(vec2 uv, vec3 c1, vec3 c2, float opacity) {
return opacity*vec3(blend_soft_light_f(c1.x, c2.x), blend_soft_light_f(c1.y, c2.y), blend_soft_light_f(c1.z, c2.z)) + (1.0-opacity)*c2;
}
float blend_burn_f(float c1, float c2) {
return (c1==0.0)?c1:max((1.0-((1.0-c2)/c1)),0.0);
}
vec3 blend_burn(vec2 uv, vec3 c1, vec3 c2, float opacity) {
return opacity*vec3(blend_burn_f(c1.x, c2.x), blend_burn_f(c1.y, c2.y), blend_burn_f(c1.z, c2.z)) + (1.0-opacity)*c2;
}
float blend_dodge_f(float c1, float c2) {
return (c1==1.0)?c1:min(c2/(1.0-c1),1.0);
}
vec3 blend_dodge(vec2 uv, vec3 c1, vec3 c2, float opacity) {
return opacity*vec3(blend_dodge_f(c1.x, c2.x), blend_dodge_f(c1.y, c2.y), blend_dodge_f(c1.z, c2.z)) + (1.0-opacity)*c2;
}
vec3 blend_lighten(vec2 uv, vec3 c1, vec3 c2, float opacity) {
return opacity*max(c1, c2) + (1.0-opacity)*c2;
}
vec3 blend_darken(vec2 uv, vec3 c1, vec3 c2, float opacity) {
return opacity*min(c1, c2) + (1.0-opacity)*c2;
}
vec3 blend_difference(vec2 uv, vec3 c1, vec3 c2, float opacity) {
return opacity*clamp(c2-c1, vec3(0.0), vec3(1.0)) + (1.0-opacity)*c2;
}
vec3 process_normal_default(vec3 v, float multiplier) {
return 0.5*normalize(v.xyz*multiplier+vec3(0.0, 0.0, -1.0))+vec3(0.5);
}
vec3 process_normal_opengl(vec3 v, float multiplier) {
return 0.5*normalize(v.xyz*multiplier+vec3(0.0, 0.0, 1.0))+vec3(0.5);
}
vec3 process_normal_directx(vec3 v, float multiplier) {
return 0.5*normalize(v.xyz*vec3(1.0, -1.0, 1.0)*multiplier+vec3(0.0, 0.0, 1.0))+vec3(0.5);
}
const float p_o1022114_albedo_color_r = 0.435868144;
const float p_o1022114_albedo_color_g = 0.000000000;
const float p_o1022114_albedo_color_b = 0.000000000;
const float p_o1022114_albedo_color_a = 1.000000000;
const float p_o1022114_metallic = 0.250000000;
const float p_o1022114_roughness = 0.000000000;
const float p_o1022114_emission_energy = 1.000000000;
const float p_o1022114_normal = 1.000000000;
const float p_o1022114_ao = 1.000000000;
const float p_o1022114_depth_scale = 0.500000000;
float o1022114_input_depth_tex(vec2 uv) {
return 0.0;
}
const float p_o2599821_amount = -0.100000001;
const float p_o2964135_default_in1 = 0.000000000;
const float p_o2964135_default_in2 = 0.000000000;
const float p_o2720635_value = 0.380000000;
const float p_o2720635_width = 0.830000000;
const float p_o2720635_contrast = 0.140000000;
const float p_o2609904_default_in1 = 0.000000000;
const float p_o2609904_default_in2 = 0.000000000;
const float p_o1839956_default_in1 = 0.000000000;
const float p_o1839956_default_in2 = 1.000000000;
const float p_o1666169_amount = 1.000000000;
const float p_o3278853_cx = 0.000000000;
const float p_o3278853_cy = 0.000000000;
const float p_o1730094_translate_x = 0.000000000;
const float p_o1730094_translate_y = 0.000000000;
const float p_o1730094_rotate = 0.000000000;
const float p_o1730094_scale_x = 2.000000000;
const float p_o1730094_scale_y = 2.000000000;
const float p_o1711848_default_in1 = 0.000000000;
const float p_o1711848_default_in2 = 0.200000000;
const float p_o1053514_default_in1 = 0.000000000;
const float p_o1053514_default_in2 = 0.000000000;
const float p_o2016703_in_min = -0.280000000;
const float p_o2016703_in_max = 1.000000000;
const float p_o2016703_out_min = 0.000000000;
const float p_o2016703_out_max = 1.000000000;
const float p_o2003912_gradient_0_pos = 0.000000000;
const float p_o2003912_gradient_0_r = 0.000000000;
const float p_o2003912_gradient_0_g = 0.000000000;
const float p_o2003912_gradient_0_b = 0.000000000;
const float p_o2003912_gradient_0_a = 1.000000000;
const float p_o2003912_gradient_1_pos = 1.000000000;
const float p_o2003912_gradient_1_r = 1.000000000;
const float p_o2003912_gradient_1_g = 1.000000000;
const float p_o2003912_gradient_1_b = 1.000000000;
const float p_o2003912_gradient_1_a = 1.000000000;
vec4 o2003912_gradient_gradient_fct(float x) {
if (x < p_o2003912_gradient_0_pos) {
return vec4(p_o2003912_gradient_0_r,p_o2003912_gradient_0_g,p_o2003912_gradient_0_b,p_o2003912_gradient_0_a);
} else if (x < p_o2003912_gradient_1_pos) {
return mix(vec4(p_o2003912_gradient_0_r,p_o2003912_gradient_0_g,p_o2003912_gradient_0_b,p_o2003912_gradient_0_a), vec4(p_o2003912_gradient_1_r,p_o2003912_gradient_1_g,p_o2003912_gradient_1_b,p_o2003912_gradient_1_a), ((x-p_o2003912_gradient_0_pos)/(p_o2003912_gradient_1_pos-p_o2003912_gradient_0_pos)));
}
return vec4(p_o2003912_gradient_1_r,p_o2003912_gradient_1_g,p_o2003912_gradient_1_b,p_o2003912_gradient_1_a);
}
const float p_o1874989_default_in2 = 0.550000000;
const float p_o1646672_sides = 2.000000000;
const float p_o1646672_radius = 1.000000000;
const float p_o1646672_edge = 5.000000000;
const int seed_o1646669 = -20210;
const float p_o1646669_scale_x = 32.000000000;
const float p_o1646669_scale_y = 32.000000000;
const float p_o1646669_iterations = 8.000000000;
const float p_o1646669_persistence = 0.400000000;
const float p_o1227913_amount = 1.000000000;
const float p_o1227347_sides = 2.000000000;
const float p_o1227347_radius = 1.000000000;
const float p_o1227347_edge = 1.000000000;
const float p_o3232740_cx = 0.000000000;
const float p_o3232740_cy = 0.000000000;
const int seed_o1383595 = -22407;
const float p_o1383595_scale_x = 7.000000000;
const float p_o1383595_scale_y = 7.000000000;
const float p_o1383595_iterations = 2.000000000;
const float p_o1383595_persistence = 0.950000000;
const float p_o1170149_radius = 1.000000000;
const float p_o1170149_repeat = 1.000000000;
const float p_o1175160_cx = 0.000000000;
const float p_o1175160_cy = 0.000000000;
const float p_o1175160_rotate = 180.000000000;
const float p_o3180989_translate_y = 0.000000000;
const float p_o1107567_amount = 1.000000000;
const float p_o1115718_translate_x = 0.000000000;
const float p_o1115718_translate_y = -0.649999976;
const float p_o1115718_rotate = 0.000000000;
const float p_o1115718_scale_x = 1.000000000;
const float p_o1115718_scale_y = 1.000000000;
const int seed_o1098035 = -53939;
const float p_o1098035_scale_x = 64.000000000;
const float p_o1098035_scale_y = 6.000000000;
const float p_o1098035_stretch_x = 1.000000000;
const float p_o1098035_stretch_y = 1.000000000;
const float p_o1098035_intensity = 1.000000000;
const float p_o1098035_randomness = 0.850000000;
const float p_o1135497_gradient_0_pos = 0.718181818;
const float p_o1135497_gradient_0_r = 0.000000000;
const float p_o1135497_gradient_0_g = 0.000000000;
const float p_o1135497_gradient_0_b = 0.000000000;
const float p_o1135497_gradient_0_a = 1.000000000;
const float p_o1135497_gradient_1_pos = 0.918181818;
const float p_o1135497_gradient_1_r = 1.000000000;
const float p_o1135497_gradient_1_g = 1.000000000;
const float p_o1135497_gradient_1_b = 1.000000000;
const float p_o1135497_gradient_1_a = 1.000000000;
const float p_o1135497_gradient_2_pos = 0.945454545;
const float p_o1135497_gradient_2_r = 0.000000000;
const float p_o1135497_gradient_2_g = 0.000000000;
const float p_o1135497_gradient_2_b = 0.000000000;
const float p_o1135497_gradient_2_a = 1.000000000;
vec4 o1135497_gradient_gradient_fct(float x) {
if (x < p_o1135497_gradient_0_pos) {
return vec4(p_o1135497_gradient_0_r,p_o1135497_gradient_0_g,p_o1135497_gradient_0_b,p_o1135497_gradient_0_a);
} else if (x < p_o1135497_gradient_1_pos) {
return mix(vec4(p_o1135497_gradient_0_r,p_o1135497_gradient_0_g,p_o1135497_gradient_0_b,p_o1135497_gradient_0_a), vec4(p_o1135497_gradient_1_r,p_o1135497_gradient_1_g,p_o1135497_gradient_1_b,p_o1135497_gradient_1_a), ((x-p_o1135497_gradient_0_pos)/(p_o1135497_gradient_1_pos-p_o1135497_gradient_0_pos)));
} else if (x < p_o1135497_gradient_2_pos) {
return mix(vec4(p_o1135497_gradient_1_r,p_o1135497_gradient_1_g,p_o1135497_gradient_1_b,p_o1135497_gradient_1_a), vec4(p_o1135497_gradient_2_r,p_o1135497_gradient_2_g,p_o1135497_gradient_2_b,p_o1135497_gradient_2_a), ((x-p_o1135497_gradient_1_pos)/(p_o1135497_gradient_2_pos-p_o1135497_gradient_1_pos)));
}
return vec4(p_o1135497_gradient_2_r,p_o1135497_gradient_2_g,p_o1135497_gradient_2_b,p_o1135497_gradient_2_a);
}
const float p_o1147502_in_min = -1.950000000;
const float p_o1147502_in_max = 2.510000000;
const float p_o1147502_out_min = 0.080000000;
const float p_o1147502_out_max = 2.000000000;
const float p_o1079786_default_in1 = 0.000000000;
const float p_o1079786_default_in2 = 0.000000000;
const float p_o1544215_amount = 0.340000000;
const float p_o3153493_translate_y = 0.000000000;
const int seed_o1541301 = -32562;
const float p_o1541301_scale_x = 12.000000000;
const float p_o1541301_scale_y = 1.000000000;
const float p_o1541301_iterations = 1.000000000;
const float p_o1541301_persistence = 0.500000000;
const float p_o1047621_repeat = 1.000000000;
const float p_o1047621_rotate = -90.000000000;
const float p_o1047621_gradient_0_pos = 0.000000000;
const float p_o1047621_gradient_0_r = 0.000000000;
const float p_o1047621_gradient_0_g = 0.000000000;
const float p_o1047621_gradient_0_b = 0.000000000;
const float p_o1047621_gradient_0_a = 1.000000000;
const float p_o1047621_gradient_1_pos = 1.000000000;
const float p_o1047621_gradient_1_r = 1.000000000;
const float p_o1047621_gradient_1_g = 1.000000000;
const float p_o1047621_gradient_1_b = 1.000000000;
const float p_o1047621_gradient_1_a = 1.000000000;
vec4 o1047621_gradient_gradient_fct(float x) {
if (x < p_o1047621_gradient_0_pos) {
return vec4(p_o1047621_gradient_0_r,p_o1047621_gradient_0_g,p_o1047621_gradient_0_b,p_o1047621_gradient_0_a);
} else if (x < p_o1047621_gradient_1_pos) {
return mix(vec4(p_o1047621_gradient_0_r,p_o1047621_gradient_0_g,p_o1047621_gradient_0_b,p_o1047621_gradient_0_a), vec4(p_o1047621_gradient_1_r,p_o1047621_gradient_1_g,p_o1047621_gradient_1_b,p_o1047621_gradient_1_a), ((x-p_o1047621_gradient_0_pos)/(p_o1047621_gradient_1_pos-p_o1047621_gradient_0_pos)));
}
return vec4(p_o1047621_gradient_1_r,p_o1047621_gradient_1_g,p_o1047621_gradient_1_b,p_o1047621_gradient_1_a);
}
const float p_o2313099_curve_0_x = 0.000000000;
const float p_o2313099_curve_0_y = 0.887122393;
const float p_o2313099_curve_0_ls = 0.000000000;
const float p_o2313099_curve_0_rs = -0.653084097;
const float p_o2313099_curve_1_x = 0.451992810;
const float p_o2313099_curve_1_y = 0.484896600;
const float p_o2313099_curve_1_ls = -0.936088853;
const float p_o2313099_curve_1_rs = -1.978554322;
const float p_o2313099_curve_2_x = 1.000000000;
const float p_o2313099_curve_2_y = 0.000000000;
const float p_o2313099_curve_2_ls = 0.068362479;
const float p_o2313099_curve_2_rs = -0.000000000;
float o2313099_curve_curve_fct(float x) {
if (x <= p_o2313099_curve_1_x) {
float dx = x - p_o2313099_curve_0_x;
float d = p_o2313099_curve_1_x - p_o2313099_curve_0_x;
float t = dx/d;
float omt = (1.0 - t);
float omt2 = omt * omt;
float omt3 = omt2 * omt;
float t2 = t * t;
float t3 = t2 * t;
d /= 3.0;
float y1 = p_o2313099_curve_0_y;
float yac = p_o2313099_curve_0_y + d*p_o2313099_curve_0_rs;
float ybc = p_o2313099_curve_1_y - d*p_o2313099_curve_1_ls;
float y2 = p_o2313099_curve_1_y;
return y1*omt3 + yac*omt2*t*3.0 + ybc*omt*t2*3.0 + y2*t3;
}
if (x <= p_o2313099_curve_2_x) {
float dx = x - p_o2313099_curve_1_x;
float d = p_o2313099_curve_2_x - p_o2313099_curve_1_x;
float t = dx/d;
float omt = (1.0 - t);
float omt2 = omt * omt;
float omt3 = omt2 * omt;
float t2 = t * t;
float t3 = t2 * t;
d /= 3.0;
float y1 = p_o2313099_curve_1_y;
float yac = p_o2313099_curve_1_y + d*p_o2313099_curve_1_rs;
float ybc = p_o2313099_curve_2_y - d*p_o2313099_curve_2_ls;
float y2 = p_o2313099_curve_2_y;
return y1*omt3 + yac*omt2*t*3.0 + ybc*omt*t2*3.0 + y2*t3;
}
}
const float p_o2047992_curve_0_x = 0.000000000;
const float p_o2047992_curve_0_y = 1.000000000;
const float p_o2047992_curve_0_ls = 0.000000000;
const float p_o2047992_curve_0_rs = -37.443563156;
const float p_o2047992_curve_1_x = 0.045742754;
const float p_o2047992_curve_1_y = 0.004769504;
const float p_o2047992_curve_1_ls = 0.000000000;
const float p_o2047992_curve_1_rs = -0.000000000;
const float p_o2047992_curve_2_x = 0.202898547;
const float p_o2047992_curve_2_y = 0.069952309;
const float p_o2047992_curve_2_ls = 1.276485086;
const float p_o2047992_curve_2_rs = 0.566182865;
const float p_o2047992_curve_3_x = 0.633605063;
const float p_o2047992_curve_3_y = 0.527821898;
const float p_o2047992_curve_3_ls = 2.990280303;
const float p_o2047992_curve_3_rs = 3.026153690;
const float p_o2047992_curve_4_x = 1.000000000;
const float p_o2047992_curve_4_y = 1.000000000;
const float p_o2047992_curve_4_ls = 0.266607613;
const float p_o2047992_curve_4_rs = -0.000000000;
float o2047992_curve_curve_fct(float x) {
if (x <= p_o2047992_curve_1_x) {
float dx = x - p_o2047992_curve_0_x;
float d = p_o2047992_curve_1_x - p_o2047992_curve_0_x;
float t = dx/d;
float omt = (1.0 - t);
float omt2 = omt * omt;
float omt3 = omt2 * omt;
float t2 = t * t;
float t3 = t2 * t;
d /= 3.0;
float y1 = p_o2047992_curve_0_y;
float yac = p_o2047992_curve_0_y + d*p_o2047992_curve_0_rs;
float ybc = p_o2047992_curve_1_y - d*p_o2047992_curve_1_ls;
float y2 = p_o2047992_curve_1_y;
return y1*omt3 + yac*omt2*t*3.0 + ybc*omt*t2*3.0 + y2*t3;
}
if (x <= p_o2047992_curve_2_x) {
float dx = x - p_o2047992_curve_1_x;
float d = p_o2047992_curve_2_x - p_o2047992_curve_1_x;
float t = dx/d;
float omt = (1.0 - t);
float omt2 = omt * omt;
float omt3 = omt2 * omt;
float t2 = t * t;
float t3 = t2 * t;
d /= 3.0;
float y1 = p_o2047992_curve_1_y;
float yac = p_o2047992_curve_1_y + d*p_o2047992_curve_1_rs;
float ybc = p_o2047992_curve_2_y - d*p_o2047992_curve_2_ls;
float y2 = p_o2047992_curve_2_y;
return y1*omt3 + yac*omt2*t*3.0 + ybc*omt*t2*3.0 + y2*t3;
}
if (x <= p_o2047992_curve_3_x) {
float dx = x - p_o2047992_curve_2_x;
float d = p_o2047992_curve_3_x - p_o2047992_curve_2_x;
float t = dx/d;
float omt = (1.0 - t);
float omt2 = omt * omt;
float omt3 = omt2 * omt;
float t2 = t * t;
float t3 = t2 * t;
d /= 3.0;
float y1 = p_o2047992_curve_2_y;
float yac = p_o2047992_curve_2_y + d*p_o2047992_curve_2_rs;
float ybc = p_o2047992_curve_3_y - d*p_o2047992_curve_3_ls;
float y2 = p_o2047992_curve_3_y;
return y1*omt3 + yac*omt2*t*3.0 + ybc*omt*t2*3.0 + y2*t3;
}
if (x <= p_o2047992_curve_4_x) {
float dx = x - p_o2047992_curve_3_x;
float d = p_o2047992_curve_4_x - p_o2047992_curve_3_x;
float t = dx/d;
float omt = (1.0 - t);
float omt2 = omt * omt;
float omt3 = omt2 * omt;
float t2 = t * t;
float t3 = t2 * t;
d /= 3.0;
float y1 = p_o2047992_curve_3_y;
float yac = p_o2047992_curve_3_y + d*p_o2047992_curve_3_rs;
float ybc = p_o2047992_curve_4_y - d*p_o2047992_curve_4_ls;
float y2 = p_o2047992_curve_4_y;
return y1*omt3 + yac*omt2*t*3.0 + ybc*omt*t2*3.0 + y2*t3;
}
}
float o2599821_input_in(vec2 uv) {
float o1874989_0_clamp_false = (o3007790_ANIM)*p_o1874989_default_in2;
float o1874989_0_clamp_true = clamp(o1874989_0_clamp_false, 0.0, 1.0);
float o1874989_0_2_f = o1874989_0_clamp_false;
vec4 o2003912_0_1_rgba = o2003912_gradient_gradient_fct(o1874989_0_2_f);
vec4 o2016703_0_1_rgba = vec4(vec3(p_o2016703_out_min)+(o2003912_0_1_rgba.rgb-vec3(p_o2016703_in_min))*vec3((p_o2016703_out_max-p_o2016703_out_min)/(p_o2016703_in_max-p_o2016703_in_min)), o2003912_0_1_rgba.a);
float o1053514_0_clamp_false = abs((dot((o2016703_0_1_rgba).rgb, vec3(1.0))/3.0));
float o1053514_0_clamp_true = clamp(o1053514_0_clamp_false, 0.0, 1.0);
float o1053514_0_1_f = o1053514_0_clamp_true;
float o1711848_0_clamp_false = o1053514_0_1_f+p_o1711848_default_in2;
float o1711848_0_clamp_true = clamp(o1711848_0_clamp_false, 0.0, 1.0);
float o1711848_0_2_f = o1711848_0_clamp_false;
float o1646669_0_1_f = perlin((transform2_clamp(transform2((rotate((uv), vec2(0.5+p_o3278853_cx, 0.5+p_o3278853_cy), (o3007790_OFFSET * 530.0)*0.01745329251)), vec2(p_o1730094_translate_x*(2.0*1.0-1.0), p_o1730094_translate_y*(2.0*1.0-1.0)), p_o1730094_rotate*0.01745329251*(2.0*1.0-1.0), vec2(p_o1730094_scale_x*(2.0*o1711848_0_2_f-1.0), p_o1730094_scale_y*(2.0*o1711848_0_2_f-1.0))))), vec2(p_o1646669_scale_x, p_o1646669_scale_y), int(p_o1646669_iterations), p_o1646669_persistence, seed_o1646669);
float o1646672_0_1_f = shape_circle((transform2_clamp(transform2((rotate((uv), vec2(0.5+p_o3278853_cx, 0.5+p_o3278853_cy), (o3007790_OFFSET * 530.0)*0.01745329251)), vec2(p_o1730094_translate_x*(2.0*1.0-1.0), p_o1730094_translate_y*(2.0*1.0-1.0)), p_o1730094_rotate*0.01745329251*(2.0*1.0-1.0), vec2(p_o1730094_scale_x*(2.0*o1711848_0_2_f-1.0), p_o1730094_scale_y*(2.0*o1711848_0_2_f-1.0))))), p_o1646672_sides, p_o1646672_radius*1.0, p_o1646672_edge*o1646669_0_1_f);
vec4 o1730094_0_1_rgba = vec4(vec3(o1646672_0_1_f), 1.0);
vec4 o3278853_0_1_rgba = o1730094_0_1_rgba;
float o1383595_0_1_f = perlin((rotate((uv), vec2(0.5+p_o3232740_cx, 0.5+p_o3232740_cy), (o3007790_OFFSET * 180.0)*0.01745329251)), vec2(p_o1383595_scale_x, p_o1383595_scale_y), int(p_o1383595_iterations), p_o1383595_persistence, seed_o1383595);
vec4 o3232740_0_1_rgba = vec4(vec3(o1383595_0_1_f), 1.0);
float o1227347_0_1_f = shape_circle((uv), p_o1227347_sides, p_o1227347_radius*(dot((o3232740_0_1_rgba).rgb, vec3(1.0))/3.0), p_o1227347_edge*1.0);
float o1874989_3_clamp_false = (o3007790_ANIM)*p_o1874989_default_in2;
float o1874989_3_clamp_true = clamp(o1874989_3_clamp_false, 0.0, 1.0);
float o1874989_0_5_f = o1874989_3_clamp_false;
vec4 o2003912_0_3_rgba = o2003912_gradient_gradient_fct(o1874989_0_5_f);
vec4 o2016703_0_3_rgba = vec4(vec3(p_o2016703_out_min)+(o2003912_0_3_rgba.rgb-vec3(p_o2016703_in_min))*vec3((p_o2016703_out_max-p_o2016703_out_min)/(p_o2016703_in_max-p_o2016703_in_min)), o2003912_0_3_rgba.a);
float o1053514_2_clamp_false = abs((dot((o2016703_0_3_rgba).rgb, vec3(1.0))/3.0));
float o1053514_2_clamp_true = clamp(o1053514_2_clamp_false, 0.0, 1.0);
float o1053514_0_3_f = o1053514_2_clamp_true;
vec4 o1098035_0_xyzw = voronoi((fract(transform2(((rotate((vec2(fract(p_o1170149_repeat*atan((uv).y-0.5, (uv).x-0.5)*0.15915494309), min(0.99999, 2.0/p_o1170149_radius*length((uv)-vec2(0.5))))), vec2(0.5+p_o1175160_cx, 0.5+p_o1175160_cy), p_o1175160_rotate*0.01745329251))-vec2((o3007790_OFFSET * 1.32), p_o3180989_translate_y)), vec2(p_o1115718_translate_x*(2.0*1.0-1.0), p_o1115718_translate_y*(2.0*o1053514_0_3_f-1.0)), p_o1115718_rotate*0.01745329251*(2.0*1.0-1.0), vec2(p_o1115718_scale_x*(2.0*1.0-1.0), p_o1115718_scale_y*(2.0*1.0-1.0))))), vec2(p_o1098035_scale_x, p_o1098035_scale_y), vec2(p_o1098035_stretch_y, p_o1098035_stretch_x), p_o1098035_intensity, p_o1098035_randomness, seed_o1098035);float o1098035_0_1_f = o1098035_0_xyzw.z;
vec4 o1099342_0_1_rgba = vec4(vec3(1.0)-vec4(vec3(o1098035_0_1_f), 1.0).rgb, vec4(vec3(o1098035_0_1_f), 1.0).a);
vec4 o1115718_0_1_rgba = o1099342_0_1_rgba;
float o1541301_0_1_f = perlin((((rotate((vec2(fract(p_o1170149_repeat*atan((uv).y-0.5, (uv).x-0.5)*0.15915494309), min(0.99999, 2.0/p_o1170149_radius*length((uv)-vec2(0.5))))), vec2(0.5+p_o1175160_cx, 0.5+p_o1175160_cy), p_o1175160_rotate*0.01745329251))-vec2((o3007790_OFFSET * 1.32), p_o3180989_translate_y))-vec2((o3007790_OFFSET * 3.5), p_o3153493_translate_y)), vec2(p_o1541301_scale_x, p_o1541301_scale_y), int(p_o1541301_iterations), p_o1541301_persistence, seed_o1541301);
vec4 o3153493_0_1_rgba = vec4(vec3(o1541301_0_1_f), 1.0);
float o1047621_0_r = 0.5+(cos(p_o1047621_rotate*0.01745329251)*(((rotate((vec2(fract(p_o1170149_repeat*atan((uv).y-0.5, (uv).x-0.5)*0.15915494309), min(0.99999, 2.0/p_o1170149_radius*length((uv)-vec2(0.5))))), vec2(0.5+p_o1175160_cx, 0.5+p_o1175160_cy), p_o1175160_rotate*0.01745329251))-vec2((o3007790_OFFSET * 1.32), p_o3180989_translate_y)).x-0.5)+sin(p_o1047621_rotate*0.01745329251)*(((rotate((vec2(fract(p_o1170149_repeat*atan((uv).y-0.5, (uv).x-0.5)*0.15915494309), min(0.99999, 2.0/p_o1170149_radius*length((uv)-vec2(0.5))))), vec2(0.5+p_o1175160_cx, 0.5+p_o1175160_cy), p_o1175160_rotate*0.01745329251))-vec2((o3007790_OFFSET * 1.32), p_o3180989_translate_y)).y-0.5))/(cos(abs(mod(p_o1047621_rotate, 90.0)-45.0)*0.01745329251)*1.41421356237);vec4 o1047621_0_1_rgba = o1047621_gradient_gradient_fct(fract(o1047621_0_r*p_o1047621_repeat));
vec4 o1544215_0_s1 = o3153493_0_1_rgba;
vec4 o1544215_0_s2 = o1047621_0_1_rgba;
float o1544215_0_a = p_o1544215_amount*1.0;
vec4 o1544215_0_2_rgba = vec4(blend_normal(((rotate((vec2(fract(p_o1170149_repeat*atan((uv).y-0.5, (uv).x-0.5)*0.15915494309), min(0.99999, 2.0/p_o1170149_radius*length((uv)-vec2(0.5))))), vec2(0.5+p_o1175160_cx, 0.5+p_o1175160_cy), p_o1175160_rotate*0.01745329251))-vec2((o3007790_OFFSET * 1.32), p_o3180989_translate_y)), o1544215_0_s1.rgb, o1544215_0_s2.rgb, o1544215_0_a*o1544215_0_s1.a), min(1.0, o1544215_0_s2.a+o1544215_0_a*o1544215_0_s1.a));
float o1079786_0_clamp_false = (dot((o1544215_0_2_rgba).rgb, vec3(1.0))/3.0)-o1053514_0_3_f;
float o1079786_0_clamp_true = clamp(o1079786_0_clamp_false, 0.0, 1.0);
float o1079786_0_1_f = o1079786_0_clamp_false;
vec4 o1147502_0_1_rgba = vec4(vec3(p_o1147502_out_min)+(vec4(vec3(o1079786_0_1_f), 1.0).rgb-vec3(p_o1147502_in_min))*vec3((p_o1147502_out_max-p_o1147502_out_min)/(p_o1147502_in_max-p_o1147502_in_min)), vec4(vec3(o1079786_0_1_f), 1.0).a);
vec4 o1135497_0_1_rgba = o1135497_gradient_gradient_fct((dot((o1147502_0_1_rgba).rgb, vec3(1.0))/3.0));
vec4 o1107567_0_s1 = o1115718_0_1_rgba;
vec4 o1107567_0_s2 = o1135497_0_1_rgba;
float o1107567_0_a = p_o1107567_amount*1.0;
vec4 o1107567_0_2_rgba = vec4(blend_multiply(((rotate((vec2(fract(p_o1170149_repeat*atan((uv).y-0.5, (uv).x-0.5)*0.15915494309), min(0.99999, 2.0/p_o1170149_radius*length((uv)-vec2(0.5))))), vec2(0.5+p_o1175160_cx, 0.5+p_o1175160_cy), p_o1175160_rotate*0.01745329251))-vec2((o3007790_OFFSET * 1.32), p_o3180989_translate_y)), o1107567_0_s1.rgb, o1107567_0_s2.rgb, o1107567_0_a*o1107567_0_s1.a), min(1.0, o1107567_0_s2.a+o1107567_0_a*o1107567_0_s1.a));
vec4 o3180989_0_1_rgba = o1107567_0_2_rgba;
vec4 o1175160_0_1_rgba = o3180989_0_1_rgba;
vec4 o1170149_0_1_rgba = o1175160_0_1_rgba;
vec4 o1227913_0_s1 = vec4(vec3(o1227347_0_1_f), 1.0);
vec4 o1227913_0_s2 = o1170149_0_1_rgba;
float o1227913_0_a = p_o1227913_amount*1.0;
vec4 o1227913_0_2_rgba = vec4(blend_multiply((uv), o1227913_0_s1.rgb, o1227913_0_s2.rgb, o1227913_0_a*o1227913_0_s1.a), min(1.0, o1227913_0_s2.a+o1227913_0_a*o1227913_0_s1.a));
float o1874989_6_clamp_false = (o3007790_ANIM)*p_o1874989_default_in2;
float o1874989_6_clamp_true = clamp(o1874989_6_clamp_false, 0.0, 1.0);
float o1874989_0_8_f = o1874989_6_clamp_false;
vec4 o2003912_0_5_rgba = o2003912_gradient_gradient_fct(o1874989_0_8_f);
vec4 o2016703_0_5_rgba = vec4(vec3(p_o2016703_out_min)+(o2003912_0_5_rgba.rgb-vec3(p_o2016703_in_min))*vec3((p_o2016703_out_max-p_o2016703_out_min)/(p_o2016703_in_max-p_o2016703_in_min)), o2003912_0_5_rgba.a);
float o1053514_4_clamp_false = abs((dot((o2016703_0_5_rgba).rgb, vec3(1.0))/3.0));
float o1053514_4_clamp_true = clamp(o1053514_4_clamp_false, 0.0, 1.0);
float o1053514_0_5_f = o1053514_4_clamp_true;
float o2313099_0_1_f = o2313099_curve_curve_fct(o1053514_0_5_f);
vec4 o1666169_0_s1 = o3278853_0_1_rgba;
vec4 o1666169_0_s2 = o1227913_0_2_rgba;
float o1666169_0_a = p_o1666169_amount*o2313099_0_1_f;
vec4 o1666169_0_1_rgba = vec4(blend_normal((uv), o1666169_0_s1.rgb, o1666169_0_s2.rgb, o1666169_0_a*o1666169_0_s1.a), min(1.0, o1666169_0_s2.a+o1666169_0_a*o1666169_0_s1.a));
float o1839956_0_clamp_false = (dot((o1666169_0_1_rgba).rgb, vec3(1.0))/3.0)*p_o1839956_default_in2;
float o1839956_0_clamp_true = clamp(o1839956_0_clamp_false, 0.0, 1.0);
float o1839956_0_2_f = o1839956_0_clamp_true;
float o2047992_0_1_f = o2047992_curve_curve_fct(o1053514_0_5_f);
float o2609904_0_clamp_false = o1839956_0_2_f-o2047992_0_1_f;
float o2609904_0_clamp_true = clamp(o2609904_0_clamp_false, 0.0, 1.0);
float o2609904_0_1_f = o2609904_0_clamp_false;
float o2720635_0_step = clamp((o2609904_0_1_f - (p_o2720635_value))/max(0.0001, p_o2720635_width)+0.5, 0.0, 1.0);
float o2720635_0_false = clamp((min(o2720635_0_step, 1.0-o2720635_0_step) * 2.0) / (1.0 - p_o2720635_contrast), 0.0, 1.0);
float o2720635_0_true = 1.0-o2720635_0_false;float o2720635_0_1_f = o2720635_0_false;
float o2964135_0_clamp_false = sqrt(1.0-o2720635_0_1_f*o2720635_0_1_f);
float o2964135_0_clamp_true = clamp(o2964135_0_clamp_false, 0.0, 1.0);
float o2964135_0_1_f = o2964135_0_clamp_false;
return o2964135_0_1_f;
}
vec3 o2599821_fct(vec2 uv) {
vec3 e = vec3(1.0/256.000000000, -1.0/256.000000000, 0);
vec2 rv = vec2(1.0, -1.0)*o2599821_input_in(uv+e.xy);
rv += vec2(-1.0, 1.0)*o2599821_input_in(uv-e.xy);
rv += vec2(1.0, 1.0)*o2599821_input_in(uv+e.xx);
rv += vec2(-1.0, -1.0)*o2599821_input_in(uv-e.xx);
rv += vec2(2.0, 0.0)*o2599821_input_in(uv+e.xz);
rv += vec2(-2.0, 0.0)*o2599821_input_in(uv-e.xz);
rv += vec2(0.0, 2.0)*o2599821_input_in(uv+e.zx);
rv += vec2(0.0, -2.0)*o2599821_input_in(uv-e.zx);
return vec3(rv, 0.0);
}const float p_o2619577_default_in1 = 0.000000000;
const float p_o2619577_default_in2 = 0.000000000;
void fragment() {
vec2 uv = fract(UV*uv1_scale.xy);
vec3 o2599821_0_1_rgb = process_normal_default(o2599821_fct((uv)), p_o2599821_amount*256.000000000/128.0);
float o1874989_0_clamp_false = (o3007790_ANIM)*p_o1874989_default_in2;
float o1874989_0_clamp_true = clamp(o1874989_0_clamp_false, 0.0, 1.0);
float o1874989_0_2_f = o1874989_0_clamp_false;
vec4 o2003912_0_1_rgba = o2003912_gradient_gradient_fct(o1874989_0_2_f);
vec4 o2016703_0_1_rgba = vec4(vec3(p_o2016703_out_min)+(o2003912_0_1_rgba.rgb-vec3(p_o2016703_in_min))*vec3((p_o2016703_out_max-p_o2016703_out_min)/(p_o2016703_in_max-p_o2016703_in_min)), o2003912_0_1_rgba.a);
float o1053514_0_clamp_false = abs((dot((o2016703_0_1_rgba).rgb, vec3(1.0))/3.0));
float o1053514_0_clamp_true = clamp(o1053514_0_clamp_false, 0.0, 1.0);
float o1053514_0_1_f = o1053514_0_clamp_true;
float o1711848_0_clamp_false = o1053514_0_1_f+p_o1711848_default_in2;
float o1711848_0_clamp_true = clamp(o1711848_0_clamp_false, 0.0, 1.0);
float o1711848_0_2_f = o1711848_0_clamp_false;
float o1646669_0_1_f = perlin((transform2_clamp(transform2((rotate((uv), vec2(0.5+p_o3278853_cx, 0.5+p_o3278853_cy), (o3007790_OFFSET * 530.0)*0.01745329251)), vec2(p_o1730094_translate_x*(2.0*1.0-1.0), p_o1730094_translate_y*(2.0*1.0-1.0)), p_o1730094_rotate*0.01745329251*(2.0*1.0-1.0), vec2(p_o1730094_scale_x*(2.0*o1711848_0_2_f-1.0), p_o1730094_scale_y*(2.0*o1711848_0_2_f-1.0))))), vec2(p_o1646669_scale_x, p_o1646669_scale_y), int(p_o1646669_iterations), p_o1646669_persistence, seed_o1646669);
float o1646672_0_1_f = shape_circle((transform2_clamp(transform2((rotate((uv), vec2(0.5+p_o3278853_cx, 0.5+p_o3278853_cy), (o3007790_OFFSET * 530.0)*0.01745329251)), vec2(p_o1730094_translate_x*(2.0*1.0-1.0), p_o1730094_translate_y*(2.0*1.0-1.0)), p_o1730094_rotate*0.01745329251*(2.0*1.0-1.0), vec2(p_o1730094_scale_x*(2.0*o1711848_0_2_f-1.0), p_o1730094_scale_y*(2.0*o1711848_0_2_f-1.0))))), p_o1646672_sides, p_o1646672_radius*1.0, p_o1646672_edge*o1646669_0_1_f);
vec4 o1730094_0_1_rgba = vec4(vec3(o1646672_0_1_f), 1.0);
vec4 o3278853_0_1_rgba = o1730094_0_1_rgba;
float o1383595_0_1_f = perlin((rotate((uv), vec2(0.5+p_o3232740_cx, 0.5+p_o3232740_cy), (o3007790_OFFSET * 180.0)*0.01745329251)), vec2(p_o1383595_scale_x, p_o1383595_scale_y), int(p_o1383595_iterations), p_o1383595_persistence, seed_o1383595);
vec4 o3232740_0_1_rgba = vec4(vec3(o1383595_0_1_f), 1.0);
float o1227347_0_1_f = shape_circle((uv), p_o1227347_sides, p_o1227347_radius*(dot((o3232740_0_1_rgba).rgb, vec3(1.0))/3.0), p_o1227347_edge*1.0);
float o1874989_3_clamp_false = (o3007790_ANIM)*p_o1874989_default_in2;
float o1874989_3_clamp_true = clamp(o1874989_3_clamp_false, 0.0, 1.0);
float o1874989_0_5_f = o1874989_3_clamp_false;
vec4 o2003912_0_3_rgba = o2003912_gradient_gradient_fct(o1874989_0_5_f);
vec4 o2016703_0_3_rgba = vec4(vec3(p_o2016703_out_min)+(o2003912_0_3_rgba.rgb-vec3(p_o2016703_in_min))*vec3((p_o2016703_out_max-p_o2016703_out_min)/(p_o2016703_in_max-p_o2016703_in_min)), o2003912_0_3_rgba.a);
float o1053514_2_clamp_false = abs((dot((o2016703_0_3_rgba).rgb, vec3(1.0))/3.0));
float o1053514_2_clamp_true = clamp(o1053514_2_clamp_false, 0.0, 1.0);
float o1053514_0_3_f = o1053514_2_clamp_true;
vec4 o1098035_0_xyzw = voronoi((fract(transform2(((rotate((vec2(fract(p_o1170149_repeat*atan((uv).y-0.5, (uv).x-0.5)*0.15915494309), min(0.99999, 2.0/p_o1170149_radius*length((uv)-vec2(0.5))))), vec2(0.5+p_o1175160_cx, 0.5+p_o1175160_cy), p_o1175160_rotate*0.01745329251))-vec2((o3007790_OFFSET * 1.32), p_o3180989_translate_y)), vec2(p_o1115718_translate_x*(2.0*1.0-1.0), p_o1115718_translate_y*(2.0*o1053514_0_3_f-1.0)), p_o1115718_rotate*0.01745329251*(2.0*1.0-1.0), vec2(p_o1115718_scale_x*(2.0*1.0-1.0), p_o1115718_scale_y*(2.0*1.0-1.0))))), vec2(p_o1098035_scale_x, p_o1098035_scale_y), vec2(p_o1098035_stretch_y, p_o1098035_stretch_x), p_o1098035_intensity, p_o1098035_randomness, seed_o1098035);float o1098035_0_1_f = o1098035_0_xyzw.z;
vec4 o1099342_0_1_rgba = vec4(vec3(1.0)-vec4(vec3(o1098035_0_1_f), 1.0).rgb, vec4(vec3(o1098035_0_1_f), 1.0).a);
vec4 o1115718_0_1_rgba = o1099342_0_1_rgba;
float o1541301_0_1_f = perlin((((rotate((vec2(fract(p_o1170149_repeat*atan((uv).y-0.5, (uv).x-0.5)*0.15915494309), min(0.99999, 2.0/p_o1170149_radius*length((uv)-vec2(0.5))))), vec2(0.5+p_o1175160_cx, 0.5+p_o1175160_cy), p_o1175160_rotate*0.01745329251))-vec2((o3007790_OFFSET * 1.32), p_o3180989_translate_y))-vec2((o3007790_OFFSET * 3.5), p_o3153493_translate_y)), vec2(p_o1541301_scale_x, p_o1541301_scale_y), int(p_o1541301_iterations), p_o1541301_persistence, seed_o1541301);
vec4 o3153493_0_1_rgba = vec4(vec3(o1541301_0_1_f), 1.0);
float o1047621_0_r = 0.5+(cos(p_o1047621_rotate*0.01745329251)*(((rotate((vec2(fract(p_o1170149_repeat*atan((uv).y-0.5, (uv).x-0.5)*0.15915494309), min(0.99999, 2.0/p_o1170149_radius*length((uv)-vec2(0.5))))), vec2(0.5+p_o1175160_cx, 0.5+p_o1175160_cy), p_o1175160_rotate*0.01745329251))-vec2((o3007790_OFFSET * 1.32), p_o3180989_translate_y)).x-0.5)+sin(p_o1047621_rotate*0.01745329251)*(((rotate((vec2(fract(p_o1170149_repeat*atan((uv).y-0.5, (uv).x-0.5)*0.15915494309), min(0.99999, 2.0/p_o1170149_radius*length((uv)-vec2(0.5))))), vec2(0.5+p_o1175160_cx, 0.5+p_o1175160_cy), p_o1175160_rotate*0.01745329251))-vec2((o3007790_OFFSET * 1.32), p_o3180989_translate_y)).y-0.5))/(cos(abs(mod(p_o1047621_rotate, 90.0)-45.0)*0.01745329251)*1.41421356237);vec4 o1047621_0_1_rgba = o1047621_gradient_gradient_fct(fract(o1047621_0_r*p_o1047621_repeat));
vec4 o1544215_0_s1 = o3153493_0_1_rgba;
vec4 o1544215_0_s2 = o1047621_0_1_rgba;
float o1544215_0_a = p_o1544215_amount*1.0;
vec4 o1544215_0_2_rgba = vec4(blend_normal(((rotate((vec2(fract(p_o1170149_repeat*atan((uv).y-0.5, (uv).x-0.5)*0.15915494309), min(0.99999, 2.0/p_o1170149_radius*length((uv)-vec2(0.5))))), vec2(0.5+p_o1175160_cx, 0.5+p_o1175160_cy), p_o1175160_rotate*0.01745329251))-vec2((o3007790_OFFSET * 1.32), p_o3180989_translate_y)), o1544215_0_s1.rgb, o1544215_0_s2.rgb, o1544215_0_a*o1544215_0_s1.a), min(1.0, o1544215_0_s2.a+o1544215_0_a*o1544215_0_s1.a));
float o1079786_0_clamp_false = (dot((o1544215_0_2_rgba).rgb, vec3(1.0))/3.0)-o1053514_0_3_f;
float o1079786_0_clamp_true = clamp(o1079786_0_clamp_false, 0.0, 1.0);
float o1079786_0_1_f = o1079786_0_clamp_false;
vec4 o1147502_0_1_rgba = vec4(vec3(p_o1147502_out_min)+(vec4(vec3(o1079786_0_1_f), 1.0).rgb-vec3(p_o1147502_in_min))*vec3((p_o1147502_out_max-p_o1147502_out_min)/(p_o1147502_in_max-p_o1147502_in_min)), vec4(vec3(o1079786_0_1_f), 1.0).a);
vec4 o1135497_0_1_rgba = o1135497_gradient_gradient_fct((dot((o1147502_0_1_rgba).rgb, vec3(1.0))/3.0));
vec4 o1107567_0_s1 = o1115718_0_1_rgba;
vec4 o1107567_0_s2 = o1135497_0_1_rgba;
float o1107567_0_a = p_o1107567_amount*1.0;
vec4 o1107567_0_2_rgba = vec4(blend_multiply(((rotate((vec2(fract(p_o1170149_repeat*atan((uv).y-0.5, (uv).x-0.5)*0.15915494309), min(0.99999, 2.0/p_o1170149_radius*length((uv)-vec2(0.5))))), vec2(0.5+p_o1175160_cx, 0.5+p_o1175160_cy), p_o1175160_rotate*0.01745329251))-vec2((o3007790_OFFSET * 1.32), p_o3180989_translate_y)), o1107567_0_s1.rgb, o1107567_0_s2.rgb, o1107567_0_a*o1107567_0_s1.a), min(1.0, o1107567_0_s2.a+o1107567_0_a*o1107567_0_s1.a));
vec4 o3180989_0_1_rgba = o1107567_0_2_rgba;
vec4 o1175160_0_1_rgba = o3180989_0_1_rgba;
vec4 o1170149_0_1_rgba = o1175160_0_1_rgba;
vec4 o1227913_0_s1 = vec4(vec3(o1227347_0_1_f), 1.0);
vec4 o1227913_0_s2 = o1170149_0_1_rgba;
float o1227913_0_a = p_o1227913_amount*1.0;
vec4 o1227913_0_2_rgba = vec4(blend_multiply((uv), o1227913_0_s1.rgb, o1227913_0_s2.rgb, o1227913_0_a*o1227913_0_s1.a), min(1.0, o1227913_0_s2.a+o1227913_0_a*o1227913_0_s1.a));
float o1874989_6_clamp_false = (o3007790_ANIM)*p_o1874989_default_in2;
float o1874989_6_clamp_true = clamp(o1874989_6_clamp_false, 0.0, 1.0);
float o1874989_0_8_f = o1874989_6_clamp_false;
vec4 o2003912_0_5_rgba = o2003912_gradient_gradient_fct(o1874989_0_8_f);
vec4 o2016703_0_5_rgba = vec4(vec3(p_o2016703_out_min)+(o2003912_0_5_rgba.rgb-vec3(p_o2016703_in_min))*vec3((p_o2016703_out_max-p_o2016703_out_min)/(p_o2016703_in_max-p_o2016703_in_min)), o2003912_0_5_rgba.a);
float o1053514_4_clamp_false = abs((dot((o2016703_0_5_rgba).rgb, vec3(1.0))/3.0));
float o1053514_4_clamp_true = clamp(o1053514_4_clamp_false, 0.0, 1.0);
float o1053514_0_5_f = o1053514_4_clamp_true;
float o2313099_0_1_f = o2313099_curve_curve_fct(o1053514_0_5_f);
vec4 o1666169_0_s1 = o3278853_0_1_rgba;
vec4 o1666169_0_s2 = o1227913_0_2_rgba;
float o1666169_0_a = p_o1666169_amount*o2313099_0_1_f;
vec4 o1666169_0_1_rgba = vec4(blend_normal((uv), o1666169_0_s1.rgb, o1666169_0_s2.rgb, o1666169_0_a*o1666169_0_s1.a), min(1.0, o1666169_0_s2.a+o1666169_0_a*o1666169_0_s1.a));
float o1839956_0_clamp_false = (dot((o1666169_0_1_rgba).rgb, vec3(1.0))/3.0)*p_o1839956_default_in2;
float o1839956_0_clamp_true = clamp(o1839956_0_clamp_false, 0.0, 1.0);
float o1839956_0_2_f = o1839956_0_clamp_true;
float o2047992_0_1_f = o2047992_curve_curve_fct(o1053514_0_5_f);
float o2609904_0_clamp_false = o1839956_0_2_f-o2047992_0_1_f;
float o2609904_0_clamp_true = clamp(o2609904_0_clamp_false, 0.0, 1.0);
float o2609904_0_1_f = o2609904_0_clamp_false;
float o2619577_0_clamp_false = step(p_o2619577_default_in1,o2609904_0_1_f);
float o2619577_0_clamp_true = clamp(o2619577_0_clamp_false, 0.0, 1.0);
float o2619577_0_2_f = o2619577_0_clamp_true;
vec3 albedo_tex = vec3(1.0).rgb;
albedo_tex = mix(pow((albedo_tex + vec3(0.055)) * (1.0 / (1.0 + 0.055)),vec3(2.4)),albedo_tex * (1.0 / 12.92),lessThan(albedo_tex,vec3(0.04045)));
ALBEDO = albedo_tex*vec4(p_o1022114_albedo_color_r, p_o1022114_albedo_color_g, p_o1022114_albedo_color_b, p_o1022114_albedo_color_a).rgb;
METALLIC = 1.0*p_o1022114_metallic;
ROUGHNESS = 1.0*p_o1022114_roughness;
NORMALMAP = o2599821_0_1_rgb;
EMISSION = vec3(0.0)*p_o1022114_emission_energy;
ALPHA = o2619577_0_2_f;
}

View File

@ -0,0 +1,7 @@
[gd_resource type="ShaderMaterial" load_steps=2 format=2]
[ext_resource path="BloodSpray.shader" type="Shader" id=1]
[resource]
shader = ExtResource( 1 )

View File

@ -0,0 +1,800 @@
shader_type spatial;
render_mode unshaded, blend_add;
uniform vec3 uv1_scale = vec3(1.0, 1.0, 1.0);
uniform vec3 uv1_offset = vec3(0.0, 0.0, 0.0);
varying float elapsed_time;
void vertex() {
elapsed_time = TIME;
UV = UV*uv1_scale.xy+uv1_offset.xy;
}
float rand(vec2 x) {
return fract(cos(mod(dot(x, vec2(13.9898, 8.141)), 3.14)) * 43758.5453);
}
vec2 rand2(vec2 x) {
return fract(cos(mod(vec2(dot(x, vec2(13.9898, 8.141)),
dot(x, vec2(3.4562, 17.398))), vec2(3.14))) * 43758.5453);
}
vec3 rand3(vec2 x) {
return fract(cos(mod(vec3(dot(x, vec2(13.9898, 8.141)),
dot(x, vec2(3.4562, 17.398)),
dot(x, vec2(13.254, 5.867))), vec3(3.14))) * 43758.5453);
}
vec3 rgb2hsv(vec3 c) {
vec4 K = vec4(0.0, -1.0 / 3.0, 2.0 / 3.0, -1.0);
vec4 p = c.g < c.b ? vec4(c.bg, K.wz) : vec4(c.gb, K.xy);
vec4 q = c.r < p.x ? vec4(p.xyw, c.r) : vec4(c.r, p.yzx);
float d = q.x - min(q.w, q.y);
float e = 1.0e-10;
return vec3(abs(q.z + (q.w - q.y) / (6.0 * d + e)), d / (q.x + e), q.x);
}
vec3 hsv2rgb(vec3 c) {
vec4 K = vec4(1.0, 2.0 / 3.0, 1.0 / 3.0, 3.0);
vec3 p = abs(fract(c.xxx + K.xyz) * 6.0 - K.www);
return c.z * mix(K.xxx, clamp(p - K.xxx, 0.0, 1.0), c.y);
}
uniform sampler2D texture_1;
const float texture_1_size = 512.0;
uniform sampler2D texture_2;
const float texture_2_size = 512.0;
float shape_circle(vec2 uv, float sides, float size, float edge) {
uv = 2.0*uv-1.0;
edge = max(edge, 1.0e-8);
float distance = length(uv);
return clamp((1.0-distance/size)/edge, 0.0, 1.0);
}
float shape_polygon(vec2 uv, float sides, float size, float edge) {
uv = 2.0*uv-1.0;
edge = max(edge, 1.0e-8);
float angle = atan(uv.x, uv.y)+3.14159265359;
float slice = 6.28318530718/sides;
return clamp((1.0-(cos(floor(0.5+angle/slice)*slice-angle)*length(uv))/size)/edge, 0.0, 1.0);
}
float shape_star(vec2 uv, float sides, float size, float edge) {
uv = 2.0*uv-1.0;
edge = max(edge, 1.0e-8);
float angle = atan(uv.x, uv.y);
float slice = 6.28318530718/sides;
return clamp((1.0-(cos(floor(angle*sides/6.28318530718-0.5+2.0*step(fract(angle*sides/6.28318530718), 0.5))*slice-angle)*length(uv))/size)/edge, 0.0, 1.0);
}
float shape_curved_star(vec2 uv, float sides, float size, float edge) {
uv = 2.0*uv-1.0;
edge = max(edge, 1.0e-8);
float angle = 2.0*(atan(uv.x, uv.y)+3.14159265359);
float slice = 6.28318530718/sides;
return clamp((1.0-cos(floor(0.5+0.5*angle/slice)*2.0*slice-angle)*length(uv)/size)/edge, 0.0, 1.0);
}
float shape_rays(vec2 uv, float sides, float size, float edge) {
uv = 2.0*uv-1.0;
edge = 0.5*max(edge, 1.0e-8)*size;
float slice = 6.28318530718/sides;
float angle = mod(atan(uv.x, uv.y)+3.14159265359, slice)/slice;
return clamp(min((size-angle)/edge, angle/edge), 0.0, 1.0);
}
vec3 blend_normal(vec2 uv, vec3 c1, vec3 c2, float opacity) {
return opacity*c1 + (1.0-opacity)*c2;
}
vec3 blend_dissolve(vec2 uv, vec3 c1, vec3 c2, float opacity) {
if (rand(uv) < opacity) {
return c1;
} else {
return c2;
}
}
vec3 blend_multiply(vec2 uv, vec3 c1, vec3 c2, float opacity) {
return opacity*c1*c2 + (1.0-opacity)*c2;
}
vec3 blend_screen(vec2 uv, vec3 c1, vec3 c2, float opacity) {
return opacity*(1.0-(1.0-c1)*(1.0-c2)) + (1.0-opacity)*c2;
}
float blend_overlay_f(float c1, float c2) {
return (c1 < 0.5) ? (2.0*c1*c2) : (1.0-2.0*(1.0-c1)*(1.0-c2));
}
vec3 blend_overlay(vec2 uv, vec3 c1, vec3 c2, float opacity) {
return opacity*vec3(blend_overlay_f(c1.x, c2.x), blend_overlay_f(c1.y, c2.y), blend_overlay_f(c1.z, c2.z)) + (1.0-opacity)*c2;
}
vec3 blend_hard_light(vec2 uv, vec3 c1, vec3 c2, float opacity) {
return opacity*0.5*(c1*c2+blend_overlay(uv, c1, c2, 1.0)) + (1.0-opacity)*c2;
}
float blend_soft_light_f(float c1, float c2) {
return (c2 < 0.5) ? (2.0*c1*c2+c1*c1*(1.0-2.0*c2)) : 2.0*c1*(1.0-c2)+sqrt(c1)*(2.0*c2-1.0);
}
vec3 blend_soft_light(vec2 uv, vec3 c1, vec3 c2, float opacity) {
return opacity*vec3(blend_soft_light_f(c1.x, c2.x), blend_soft_light_f(c1.y, c2.y), blend_soft_light_f(c1.z, c2.z)) + (1.0-opacity)*c2;
}
float blend_burn_f(float c1, float c2) {
return (c1==0.0)?c1:max((1.0-((1.0-c2)/c1)),0.0);
}
vec3 blend_burn(vec2 uv, vec3 c1, vec3 c2, float opacity) {
return opacity*vec3(blend_burn_f(c1.x, c2.x), blend_burn_f(c1.y, c2.y), blend_burn_f(c1.z, c2.z)) + (1.0-opacity)*c2;
}
float blend_dodge_f(float c1, float c2) {
return (c1==1.0)?c1:min(c2/(1.0-c1),1.0);
}
vec3 blend_dodge(vec2 uv, vec3 c1, vec3 c2, float opacity) {
return opacity*vec3(blend_dodge_f(c1.x, c2.x), blend_dodge_f(c1.y, c2.y), blend_dodge_f(c1.z, c2.z)) + (1.0-opacity)*c2;
}
vec3 blend_lighten(vec2 uv, vec3 c1, vec3 c2, float opacity) {
return opacity*max(c1, c2) + (1.0-opacity)*c2;
}
vec3 blend_darken(vec2 uv, vec3 c1, vec3 c2, float opacity) {
return opacity*min(c1, c2) + (1.0-opacity)*c2;
}
vec3 blend_difference(vec2 uv, vec3 c1, vec3 c2, float opacity) {
return opacity*clamp(c2-c1, vec3(0.0), vec3(1.0)) + (1.0-opacity)*c2;
}
vec4 adjust_levels(vec4 input, vec4 in_min, vec4 in_mid, vec4 in_max, vec4 out_min, vec4 out_max) {
input = clamp((input-in_min)/(in_max-in_min), 0.0, 1.0);
in_mid = (in_mid-in_min)/(in_max-in_min);
vec4 dark = step(in_mid, input);
input = 0.5*mix(input/(in_mid), 1.0+(input-in_mid)/(1.0-in_mid), dark);
return out_min+input*(out_max-out_min);
}
vec3 rgb_to_hsv(vec3 c) {
vec4 K = vec4(0.0, -1.0 / 3.0, 2.0 / 3.0, -1.0);
vec4 p = c.g < c.b ? vec4(c.bg, K.wz) : vec4(c.gb, K.xy);
vec4 q = c.r < p.x ? vec4(p.xyw, c.r) : vec4(c.r, p.yzx);
float d = q.x - min(q.w, q.y);
float e = 1.0e-10;
return vec3(abs(q.z + (q.w - q.y) / (6.0 * d + e)), d / (q.x + e), q.x);
}
vec3 hsv_to_rgb(vec3 c) {
vec4 K = vec4(1.0, 2.0 / 3.0, 1.0 / 3.0, 3.0);
vec3 p = abs(fract(c.xxx + K.xyz) * 6.0 - K.www);
return c.z * mix(K.xxx, clamp(p - K.xxx, 0.0, 1.0), c.y);
}
vec2 scale(vec2 uv, vec2 center, vec2 scale) {
uv -= center;
uv /= scale;
uv += center;
return uv;
}
const float p_o425155_cx = 0.000000000;
const float p_o425155_cy = 0.000000000;
const float p_o425155_scale_x = 1.825000000;
const float p_o425155_scale_y = 1.825000000;
const float p_o9600_hue = 0.000000000;
const float p_o9600_saturation = 1.919300000;
const float p_o9600_value = 1.000000000;
vec4 o9600_f(vec4 c) {
vec3 hsv = rgb_to_hsv(c.rgb);
return vec4(hsv_to_rgb(vec3(fract(hsv.x+p_o9600_hue), clamp(hsv.y*p_o9600_saturation, 0.0, 1.0), clamp(hsv.z*p_o9600_value, 0.0, 1.0))), c.a);
}const float p_o9579_gradient_0_pos = 0.000000000;
const float p_o9579_gradient_0_r = 0.000000000;
const float p_o9579_gradient_0_g = 0.000000000;
const float p_o9579_gradient_0_b = 0.000000000;
const float p_o9579_gradient_0_a = 1.000000000;
const float p_o9579_gradient_1_pos = 0.377056000;
const float p_o9579_gradient_1_r = 0.000000000;
const float p_o9579_gradient_1_g = 0.718750000;
const float p_o9579_gradient_1_b = 1.000000000;
const float p_o9579_gradient_1_a = 1.000000000;
const float p_o9579_gradient_2_pos = 0.777056000;
const float p_o9579_gradient_2_r = 0.551358998;
const float p_o9579_gradient_2_g = 0.878682971;
const float p_o9579_gradient_2_b = 1.000000000;
const float p_o9579_gradient_2_a = 1.000000000;
const float p_o9579_gradient_3_pos = 1.000000000;
const float p_o9579_gradient_3_r = 1.000000000;
const float p_o9579_gradient_3_g = 1.000000000;
const float p_o9579_gradient_3_b = 1.000000000;
const float p_o9579_gradient_3_a = 1.000000000;
vec4 o9579_gradient_gradient_fct(float x) {
if (x < p_o9579_gradient_0_pos) {
return vec4(p_o9579_gradient_0_r,p_o9579_gradient_0_g,p_o9579_gradient_0_b,p_o9579_gradient_0_a);
} else if (x < p_o9579_gradient_1_pos) {
return mix(vec4(p_o9579_gradient_0_r,p_o9579_gradient_0_g,p_o9579_gradient_0_b,p_o9579_gradient_0_a), vec4(p_o9579_gradient_1_r,p_o9579_gradient_1_g,p_o9579_gradient_1_b,p_o9579_gradient_1_a), ((x-p_o9579_gradient_0_pos)/(p_o9579_gradient_1_pos-p_o9579_gradient_0_pos)));
} else if (x < p_o9579_gradient_2_pos) {
return mix(vec4(p_o9579_gradient_1_r,p_o9579_gradient_1_g,p_o9579_gradient_1_b,p_o9579_gradient_1_a), vec4(p_o9579_gradient_2_r,p_o9579_gradient_2_g,p_o9579_gradient_2_b,p_o9579_gradient_2_a), ((x-p_o9579_gradient_1_pos)/(p_o9579_gradient_2_pos-p_o9579_gradient_1_pos)));
} else if (x < p_o9579_gradient_3_pos) {
return mix(vec4(p_o9579_gradient_2_r,p_o9579_gradient_2_g,p_o9579_gradient_2_b,p_o9579_gradient_2_a), vec4(p_o9579_gradient_3_r,p_o9579_gradient_3_g,p_o9579_gradient_3_b,p_o9579_gradient_3_a), ((x-p_o9579_gradient_2_pos)/(p_o9579_gradient_3_pos-p_o9579_gradient_2_pos)));
}
return vec4(p_o9579_gradient_3_r,p_o9579_gradient_3_g,p_o9579_gradient_3_b,p_o9579_gradient_3_a);
}
const float p_o111395_amount = 1.000000000;
const float p_o305707_amount = 0.045000000;
const float p_o305707_eps = 0.120000000;
const float p_o9577_translate_x = 0.000000000;
float o305707_input_d(vec2 uv) {
vec4 o9596_0 = textureLod(texture_1, (uv)-vec2(p_o9577_translate_x, (- elapsed_time / 3.0)), 0.0);
vec4 o9577_0_1_rgba = o9596_0;
return (dot((o9577_0_1_rgba).rgb, vec3(1.0))/3.0);
}
vec2 o305707_slope(vec2 uv, float epsilon) {
return vec2(o305707_input_d(fract(uv+vec2(epsilon, 0.0)))-o305707_input_d(fract(uv-vec2(epsilon, 0.0))), o305707_input_d(fract(uv+vec2(0.0, epsilon)))-o305707_input_d(fract(uv-vec2(0.0, epsilon))));
}const float p_o277932_amount = 0.010000000;
const float p_o277932_eps = 0.120000000;
const float p_o9578_translate_x = 0.000000000;
float o277932_input_d(vec2 uv) {
vec4 o9598_0 = textureLod(texture_2, (uv)-vec2(p_o9578_translate_x, (- elapsed_time / 6.0)), 0.0);
vec4 o9578_0_1_rgba = o9598_0;
return (dot((o9578_0_1_rgba).rgb, vec3(1.0))/3.0);
}
vec2 o277932_slope(vec2 uv, float epsilon) {
return vec2(o277932_input_d(fract(uv+vec2(epsilon, 0.0)))-o277932_input_d(fract(uv-vec2(epsilon, 0.0))), o277932_input_d(fract(uv+vec2(0.0, epsilon)))-o277932_input_d(fract(uv-vec2(0.0, epsilon))));
}const float p_o154404_sides = 2.000000000;
const float p_o154404_radius = 1.000000000;
const float p_o154404_edge = 1.000000000;
const float p_o262174_default_in1 = 0.000000000;
const float p_o262174_default_in2 = 2.000000000;
const float p_o119625_curve_0_x = 0.000000000;
const float p_o119625_curve_0_y = 0.000000000;
const float p_o119625_curve_0_ls = 0.000000000;
const float p_o119625_curve_0_rs = 99.205083325;
const float p_o119625_curve_1_x = 0.020833334;
const float p_o119625_curve_1_y = 0.998410165;
const float p_o119625_curve_1_ls = 0.000000000;
const float p_o119625_curve_1_rs = -9.920508671;
const float p_o119625_curve_2_x = 0.199519426;
const float p_o119625_curve_2_y = 0.000000000;
const float p_o119625_curve_2_ls = 0.000000000;
const float p_o119625_curve_2_rs = -0.000000000;
const float p_o119625_curve_3_x = 1.000000000;
const float p_o119625_curve_3_y = 0.000000000;
const float p_o119625_curve_3_ls = 0.000000000;
const float p_o119625_curve_3_rs = -0.000000000;
float o119625_curve_curve_fct(float x) {
if (x <= p_o119625_curve_1_x) {
float dx = x - p_o119625_curve_0_x;
float d = p_o119625_curve_1_x - p_o119625_curve_0_x;
float t = dx/d;
float omt = (1.0 - t);
float omt2 = omt * omt;
float omt3 = omt2 * omt;
float t2 = t * t;
float t3 = t2 * t;
d /= 3.0;
float y1 = p_o119625_curve_0_y;
float yac = p_o119625_curve_0_y + d*p_o119625_curve_0_rs;
float ybc = p_o119625_curve_1_y - d*p_o119625_curve_1_ls;
float y2 = p_o119625_curve_1_y;
return y1*omt3 + yac*omt2*t*3.0 + ybc*omt*t2*3.0 + y2*t3;
}
if (x <= p_o119625_curve_2_x) {
float dx = x - p_o119625_curve_1_x;
float d = p_o119625_curve_2_x - p_o119625_curve_1_x;
float t = dx/d;
float omt = (1.0 - t);
float omt2 = omt * omt;
float omt3 = omt2 * omt;
float t2 = t * t;
float t3 = t2 * t;
d /= 3.0;
float y1 = p_o119625_curve_1_y;
float yac = p_o119625_curve_1_y + d*p_o119625_curve_1_rs;
float ybc = p_o119625_curve_2_y - d*p_o119625_curve_2_ls;
float y2 = p_o119625_curve_2_y;
return y1*omt3 + yac*omt2*t*3.0 + ybc*omt*t2*3.0 + y2*t3;
}
if (x <= p_o119625_curve_3_x) {
float dx = x - p_o119625_curve_2_x;
float d = p_o119625_curve_3_x - p_o119625_curve_2_x;
float t = dx/d;
float omt = (1.0 - t);
float omt2 = omt * omt;
float omt3 = omt2 * omt;
float t2 = t * t;
float t3 = t2 * t;
d /= 3.0;
float y1 = p_o119625_curve_2_y;
float yac = p_o119625_curve_2_y + d*p_o119625_curve_2_rs;
float ybc = p_o119625_curve_3_y - d*p_o119625_curve_3_ls;
float y2 = p_o119625_curve_3_y;
return y1*omt3 + yac*omt2*t*3.0 + ybc*omt*t2*3.0 + y2*t3;
}
}
const float p_o9549_color = 0.500000000;
const float p_o9625_amount = 0.420000000;
const float p_o9625_eps = 0.005000000;
const float p_o57402_amount = 0.030000000;
const float p_o54620_repeat = 64.000000000;
const float p_o54620_gradient_0_pos = 0.000000000;
const float p_o54620_gradient_0_r = 0.000000000;
const float p_o54620_gradient_0_g = 0.000000000;
const float p_o54620_gradient_0_b = 0.000000000;
const float p_o54620_gradient_0_a = 1.000000000;
const float p_o54620_gradient_1_pos = 0.454544345;
const float p_o54620_gradient_1_r = 1.000000000;
const float p_o54620_gradient_1_g = 1.000000000;
const float p_o54620_gradient_1_b = 1.000000000;
const float p_o54620_gradient_1_a = 1.000000000;
const float p_o54620_gradient_2_pos = 1.000000000;
const float p_o54620_gradient_2_r = 0.000000000;
const float p_o54620_gradient_2_g = 0.000000000;
const float p_o54620_gradient_2_b = 0.000000000;
const float p_o54620_gradient_2_a = 1.000000000;
vec4 o54620_gradient_gradient_fct(float x) {
if (x < p_o54620_gradient_0_pos) {
return vec4(p_o54620_gradient_0_r,p_o54620_gradient_0_g,p_o54620_gradient_0_b,p_o54620_gradient_0_a);
} else if (x < p_o54620_gradient_1_pos) {
return mix(vec4(p_o54620_gradient_0_r,p_o54620_gradient_0_g,p_o54620_gradient_0_b,p_o54620_gradient_0_a), vec4(p_o54620_gradient_1_r,p_o54620_gradient_1_g,p_o54620_gradient_1_b,p_o54620_gradient_1_a), ((x-p_o54620_gradient_0_pos)/(p_o54620_gradient_1_pos-p_o54620_gradient_0_pos)));
} else if (x < p_o54620_gradient_2_pos) {
return mix(vec4(p_o54620_gradient_1_r,p_o54620_gradient_1_g,p_o54620_gradient_1_b,p_o54620_gradient_1_a), vec4(p_o54620_gradient_2_r,p_o54620_gradient_2_g,p_o54620_gradient_2_b,p_o54620_gradient_2_a), ((x-p_o54620_gradient_1_pos)/(p_o54620_gradient_2_pos-p_o54620_gradient_1_pos)));
}
return vec4(p_o54620_gradient_2_r,p_o54620_gradient_2_g,p_o54620_gradient_2_b,p_o54620_gradient_2_a);
}
const float p_o9645_gradient_0_pos = 0.000000000;
const float p_o9645_gradient_0_r = 0.000000000;
const float p_o9645_gradient_0_g = 0.000000000;
const float p_o9645_gradient_0_b = 0.000000000;
const float p_o9645_gradient_0_a = 1.000000000;
const float p_o9645_gradient_1_pos = 0.298995694;
const float p_o9645_gradient_1_r = 0.462632060;
const float p_o9645_gradient_1_g = 0.462632060;
const float p_o9645_gradient_1_b = 0.462632060;
const float p_o9645_gradient_1_a = 1.000000000;
const float p_o9645_gradient_2_pos = 0.844450240;
const float p_o9645_gradient_2_r = 1.000000000;
const float p_o9645_gradient_2_g = 1.000000000;
const float p_o9645_gradient_2_b = 1.000000000;
const float p_o9645_gradient_2_a = 1.000000000;
const float p_o9645_gradient_3_pos = 1.000000000;
const float p_o9645_gradient_3_r = 0.000000000;
const float p_o9645_gradient_3_g = 0.000000000;
const float p_o9645_gradient_3_b = 0.000000000;
const float p_o9645_gradient_3_a = 1.000000000;
vec4 o9645_gradient_gradient_fct(float x) {
if (x < p_o9645_gradient_0_pos) {
return vec4(p_o9645_gradient_0_r,p_o9645_gradient_0_g,p_o9645_gradient_0_b,p_o9645_gradient_0_a);
} else if (x < p_o9645_gradient_1_pos) {
return mix(mix(vec4(p_o9645_gradient_1_r,p_o9645_gradient_1_g,p_o9645_gradient_1_b,p_o9645_gradient_1_a), vec4(p_o9645_gradient_2_r,p_o9645_gradient_2_g,p_o9645_gradient_2_b,p_o9645_gradient_2_a), (x-p_o9645_gradient_1_pos)/(p_o9645_gradient_2_pos-p_o9645_gradient_1_pos)), mix(vec4(p_o9645_gradient_0_r,p_o9645_gradient_0_g,p_o9645_gradient_0_b,p_o9645_gradient_0_a), vec4(p_o9645_gradient_1_r,p_o9645_gradient_1_g,p_o9645_gradient_1_b,p_o9645_gradient_1_a), (x-p_o9645_gradient_0_pos)/(p_o9645_gradient_1_pos-p_o9645_gradient_0_pos)), 1.0-0.5*(x-p_o9645_gradient_0_pos)/(p_o9645_gradient_1_pos-p_o9645_gradient_0_pos));
} else if (x < p_o9645_gradient_2_pos) {
return 0.5*(mix(vec4(p_o9645_gradient_1_r,p_o9645_gradient_1_g,p_o9645_gradient_1_b,p_o9645_gradient_1_a), vec4(p_o9645_gradient_2_r,p_o9645_gradient_2_g,p_o9645_gradient_2_b,p_o9645_gradient_2_a), (x-p_o9645_gradient_1_pos)/(p_o9645_gradient_2_pos-p_o9645_gradient_1_pos)) + mix(mix(vec4(p_o9645_gradient_0_r,p_o9645_gradient_0_g,p_o9645_gradient_0_b,p_o9645_gradient_0_a), vec4(p_o9645_gradient_1_r,p_o9645_gradient_1_g,p_o9645_gradient_1_b,p_o9645_gradient_1_a), (x-p_o9645_gradient_0_pos)/(p_o9645_gradient_1_pos-p_o9645_gradient_0_pos)), mix(vec4(p_o9645_gradient_2_r,p_o9645_gradient_2_g,p_o9645_gradient_2_b,p_o9645_gradient_2_a), vec4(p_o9645_gradient_3_r,p_o9645_gradient_3_g,p_o9645_gradient_3_b,p_o9645_gradient_3_a), (x-p_o9645_gradient_2_pos)/(p_o9645_gradient_3_pos-p_o9645_gradient_2_pos)), 0.5-0.5*cos(3.14159265359*(x-p_o9645_gradient_1_pos)/(p_o9645_gradient_2_pos-p_o9645_gradient_1_pos))));
} else if (x < p_o9645_gradient_3_pos) {
return mix(mix(vec4(p_o9645_gradient_1_r,p_o9645_gradient_1_g,p_o9645_gradient_1_b,p_o9645_gradient_1_a), vec4(p_o9645_gradient_2_r,p_o9645_gradient_2_g,p_o9645_gradient_2_b,p_o9645_gradient_2_a), (x-p_o9645_gradient_1_pos)/(p_o9645_gradient_2_pos-p_o9645_gradient_1_pos)), mix(vec4(p_o9645_gradient_2_r,p_o9645_gradient_2_g,p_o9645_gradient_2_b,p_o9645_gradient_2_a), vec4(p_o9645_gradient_3_r,p_o9645_gradient_3_g,p_o9645_gradient_3_b,p_o9645_gradient_3_a), (x-p_o9645_gradient_2_pos)/(p_o9645_gradient_3_pos-p_o9645_gradient_2_pos)), 0.5+0.5*(x-p_o9645_gradient_2_pos)/(p_o9645_gradient_3_pos-p_o9645_gradient_2_pos));
}
return vec4(p_o9645_gradient_3_r,p_o9645_gradient_3_g,p_o9645_gradient_3_b,p_o9645_gradient_3_a);
}
const float p_o9626_sides = 2.000000000;
const float p_o9626_radius = 0.906667000;
const float p_o9626_edge = 1.000000000;
const float p_o9627_curve_0_x = 0.000000000;
const float p_o9627_curve_0_y = 0.000000000;
const float p_o9627_curve_0_ls = 0.000000000;
const float p_o9627_curve_0_rs = -0.058356000;
const float p_o9627_curve_1_x = 0.101763003;
const float p_o9627_curve_1_y = 0.000000000;
const float p_o9627_curve_1_ls = 0.000000000;
const float p_o9627_curve_1_rs = 0.172531000;
const float p_o9627_curve_2_x = 0.697115004;
const float p_o9627_curve_2_y = 0.763116002;
const float p_o9627_curve_2_ls = -0.114467000;
const float p_o9627_curve_2_rs = -0.042517000;
const float p_o9627_curve_3_x = 1.000000000;
const float p_o9627_curve_3_y = 0.000000000;
const float p_o9627_curve_3_ls = -0.032001000;
const float p_o9627_curve_3_rs = -0.000000000;
float o9627_curve_curve_fct(float x) {
if (x <= p_o9627_curve_1_x) {
float dx = x - p_o9627_curve_0_x;
float d = p_o9627_curve_1_x - p_o9627_curve_0_x;
float t = dx/d;
float omt = (1.0 - t);
float omt2 = omt * omt;
float omt3 = omt2 * omt;
float t2 = t * t;
float t3 = t2 * t;
d /= 3.0;
float y1 = p_o9627_curve_0_y;
float yac = p_o9627_curve_0_y + d*p_o9627_curve_0_rs;
float ybc = p_o9627_curve_1_y - d*p_o9627_curve_1_ls;
float y2 = p_o9627_curve_1_y;
return y1*omt3 + yac*omt2*t*3.0 + ybc*omt*t2*3.0 + y2*t3;
}
if (x <= p_o9627_curve_2_x) {
float dx = x - p_o9627_curve_1_x;
float d = p_o9627_curve_2_x - p_o9627_curve_1_x;
float t = dx/d;
float omt = (1.0 - t);
float omt2 = omt * omt;
float omt3 = omt2 * omt;
float t2 = t * t;
float t3 = t2 * t;
d /= 3.0;
float y1 = p_o9627_curve_1_y;
float yac = p_o9627_curve_1_y + d*p_o9627_curve_1_rs;
float ybc = p_o9627_curve_2_y - d*p_o9627_curve_2_ls;
float y2 = p_o9627_curve_2_y;
return y1*omt3 + yac*omt2*t*3.0 + ybc*omt*t2*3.0 + y2*t3;
}
if (x <= p_o9627_curve_3_x) {
float dx = x - p_o9627_curve_2_x;
float d = p_o9627_curve_3_x - p_o9627_curve_2_x;
float t = dx/d;
float omt = (1.0 - t);
float omt2 = omt * omt;
float omt3 = omt2 * omt;
float t2 = t * t;
float t3 = t2 * t;
d /= 3.0;
float y1 = p_o9627_curve_2_y;
float yac = p_o9627_curve_2_y + d*p_o9627_curve_2_rs;
float ybc = p_o9627_curve_3_y - d*p_o9627_curve_3_ls;
float y2 = p_o9627_curve_3_y;
return y1*omt3 + yac*omt2*t*3.0 + ybc*omt*t2*3.0 + y2*t3;
}
}
float o9625_input_d(vec2 uv) {
vec4 o54620_0_1_rgba = o54620_gradient_gradient_fct(fract(p_o54620_repeat*0.15915494309*atan((uv).y-0.5, (uv).x-0.5)));
float o9549_0_1_f = p_o9549_color;
float o9627_0_1_f = o9627_curve_curve_fct(o9549_0_1_f);
float o9626_0_1_f = shape_circle((uv), p_o9626_sides, p_o9626_radius*o9627_0_1_f, p_o9626_edge*1.0);
vec4 o9645_0_1_rgba = o9645_gradient_gradient_fct(o9626_0_1_f);
vec4 o57402_0_s1 = o54620_0_1_rgba;
vec4 o57402_0_s2 = o9645_0_1_rgba;
float o57402_0_a = p_o57402_amount*1.0;
vec4 o57402_0_2_rgba = vec4(blend_multiply((uv), o57402_0_s1.rgb, o57402_0_s2.rgb, o57402_0_a*o57402_0_s1.a), min(1.0, o57402_0_s2.a+o57402_0_a*o57402_0_s1.a));
return (dot((o57402_0_2_rgba).rgb, vec3(1.0))/3.0);
}
vec2 o9625_slope(vec2 uv, float epsilon) {
return vec2(o9625_input_d(fract(uv+vec2(epsilon, 0.0)))-o9625_input_d(fract(uv-vec2(epsilon, 0.0))), o9625_input_d(fract(uv+vec2(0.0, epsilon)))-o9625_input_d(fract(uv-vec2(0.0, epsilon))));
}const float p_o9606_default_in1 = 0.000000000;
const float p_o9606_default_in2 = 5.350000000;
const float p_o9603_default_in1 = 0.000000000;
const float p_o9603_default_in2 = 0.000000000;
const float p_o9595_default_in1 = 0.000000000;
const float p_o9595_default_in2 = 0.000000000;
const float p_o9576_amount = 0.025000000;
const float p_o9576_eps = 0.040000000;
float o9576_input_d(vec2 uv) {
vec4 o9596_0 = textureLod(texture_1, (uv)-vec2(p_o9577_translate_x, (- elapsed_time / 3.0)), 0.0);
vec4 o9577_0_1_rgba = o9596_0;
return (dot((o9577_0_1_rgba).rgb, vec3(1.0))/3.0);
}
vec2 o9576_slope(vec2 uv, float epsilon) {
return vec2(o9576_input_d(fract(uv+vec2(epsilon, 0.0)))-o9576_input_d(fract(uv-vec2(epsilon, 0.0))), o9576_input_d(fract(uv+vec2(0.0, epsilon)))-o9576_input_d(fract(uv-vec2(0.0, epsilon))));
}const float p_o9594_in_min_r = 0.000000000;
const float p_o9594_in_min_g = 0.000000000;
const float p_o9594_in_min_b = 0.000000000;
const float p_o9594_in_min_a = 0.000000000;
const float p_o9594_in_mid_r = 0.574999988;
const float p_o9594_in_mid_g = 0.574999988;
const float p_o9594_in_mid_b = 0.574999988;
const float p_o9594_in_mid_a = 0.500000000;
const float p_o9594_in_max_r = 1.000000000;
const float p_o9594_in_max_g = 1.000000000;
const float p_o9594_in_max_b = 1.000000000;
const float p_o9594_in_max_a = 1.000000000;
const float p_o9594_out_min_r = 0.000000000;
const float p_o9594_out_min_g = 0.000000000;
const float p_o9594_out_min_b = 0.000000000;
const float p_o9594_out_min_a = 0.000000000;
const float p_o9594_out_max_r = 1.000000000;
const float p_o9594_out_max_g = 1.000000000;
const float p_o9594_out_max_b = 1.000000000;
const float p_o9594_out_max_a = 1.000000000;
const float p_o9601_default_in1 = 0.000000000;
const float p_o9601_default_in2 = 0.000000000;
const float p_o9554_default_in1 = 0.000000000;
const float p_o9554_default_in2 = 0.000000000;
const float p_o9552_default_in1 = 0.000000000;
const float p_o9552_default_in2 = 0.000000000;
const float p_o9548_sides = 2.000000000;
const float p_o9548_radius = 0.906667000;
const float p_o9548_edge = 0.610000000;
const float p_o9550_sides = 2.000000000;
const float p_o9550_radius = 0.906667000;
const float p_o9550_edge = 0.610000000;
const float p_o9553_default_in1 = 0.000000000;
const float p_o9553_default_in2 = 2.090000000;
const float p_o9551_default_in1 = 0.000000000;
const float p_o9551_default_in2 = 0.000000000;
const float p_o9607_curve_0_x = 0.000000000;
const float p_o9607_curve_0_y = 0.000000000;
const float p_o9607_curve_0_ls = 0.000000000;
const float p_o9607_curve_0_rs = -0.058356000;
const float p_o9607_curve_1_x = 0.101763003;
const float p_o9607_curve_1_y = 0.000000000;
const float p_o9607_curve_1_ls = 0.000000000;
const float p_o9607_curve_1_rs = 0.172531000;
const float p_o9607_curve_2_x = 0.858973980;
const float p_o9607_curve_2_y = 1.000000000;
const float p_o9607_curve_2_ls = 1.299929000;
const float p_o9607_curve_2_rs = -0.000000000;
const float p_o9607_curve_3_x = 1.000000000;
const float p_o9607_curve_3_y = 1.000000000;
const float p_o9607_curve_3_ls = -0.032001000;
const float p_o9607_curve_3_rs = -0.000000000;
float o9607_curve_curve_fct(float x) {
if (x <= p_o9607_curve_1_x) {
float dx = x - p_o9607_curve_0_x;
float d = p_o9607_curve_1_x - p_o9607_curve_0_x;
float t = dx/d;
float omt = (1.0 - t);
float omt2 = omt * omt;
float omt3 = omt2 * omt;
float t2 = t * t;
float t3 = t2 * t;
d /= 3.0;
float y1 = p_o9607_curve_0_y;
float yac = p_o9607_curve_0_y + d*p_o9607_curve_0_rs;
float ybc = p_o9607_curve_1_y - d*p_o9607_curve_1_ls;
float y2 = p_o9607_curve_1_y;
return y1*omt3 + yac*omt2*t*3.0 + ybc*omt*t2*3.0 + y2*t3;
}
if (x <= p_o9607_curve_2_x) {
float dx = x - p_o9607_curve_1_x;
float d = p_o9607_curve_2_x - p_o9607_curve_1_x;
float t = dx/d;
float omt = (1.0 - t);
float omt2 = omt * omt;
float omt3 = omt2 * omt;
float t2 = t * t;
float t3 = t2 * t;
d /= 3.0;
float y1 = p_o9607_curve_1_y;
float yac = p_o9607_curve_1_y + d*p_o9607_curve_1_rs;
float ybc = p_o9607_curve_2_y - d*p_o9607_curve_2_ls;
float y2 = p_o9607_curve_2_y;
return y1*omt3 + yac*omt2*t*3.0 + ybc*omt*t2*3.0 + y2*t3;
}
if (x <= p_o9607_curve_3_x) {
float dx = x - p_o9607_curve_2_x;
float d = p_o9607_curve_3_x - p_o9607_curve_2_x;
float t = dx/d;
float omt = (1.0 - t);
float omt2 = omt * omt;
float omt3 = omt2 * omt;
float t2 = t * t;
float t3 = t2 * t;
d /= 3.0;
float y1 = p_o9607_curve_2_y;
float yac = p_o9607_curve_2_y + d*p_o9607_curve_2_rs;
float ybc = p_o9607_curve_3_y - d*p_o9607_curve_3_ls;
float y2 = p_o9607_curve_3_y;
return y1*omt3 + yac*omt2*t*3.0 + ybc*omt*t2*3.0 + y2*t3;
}
}
const float p_o9555_curve_0_x = 0.000000000;
const float p_o9555_curve_0_y = 0.000000000;
const float p_o9555_curve_0_ls = 0.000000000;
const float p_o9555_curve_0_rs = 34.721781000;
const float p_o9555_curve_1_x = 0.141026005;
const float p_o9555_curve_1_y = 0.965023994;
const float p_o9555_curve_1_ls = 0.000000000;
const float p_o9555_curve_1_rs = -0.000000000;
const float p_o9555_curve_2_x = 0.743589997;
const float p_o9555_curve_2_y = 0.774245024;
const float p_o9555_curve_2_ls = -0.939838000;
const float p_o9555_curve_2_rs = -1.217518000;
const float p_o9555_curve_3_x = 1.000000000;
const float p_o9555_curve_3_y = 0.000000000;
const float p_o9555_curve_3_ls = 0.000000000;
const float p_o9555_curve_3_rs = -0.000000000;
float o9555_curve_curve_fct(float x) {
if (x <= p_o9555_curve_1_x) {
float dx = x - p_o9555_curve_0_x;
float d = p_o9555_curve_1_x - p_o9555_curve_0_x;
float t = dx/d;
float omt = (1.0 - t);
float omt2 = omt * omt;
float omt3 = omt2 * omt;
float t2 = t * t;
float t3 = t2 * t;
d /= 3.0;
float y1 = p_o9555_curve_0_y;
float yac = p_o9555_curve_0_y + d*p_o9555_curve_0_rs;
float ybc = p_o9555_curve_1_y - d*p_o9555_curve_1_ls;
float y2 = p_o9555_curve_1_y;
return y1*omt3 + yac*omt2*t*3.0 + ybc*omt*t2*3.0 + y2*t3;
}
if (x <= p_o9555_curve_2_x) {
float dx = x - p_o9555_curve_1_x;
float d = p_o9555_curve_2_x - p_o9555_curve_1_x;
float t = dx/d;
float omt = (1.0 - t);
float omt2 = omt * omt;
float omt3 = omt2 * omt;
float t2 = t * t;
float t3 = t2 * t;
d /= 3.0;
float y1 = p_o9555_curve_1_y;
float yac = p_o9555_curve_1_y + d*p_o9555_curve_1_rs;
float ybc = p_o9555_curve_2_y - d*p_o9555_curve_2_ls;
float y2 = p_o9555_curve_2_y;
return y1*omt3 + yac*omt2*t*3.0 + ybc*omt*t2*3.0 + y2*t3;
}
if (x <= p_o9555_curve_3_x) {
float dx = x - p_o9555_curve_2_x;
float d = p_o9555_curve_3_x - p_o9555_curve_2_x;
float t = dx/d;
float omt = (1.0 - t);
float omt2 = omt * omt;
float omt3 = omt2 * omt;
float t2 = t * t;
float t3 = t2 * t;
d /= 3.0;
float y1 = p_o9555_curve_2_y;
float yac = p_o9555_curve_2_y + d*p_o9555_curve_2_rs;
float ybc = p_o9555_curve_3_y - d*p_o9555_curve_3_ls;
float y2 = p_o9555_curve_3_y;
return y1*omt3 + yac*omt2*t*3.0 + ybc*omt*t2*3.0 + y2*t3;
}
}
const float p_o9602_translate_x = 0.000000000;
const float p_o9573_amount = 0.060000000;
const float p_o9573_eps = 0.145000000;
float o9573_input_d(vec2 uv) {
vec4 o9598_0 = textureLod(texture_2, (uv)-vec2(p_o9578_translate_x, (- elapsed_time / 6.0)), 0.0);
vec4 o9578_0_1_rgba = o9598_0;
return (dot((o9578_0_1_rgba).rgb, vec3(1.0))/3.0);
}
vec2 o9573_slope(vec2 uv, float epsilon) {
return vec2(o9573_input_d(fract(uv+vec2(epsilon, 0.0)))-o9573_input_d(fract(uv-vec2(epsilon, 0.0))), o9573_input_d(fract(uv+vec2(0.0, epsilon)))-o9573_input_d(fract(uv-vec2(0.0, epsilon))));
}const float p_o9604_amount = 0.025000000;
const float p_o9604_eps = 0.145000000;
const float p_o9605_amount = 0.355000000;
const float p_o9605_eps = 0.100000000;
float o9605_input_d(vec2 uv) {
vec4 o9598_0 = textureLod(texture_2, (uv)-vec2(p_o9578_translate_x, (- elapsed_time / 6.0)), 0.0);
vec4 o9578_0_1_rgba = o9598_0;
return (dot((o9578_0_1_rgba).rgb, vec3(1.0))/3.0);
}
vec2 o9605_slope(vec2 uv, float epsilon) {
return vec2(o9605_input_d(fract(uv+vec2(epsilon, 0.0)))-o9605_input_d(fract(uv-vec2(epsilon, 0.0))), o9605_input_d(fract(uv+vec2(0.0, epsilon)))-o9605_input_d(fract(uv-vec2(0.0, epsilon))));
}float o9604_input_d(vec2 uv) {
vec2 o9605_0_slope = o9605_slope((uv), p_o9605_eps);
vec2 o9605_0_warp = o9605_0_slope;vec4 o9605_0_1_rgba = vec4(sin(((uv)+p_o9605_amount*o9605_0_warp).x*20.0)*0.5+0.5, sin(((uv)+p_o9605_amount*o9605_0_warp).y*20.0)*0.5+0.5, 0, 1);
return (dot((o9605_0_1_rgba).rgb, vec3(1.0))/3.0);
}
vec2 o9604_slope(vec2 uv, float epsilon) {
return vec2(o9604_input_d(fract(uv+vec2(epsilon, 0.0)))-o9604_input_d(fract(uv-vec2(epsilon, 0.0))), o9604_input_d(fract(uv+vec2(0.0, epsilon)))-o9604_input_d(fract(uv-vec2(0.0, epsilon))));
}
void fragment() {
vec2 uv = fract(UV);
vec2 o305707_0_slope = o305707_slope((scale((uv), vec2(0.5+p_o425155_cx, 0.5+p_o425155_cy), vec2(p_o425155_scale_x, p_o425155_scale_y))), p_o305707_eps);
vec2 o305707_0_warp = o305707_0_slope*(1.0-o305707_input_d((scale((uv), vec2(0.5+p_o425155_cx, 0.5+p_o425155_cy), vec2(p_o425155_scale_x, p_o425155_scale_y)))));vec2 o277932_0_slope = o277932_slope(((scale((uv), vec2(0.5+p_o425155_cx, 0.5+p_o425155_cy), vec2(p_o425155_scale_x, p_o425155_scale_y)))+p_o305707_amount*o305707_0_warp), p_o277932_eps);
vec2 o277932_0_warp = o277932_0_slope*(1.0-o277932_input_d(((scale((uv), vec2(0.5+p_o425155_cx, 0.5+p_o425155_cy), vec2(p_o425155_scale_x, p_o425155_scale_y)))+p_o305707_amount*o305707_0_warp)));float o9549_0_1_f = p_o9549_color;
float o119625_0_1_f = o119625_curve_curve_fct(o9549_0_1_f);
float o262174_0_clamp_false = o119625_0_1_f/p_o262174_default_in2;
float o262174_0_clamp_true = clamp(o262174_0_clamp_false, 0.0, 1.0);
float o262174_0_2_f = o262174_0_clamp_false;
float o154404_0_1_f = shape_circle((((scale((uv), vec2(0.5+p_o425155_cx, 0.5+p_o425155_cy), vec2(p_o425155_scale_x, p_o425155_scale_y)))+p_o305707_amount*o305707_0_warp)+p_o277932_amount*o277932_0_warp), p_o154404_sides, p_o154404_radius*o262174_0_2_f, p_o154404_edge*1.0);
vec4 o277932_0_1_rgba = vec4(vec3(o154404_0_1_f), 1.0);
vec4 o305707_0_1_rgba = o277932_0_1_rgba;
vec2 o9625_0_slope = o9625_slope((scale((uv), vec2(0.5+p_o425155_cx, 0.5+p_o425155_cy), vec2(p_o425155_scale_x, p_o425155_scale_y))), p_o9625_eps);
vec2 o9625_0_warp = o9625_0_slope;vec2 o9576_0_slope = o9576_slope(((scale((uv), vec2(0.5+p_o425155_cx, 0.5+p_o425155_cy), vec2(p_o425155_scale_x, p_o425155_scale_y)))+p_o9625_amount*o9625_0_warp), p_o9576_eps);
vec2 o9576_0_warp = o9576_0_slope;float o9549_0_3_f = p_o9549_color;
float o9548_0_1_f = shape_circle((((scale((uv), vec2(0.5+p_o425155_cx, 0.5+p_o425155_cy), vec2(p_o425155_scale_x, p_o425155_scale_y)))+p_o9625_amount*o9625_0_warp)+p_o9576_amount*o9576_0_warp), p_o9548_sides, p_o9548_radius*o9549_0_3_f, p_o9548_edge*1.0);
float o9607_0_1_f = o9607_curve_curve_fct(o9549_0_3_f);
float o9551_0_clamp_false = o9607_0_1_f-p_o9551_default_in2;
float o9551_0_clamp_true = clamp(o9551_0_clamp_false, 0.0, 1.0);
float o9551_0_2_f = o9551_0_clamp_false;
float o9553_0_clamp_false = o9551_0_2_f/p_o9553_default_in2;
float o9553_0_clamp_true = clamp(o9553_0_clamp_false, 0.0, 1.0);
float o9553_0_2_f = o9553_0_clamp_false;
float o9550_0_1_f = shape_circle((((scale((uv), vec2(0.5+p_o425155_cx, 0.5+p_o425155_cy), vec2(p_o425155_scale_x, p_o425155_scale_y)))+p_o9625_amount*o9625_0_warp)+p_o9576_amount*o9576_0_warp), p_o9550_sides, p_o9550_radius*o9553_0_2_f, p_o9550_edge*1.0);
float o9552_0_clamp_false = o9548_0_1_f-o9550_0_1_f;
float o9552_0_clamp_true = clamp(o9552_0_clamp_false, 0.0, 1.0);
float o9552_0_1_f = o9552_0_clamp_false;
float o9555_0_1_f = o9555_curve_curve_fct(o9549_0_3_f);
float o9554_0_clamp_false = o9552_0_1_f*o9555_0_1_f;
float o9554_0_clamp_true = clamp(o9554_0_clamp_false, 0.0, 1.0);
float o9554_0_1_f = o9554_0_clamp_false;
vec4 o9598_0 = textureLod(texture_2, (((scale((uv), vec2(0.5+p_o425155_cx, 0.5+p_o425155_cy), vec2(p_o425155_scale_x, p_o425155_scale_y)))+p_o9625_amount*o9625_0_warp)+p_o9576_amount*o9576_0_warp)-vec2(p_o9602_translate_x, (- elapsed_time / 12.0)), 0.0);
vec4 o9602_0_1_rgba = o9598_0;
float o9601_0_clamp_false = o9554_0_1_f*(dot((o9602_0_1_rgba).rgb, vec3(1.0))/3.0);
float o9601_0_clamp_true = clamp(o9601_0_clamp_false, 0.0, 1.0);
float o9601_0_1_f = o9601_0_clamp_false;
vec4 o9594_0_1_rgba = adjust_levels(vec4(vec3(o9601_0_1_f), 1.0), vec4(p_o9594_in_min_r, p_o9594_in_min_g, p_o9594_in_min_b, p_o9594_in_min_a), vec4(p_o9594_in_mid_r, p_o9594_in_mid_g, p_o9594_in_mid_b, p_o9594_in_mid_a), vec4(p_o9594_in_max_r, p_o9594_in_max_g, p_o9594_in_max_b, p_o9594_in_max_a), vec4(p_o9594_out_min_r, p_o9594_out_min_g, p_o9594_out_min_b, p_o9594_out_min_a), vec4(p_o9594_out_max_r, p_o9594_out_max_g, p_o9594_out_max_b, p_o9594_out_max_a));
vec4 o9576_0_1_rgba = o9594_0_1_rgba;
vec2 o9573_0_slope = o9573_slope(((scale((uv), vec2(0.5+p_o425155_cx, 0.5+p_o425155_cy), vec2(p_o425155_scale_x, p_o425155_scale_y)))+p_o9625_amount*o9625_0_warp), p_o9573_eps);
vec2 o9573_0_warp = o9573_0_slope;float o9549_0_5_f = p_o9549_color;
float o9548_0_4_f = shape_circle((((scale((uv), vec2(0.5+p_o425155_cx, 0.5+p_o425155_cy), vec2(p_o425155_scale_x, p_o425155_scale_y)))+p_o9625_amount*o9625_0_warp)+p_o9573_amount*o9573_0_warp), p_o9548_sides, p_o9548_radius*o9549_0_5_f, p_o9548_edge*1.0);
float o9607_0_3_f = o9607_curve_curve_fct(o9549_0_5_f);
float o9551_3_clamp_false = o9607_0_3_f-p_o9551_default_in2;
float o9551_3_clamp_true = clamp(o9551_3_clamp_false, 0.0, 1.0);
float o9551_0_5_f = o9551_3_clamp_false;
float o9553_3_clamp_false = o9551_0_5_f/p_o9553_default_in2;
float o9553_3_clamp_true = clamp(o9553_3_clamp_false, 0.0, 1.0);
float o9553_0_5_f = o9553_3_clamp_false;
float o9550_0_4_f = shape_circle((((scale((uv), vec2(0.5+p_o425155_cx, 0.5+p_o425155_cy), vec2(p_o425155_scale_x, p_o425155_scale_y)))+p_o9625_amount*o9625_0_warp)+p_o9573_amount*o9573_0_warp), p_o9550_sides, p_o9550_radius*o9553_0_5_f, p_o9550_edge*1.0);
float o9552_2_clamp_false = o9548_0_4_f-o9550_0_4_f;
float o9552_2_clamp_true = clamp(o9552_2_clamp_false, 0.0, 1.0);
float o9552_0_3_f = o9552_2_clamp_false;
float o9555_0_3_f = o9555_curve_curve_fct(o9549_0_5_f);
float o9554_2_clamp_false = o9552_0_3_f*o9555_0_3_f;
float o9554_2_clamp_true = clamp(o9554_2_clamp_false, 0.0, 1.0);
float o9554_0_3_f = o9554_2_clamp_false;
vec4 o9598_1 = textureLod(texture_2, (((scale((uv), vec2(0.5+p_o425155_cx, 0.5+p_o425155_cy), vec2(p_o425155_scale_x, p_o425155_scale_y)))+p_o9625_amount*o9625_0_warp)+p_o9573_amount*o9573_0_warp)-vec2(p_o9602_translate_x, (- elapsed_time / 12.0)), 0.0);
vec4 o9602_0_3_rgba = o9598_1;
float o9601_2_clamp_false = o9554_0_3_f*(dot((o9602_0_3_rgba).rgb, vec3(1.0))/3.0);
float o9601_2_clamp_true = clamp(o9601_2_clamp_false, 0.0, 1.0);
float o9601_0_3_f = o9601_2_clamp_false;
vec4 o9594_0_3_rgba = adjust_levels(vec4(vec3(o9601_0_3_f), 1.0), vec4(p_o9594_in_min_r, p_o9594_in_min_g, p_o9594_in_min_b, p_o9594_in_min_a), vec4(p_o9594_in_mid_r, p_o9594_in_mid_g, p_o9594_in_mid_b, p_o9594_in_mid_a), vec4(p_o9594_in_max_r, p_o9594_in_max_g, p_o9594_in_max_b, p_o9594_in_max_a), vec4(p_o9594_out_min_r, p_o9594_out_min_g, p_o9594_out_min_b, p_o9594_out_min_a), vec4(p_o9594_out_max_r, p_o9594_out_max_g, p_o9594_out_max_b, p_o9594_out_max_a));
vec4 o9573_0_1_rgba = o9594_0_3_rgba;
float o9595_0_clamp_false = (dot((o9576_0_1_rgba).rgb, vec3(1.0))/3.0)*(dot((o9573_0_1_rgba).rgb, vec3(1.0))/3.0);
float o9595_0_clamp_true = clamp(o9595_0_clamp_false, 0.0, 1.0);
float o9595_0_1_f = o9595_0_clamp_false;
vec2 o9604_0_slope = o9604_slope(((scale((uv), vec2(0.5+p_o425155_cx, 0.5+p_o425155_cy), vec2(p_o425155_scale_x, p_o425155_scale_y)))+p_o9625_amount*o9625_0_warp), p_o9604_eps);
vec2 o9604_0_warp = o9604_0_slope;float o9549_0_7_f = p_o9549_color;
float o9548_0_7_f = shape_circle((((scale((uv), vec2(0.5+p_o425155_cx, 0.5+p_o425155_cy), vec2(p_o425155_scale_x, p_o425155_scale_y)))+p_o9625_amount*o9625_0_warp)+p_o9604_amount*o9604_0_warp), p_o9548_sides, p_o9548_radius*o9549_0_7_f, p_o9548_edge*1.0);
float o9607_0_5_f = o9607_curve_curve_fct(o9549_0_7_f);
float o9551_6_clamp_false = o9607_0_5_f-p_o9551_default_in2;
float o9551_6_clamp_true = clamp(o9551_6_clamp_false, 0.0, 1.0);
float o9551_0_8_f = o9551_6_clamp_false;
float o9553_6_clamp_false = o9551_0_8_f/p_o9553_default_in2;
float o9553_6_clamp_true = clamp(o9553_6_clamp_false, 0.0, 1.0);
float o9553_0_8_f = o9553_6_clamp_false;
float o9550_0_7_f = shape_circle((((scale((uv), vec2(0.5+p_o425155_cx, 0.5+p_o425155_cy), vec2(p_o425155_scale_x, p_o425155_scale_y)))+p_o9625_amount*o9625_0_warp)+p_o9604_amount*o9604_0_warp), p_o9550_sides, p_o9550_radius*o9553_0_8_f, p_o9550_edge*1.0);
float o9552_4_clamp_false = o9548_0_7_f-o9550_0_7_f;
float o9552_4_clamp_true = clamp(o9552_4_clamp_false, 0.0, 1.0);
float o9552_0_5_f = o9552_4_clamp_false;
float o9555_0_5_f = o9555_curve_curve_fct(o9549_0_7_f);
float o9554_4_clamp_false = o9552_0_5_f*o9555_0_5_f;
float o9554_4_clamp_true = clamp(o9554_4_clamp_false, 0.0, 1.0);
float o9554_0_5_f = o9554_4_clamp_false;
vec4 o9598_2 = textureLod(texture_2, (((scale((uv), vec2(0.5+p_o425155_cx, 0.5+p_o425155_cy), vec2(p_o425155_scale_x, p_o425155_scale_y)))+p_o9625_amount*o9625_0_warp)+p_o9604_amount*o9604_0_warp)-vec2(p_o9602_translate_x, (- elapsed_time / 12.0)), 0.0);
vec4 o9602_0_5_rgba = o9598_2;
float o9601_4_clamp_false = o9554_0_5_f*(dot((o9602_0_5_rgba).rgb, vec3(1.0))/3.0);
float o9601_4_clamp_true = clamp(o9601_4_clamp_false, 0.0, 1.0);
float o9601_0_5_f = o9601_4_clamp_false;
vec4 o9604_0_1_rgba = vec4(vec3(o9601_0_5_f), 1.0);
float o9603_0_clamp_false = o9595_0_1_f*(dot((o9604_0_1_rgba).rgb, vec3(1.0))/3.0);
float o9603_0_clamp_true = clamp(o9603_0_clamp_false, 0.0, 1.0);
float o9603_0_1_f = o9603_0_clamp_false;
float o9606_0_clamp_false = o9603_0_1_f*p_o9606_default_in2;
float o9606_0_clamp_true = clamp(o9606_0_clamp_false, 0.0, 1.0);
float o9606_0_2_f = o9606_0_clamp_false;
vec4 o9625_0_1_rgba = vec4(vec3(o9606_0_2_f), 1.0);
vec4 o111395_0_s1 = o305707_0_1_rgba;
vec4 o111395_0_s2 = o9625_0_1_rgba;
float o111395_0_a = p_o111395_amount*1.0;
vec4 o111395_0_2_rgba = vec4(blend_screen((scale((uv), vec2(0.5+p_o425155_cx, 0.5+p_o425155_cy), vec2(p_o425155_scale_x, p_o425155_scale_y))), o111395_0_s1.rgb, o111395_0_s2.rgb, o111395_0_a*o111395_0_s1.a), min(1.0, o111395_0_s2.a+o111395_0_a*o111395_0_s1.a));
vec4 o9579_0_1_rgba = o9579_gradient_gradient_fct((dot((o111395_0_2_rgba).rgb, vec3(1.0))/3.0));
vec4 o9600_0_1_rgba = o9600_f(o9579_0_1_rgba);
vec4 o425155_0_1_rgba = o9600_0_1_rgba;
vec4 color_tex = o425155_0_1_rgba;
color_tex = mix(pow((color_tex + vec4(0.055)) * (1.0 / (1.0 + 0.055)),vec4(2.4)),color_tex * (1.0 / 12.92),lessThan(color_tex,vec4(0.04045)));
ALBEDO = color_tex.rgb;
ALPHA = color_tex.a;
}

View File

@ -0,0 +1,11 @@
[gd_resource type="ShaderMaterial" load_steps=2 format=2]
[ext_resource path="EnergyHit.shader" type="Shader" id=1]
[ext_resource path="res://EnergyHit_texture_1.png" type="Texture" id=2]
[ext_resource path="res://EnergyHit_texture_2.png" type="Texture" id=3]
[resource]
shader = ExtResource( 1 )
shader_param/texture_1 = ExtResource( 2 )
shader_param/texture_2 = ExtResource( 3 )

BIN
Game/Assets/Effects/EnergyHit_texture_1.png (Stored with Git LFS) Normal file

Binary file not shown.

View File

@ -0,0 +1,35 @@
[remap]
importer="texture"
type="StreamTexture2D"
uid="uid://c5dliecb55evh"
path="res://.godot/imported/EnergyHit_texture_1.png-e4cfde2ac8487cb9c2ef5c4a332c8763.stex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://Assets/Effects/EnergyHit_texture_1.png"
dest_files=["res://.godot/imported/EnergyHit_texture_1.png-e4cfde2ac8487cb9c2ef5c4a332c8763.stex"]
[params]
compress/mode=0
compress/lossy_quality=0.7
compress/hdr_compression=1
compress/bptc_ldr=0
compress/normal_map=0
compress/channel_pack=0
compress/streamed=false
mipmaps/generate=false
mipmaps/limit=-1
roughness/mode=0
roughness/src_normal=""
process/fix_alpha_border=true
process/premult_alpha=false
process/normal_map_invert_y=false
process/HDR_as_SRGB=false
process/size_limit=0
detect_3d/compress_to=1
svg/scale=1.0

BIN
Game/Assets/Effects/EnergyHit_texture_2.png (Stored with Git LFS) Normal file

Binary file not shown.

View File

@ -0,0 +1,35 @@
[remap]
importer="texture"
type="StreamTexture2D"
uid="uid://cxkigvhuxsp87"
path="res://.godot/imported/EnergyHit_texture_2.png-98146f7f44d5704316be3c03b0b42953.stex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://Assets/Effects/EnergyHit_texture_2.png"
dest_files=["res://.godot/imported/EnergyHit_texture_2.png-98146f7f44d5704316be3c03b0b42953.stex"]
[params]
compress/mode=0
compress/lossy_quality=0.7
compress/hdr_compression=1
compress/bptc_ldr=0
compress/normal_map=0
compress/channel_pack=0
compress/streamed=false
mipmaps/generate=false
mipmaps/limit=-1
roughness/mode=0
roughness/src_normal=""
process/fix_alpha_border=true
process/premult_alpha=false
process/normal_map_invert_y=false
process/HDR_as_SRGB=false
process/size_limit=0
detect_3d/compress_to=1
svg/scale=1.0

View File

@ -2,6 +2,9 @@ extends Node3D
func _ready():
$CPUParticles3D.emitting = true
self.look_at(get_viewport().get_camera_3d().global_transform.origin)
$MeshInstance3D.get_active_material(0).set("shader_params/o3007790_OFFSET", randf_range(0, 1))
func _on_Timer_timeout():
queue_free()

View File

@ -0,0 +1,594 @@
shader_type spatial;
varying float elapsed_time;
void vertex() {
elapsed_time = TIME;
}
//---
float rand(vec2 x) {
return fract(cos(mod(dot(x, vec2(13.9898, 8.141)), 3.14)) * 43758.5453);
}
vec2 rand2(vec2 x) {
return fract(cos(mod(vec2(dot(x, vec2(13.9898, 8.141)),
dot(x, vec2(3.4562, 17.398))), vec2(3.14))) * 43758.5453);
}
vec3 rand3(vec2 x) {
return fract(cos(mod(vec3(dot(x, vec2(13.9898, 8.141)),
dot(x, vec2(3.4562, 17.398)),
dot(x, vec2(13.254, 5.867))), vec3(3.14))) * 43758.5453);
}
vec3 rgb2hsv(vec3 c) {
vec4 K = vec4(0.0, -1.0 / 3.0, 2.0 / 3.0, -1.0);
vec4 p = c.g < c.b ? vec4(c.bg, K.wz) : vec4(c.gb, K.xy);
vec4 q = c.r < p.x ? vec4(p.xyw, c.r) : vec4(c.r, p.yzx);
float d = q.x - min(q.w, q.y);
float e = 1.0e-10;
return vec3(abs(q.z + (q.w - q.y) / (6.0 * d + e)), d / (q.x + e), q.x);
}
vec3 hsv2rgb(vec3 c) {
vec4 K = vec4(1.0, 2.0 / 3.0, 1.0 / 3.0, 3.0);
vec3 p = abs(fract(c.xxx + K.xyz) * 6.0 - K.www);
return c.z * mix(K.xxx, clamp(p - K.xxx, 0.0, 1.0), c.y);
}
instance uniform float o3007790_ANIM = 0.0; // {default:0.5, label:Animation, max:1, min:0, name:ANIM, step:0.01, type:named_parameter}
instance uniform float o3007790_OFFSET = 0.0; // {default:0.5, label:Offset, max:1, min:0, name:OFFSET, step:0.01, type:named_parameter}
float perlin(vec2 uv, vec2 size, int iterations, float persistence, int seed) {
vec2 seed2 = rand2(vec2(float(seed), 1.0-float(seed)));
float rv = 0.0;
float coef = 1.0;
float acc = 0.0;
for (int i = 0; i < iterations; ++i) {
vec2 step = vec2(1.0)/size;
vec2 xy = floor(uv*size);
float f0 = rand(seed2+mod(xy, size));
float f1 = rand(seed2+mod(xy+vec2(1.0, 0.0), size));
float f2 = rand(seed2+mod(xy+vec2(0.0, 1.0), size));
float f3 = rand(seed2+mod(xy+vec2(1.0, 1.0), size));
vec2 mixval = smoothstep(0.0, 1.0, fract(uv*size));
rv += coef * mix(mix(f0, f1, mixval.x), mix(f2, f3, mixval.x), mixval.y);
acc += coef;
size *= 2.0;
coef *= persistence;
}
return rv / acc;
}
float shape_circle(vec2 uv, float sides, float size, float edge) {
uv = 2.0*uv-1.0;
edge = max(edge, 1.0e-8);
float distance = length(uv);
return clamp((1.0-distance/size)/edge, 0.0, 1.0);
}
float shape_polygon(vec2 uv, float sides, float size, float edge) {
uv = 2.0*uv-1.0;
edge = max(edge, 1.0e-8);
float angle = atan(uv.x, uv.y)+3.14159265359;
float slice = 6.28318530718/sides;
return clamp((1.0-(cos(floor(0.5+angle/slice)*slice-angle)*length(uv))/size)/edge, 0.0, 1.0);
}
float shape_star(vec2 uv, float sides, float size, float edge) {
uv = 2.0*uv-1.0;
edge = max(edge, 1.0e-8);
float angle = atan(uv.x, uv.y);
float slice = 6.28318530718/sides;
return clamp((1.0-(cos(floor(angle*sides/6.28318530718-0.5+2.0*step(fract(angle*sides/6.28318530718), 0.5))*slice-angle)*length(uv))/size)/edge, 0.0, 1.0);
}
float shape_curved_star(vec2 uv, float sides, float size, float edge) {
uv = 2.0*uv-1.0;
edge = max(edge, 1.0e-8);
float angle = 2.0*(atan(uv.x, uv.y)+3.14159265359);
float slice = 6.28318530718/sides;
return clamp((1.0-cos(floor(0.5+0.5*angle/slice)*2.0*slice-angle)*length(uv)/size)/edge, 0.0, 1.0);
}
float shape_rays(vec2 uv, float sides, float size, float edge) {
uv = 2.0*uv-1.0;
edge = 0.5*max(edge, 1.0e-8)*size;
float slice = 6.28318530718/sides;
float angle = mod(atan(uv.x, uv.y)+3.14159265359, slice)/slice;
return clamp(min((size-angle)/edge, angle/edge), 0.0, 1.0);
}
vec2 transform2_clamp(vec2 uv) {
return clamp(uv, vec2(0.0), vec2(1.0));
}
vec2 transform2(vec2 uv, vec2 translate, float rotate, vec2 scale) {
vec2 rv;
uv -= translate;
uv -= vec2(0.5);
rv.x = cos(rotate)*uv.x + sin(rotate)*uv.y;
rv.y = -sin(rotate)*uv.x + cos(rotate)*uv.y;
rv /= scale;
rv += vec2(0.5);
return rv;
}vec2 rotate(vec2 uv, vec2 center, float rotate) {
vec2 rv;
uv -= center;
rv.x = cos(rotate)*uv.x + sin(rotate)*uv.y;
rv.y = -sin(rotate)*uv.x + cos(rotate)*uv.y;
rv += center;
return rv;
}// Based on https://www.shadertoy.com/view/ldl3W8
// The MIT License
// Copyright © 2013 Inigo Quilez
vec3 iq_voronoi(vec2 x, vec2 size, vec2 stretch, float randomness, vec2 seed) {
vec2 n = floor(x);
vec2 f = fract(x);
vec2 mg, mr, mc;
float md = 8.0;
for (int j=-1; j<=1; j++)
for (int i=-1; i<=1; i++) {
vec2 g = vec2(float(i),float(j));
vec2 o = randomness*rand2(seed + mod(n + g + size, size));
vec2 c = g + o;
vec2 r = c - f;
vec2 rr = r*stretch;
float d = dot(rr,rr);
if (d<md) {
mc = c;
md = d;
mr = r;
mg = g;
}
}
md = 8.0;
for (int j=-2; j<=2; j++)
for (int i=-2; i<=2; i++) {
vec2 g = mg + vec2(float(i),float(j));
vec2 o = randomness*rand2(seed + mod(n + g + size, size));
vec2 r = g + o - f;
vec2 rr = (mr-r)*stretch;
if (dot(rr,rr)>0.00001)
md = min(md, dot(0.5*(mr+r)*stretch, normalize((r-mr)*stretch)));
}
return vec3(md, mc+n);
}
vec4 voronoi(vec2 uv, vec2 size, vec2 stretch, float intensity, float randomness, int seed) {
uv *= size;
vec3 v = iq_voronoi(uv, size, stretch, randomness, rand2(vec2(float(seed), 1.0-float(seed))));
return vec4(v.yz, intensity*length((uv-v.yz)*stretch), v.x);
}
vec3 blend_normal(vec2 uv, vec3 c1, vec3 c2, float opacity) {
return opacity*c1 + (1.0-opacity)*c2;
}
vec3 blend_dissolve(vec2 uv, vec3 c1, vec3 c2, float opacity) {
if (rand(uv) < opacity) {
return c1;
} else {
return c2;
}
}
vec3 blend_multiply(vec2 uv, vec3 c1, vec3 c2, float opacity) {
return opacity*c1*c2 + (1.0-opacity)*c2;
}
vec3 blend_screen(vec2 uv, vec3 c1, vec3 c2, float opacity) {
return opacity*(1.0-(1.0-c1)*(1.0-c2)) + (1.0-opacity)*c2;
}
float blend_overlay_f(float c1, float c2) {
return (c1 < 0.5) ? (2.0*c1*c2) : (1.0-2.0*(1.0-c1)*(1.0-c2));
}
vec3 blend_overlay(vec2 uv, vec3 c1, vec3 c2, float opacity) {
return opacity*vec3(blend_overlay_f(c1.x, c2.x), blend_overlay_f(c1.y, c2.y), blend_overlay_f(c1.z, c2.z)) + (1.0-opacity)*c2;
}
vec3 blend_hard_light(vec2 uv, vec3 c1, vec3 c2, float opacity) {
return opacity*0.5*(c1*c2+blend_overlay(uv, c1, c2, 1.0)) + (1.0-opacity)*c2;
}
float blend_soft_light_f(float c1, float c2) {
return (c2 < 0.5) ? (2.0*c1*c2+c1*c1*(1.0-2.0*c2)) : 2.0*c1*(1.0-c2)+sqrt(c1)*(2.0*c2-1.0);
}
vec3 blend_soft_light(vec2 uv, vec3 c1, vec3 c2, float opacity) {
return opacity*vec3(blend_soft_light_f(c1.x, c2.x), blend_soft_light_f(c1.y, c2.y), blend_soft_light_f(c1.z, c2.z)) + (1.0-opacity)*c2;
}
float blend_burn_f(float c1, float c2) {
return (c1==0.0)?c1:max((1.0-((1.0-c2)/c1)),0.0);
}
vec3 blend_burn(vec2 uv, vec3 c1, vec3 c2, float opacity) {
return opacity*vec3(blend_burn_f(c1.x, c2.x), blend_burn_f(c1.y, c2.y), blend_burn_f(c1.z, c2.z)) + (1.0-opacity)*c2;
}
float blend_dodge_f(float c1, float c2) {
return (c1==1.0)?c1:min(c2/(1.0-c1),1.0);
}
vec3 blend_dodge(vec2 uv, vec3 c1, vec3 c2, float opacity) {
return opacity*vec3(blend_dodge_f(c1.x, c2.x), blend_dodge_f(c1.y, c2.y), blend_dodge_f(c1.z, c2.z)) + (1.0-opacity)*c2;
}
vec3 blend_lighten(vec2 uv, vec3 c1, vec3 c2, float opacity) {
return opacity*max(c1, c2) + (1.0-opacity)*c2;
}
vec3 blend_darken(vec2 uv, vec3 c1, vec3 c2, float opacity) {
return opacity*min(c1, c2) + (1.0-opacity)*c2;
}
vec3 blend_difference(vec2 uv, vec3 c1, vec3 c2, float opacity) {
return opacity*clamp(c2-c1, vec3(0.0), vec3(1.0)) + (1.0-opacity)*c2;
}
vec2 scale(vec2 uv, vec2 center, vec2 scale) {
uv -= center;
uv /= scale;
uv += center;
return uv;
}const float p_o2619577_default_in1 = 0.050000001;
const float p_o2619577_default_in2 = 0.000000000;
const float p_o3442925_cx = 0.000000000;
const float p_o3442925_cy = 0.000000000;
const float p_o3442925_scale_x = 2.099999905;
const float p_o3442925_scale_y = 2.099999905;
const float p_o2609904_default_in1 = 0.000000000;
const float p_o2609904_default_in2 = 0.000000000;
const float p_o1839956_default_in1 = 0.000000000;
const float p_o1839956_default_in2 = 1.000000000;
const float p_o1666169_amount = 1.000000000;
const float p_o3278853_cx = 0.000000000;
const float p_o3278853_cy = 0.000000000;
const float p_o1730094_translate_x = 0.000000000;
const float p_o1730094_translate_y = 0.000000000;
const float p_o1730094_rotate = 0.000000000;
const float p_o1730094_scale_x = 2.000000000;
const float p_o1730094_scale_y = 2.000000000;
const float p_o1711848_default_in1 = 0.000000000;
const float p_o1711848_default_in2 = 0.200000000;
const float p_o1053514_default_in1 = 0.000000000;
const float p_o1053514_default_in2 = 0.000000000;
const float p_o2016703_in_min = -0.280000000;
const float p_o2016703_in_max = 1.000000000;
const float p_o2016703_out_min = 0.000000000;
const float p_o2016703_out_max = 1.000000000;
const float p_o2003912_gradient_0_pos = 0.000000000;
const float p_o2003912_gradient_0_r = 0.000000000;
const float p_o2003912_gradient_0_g = 0.000000000;
const float p_o2003912_gradient_0_b = 0.000000000;
const float p_o2003912_gradient_0_a = 1.000000000;
const float p_o2003912_gradient_1_pos = 1.000000000;
const float p_o2003912_gradient_1_r = 1.000000000;
const float p_o2003912_gradient_1_g = 1.000000000;
const float p_o2003912_gradient_1_b = 1.000000000;
const float p_o2003912_gradient_1_a = 1.000000000;
vec4 o2003912_gradient_gradient_fct(float x) {
if (x < p_o2003912_gradient_0_pos) {
return vec4(p_o2003912_gradient_0_r,p_o2003912_gradient_0_g,p_o2003912_gradient_0_b,p_o2003912_gradient_0_a);
} else if (x < p_o2003912_gradient_1_pos) {
return mix(vec4(p_o2003912_gradient_0_r,p_o2003912_gradient_0_g,p_o2003912_gradient_0_b,p_o2003912_gradient_0_a), vec4(p_o2003912_gradient_1_r,p_o2003912_gradient_1_g,p_o2003912_gradient_1_b,p_o2003912_gradient_1_a), ((x-p_o2003912_gradient_0_pos)/(p_o2003912_gradient_1_pos-p_o2003912_gradient_0_pos)));
}
return vec4(p_o2003912_gradient_1_r,p_o2003912_gradient_1_g,p_o2003912_gradient_1_b,p_o2003912_gradient_1_a);
}
const float p_o1874989_default_in2 = 0.550000000;
const float p_o1646672_sides = 2.000000000;
const float p_o1646672_radius = 1.000000000;
const float p_o1646672_edge = 5.000000000;
const int seed_o1646669 = -20210;
const float p_o1646669_scale_x = 32.000000000;
const float p_o1646669_scale_y = 32.000000000;
const float p_o1646669_iterations = 8.000000000;
const float p_o1646669_persistence = 0.400000000;
const float p_o1227913_amount = 1.000000000;
const float p_o1227347_sides = 2.000000000;
const float p_o1227347_radius = 1.000000000;
const float p_o1227347_edge = 1.000000000;
const float p_o3232740_cx = 0.000000000;
const float p_o3232740_cy = 0.000000000;
const int seed_o1383595 = -22407;
const float p_o1383595_scale_x = 7.000000000;
const float p_o1383595_scale_y = 7.000000000;
const float p_o1383595_iterations = 2.000000000;
const float p_o1383595_persistence = 0.950000000;
const float p_o1170149_radius = 1.000000000;
const float p_o1170149_repeat = 1.000000000;
const float p_o1175160_cx = 0.000000000;
const float p_o1175160_cy = 0.000000000;
const float p_o1175160_rotate = 180.000000000;
const float p_o3180989_translate_y = 0.000000000;
const float p_o1107567_amount = 1.000000000;
const float p_o1115718_translate_x = 0.000000000;
const float p_o1115718_translate_y = -0.649999976;
const float p_o1115718_rotate = 0.000000000;
const float p_o1115718_scale_x = 1.000000000;
const float p_o1115718_scale_y = 1.000000000;
const int seed_o1098035 = -53939;
const float p_o1098035_scale_x = 64.000000000;
const float p_o1098035_scale_y = 6.000000000;
const float p_o1098035_stretch_x = 1.000000000;
const float p_o1098035_stretch_y = 1.000000000;
const float p_o1098035_intensity = 1.000000000;
const float p_o1098035_randomness = 0.850000000;
const float p_o1135497_gradient_0_pos = 0.718181818;
const float p_o1135497_gradient_0_r = 0.000000000;
const float p_o1135497_gradient_0_g = 0.000000000;
const float p_o1135497_gradient_0_b = 0.000000000;
const float p_o1135497_gradient_0_a = 1.000000000;
const float p_o1135497_gradient_1_pos = 0.918181818;
const float p_o1135497_gradient_1_r = 1.000000000;
const float p_o1135497_gradient_1_g = 1.000000000;
const float p_o1135497_gradient_1_b = 1.000000000;
const float p_o1135497_gradient_1_a = 1.000000000;
const float p_o1135497_gradient_2_pos = 0.945454545;
const float p_o1135497_gradient_2_r = 0.000000000;
const float p_o1135497_gradient_2_g = 0.000000000;
const float p_o1135497_gradient_2_b = 0.000000000;
const float p_o1135497_gradient_2_a = 1.000000000;
vec4 o1135497_gradient_gradient_fct(float x) {
if (x < p_o1135497_gradient_0_pos) {
return vec4(p_o1135497_gradient_0_r,p_o1135497_gradient_0_g,p_o1135497_gradient_0_b,p_o1135497_gradient_0_a);
} else if (x < p_o1135497_gradient_1_pos) {
return mix(vec4(p_o1135497_gradient_0_r,p_o1135497_gradient_0_g,p_o1135497_gradient_0_b,p_o1135497_gradient_0_a), vec4(p_o1135497_gradient_1_r,p_o1135497_gradient_1_g,p_o1135497_gradient_1_b,p_o1135497_gradient_1_a), ((x-p_o1135497_gradient_0_pos)/(p_o1135497_gradient_1_pos-p_o1135497_gradient_0_pos)));
} else if (x < p_o1135497_gradient_2_pos) {
return mix(vec4(p_o1135497_gradient_1_r,p_o1135497_gradient_1_g,p_o1135497_gradient_1_b,p_o1135497_gradient_1_a), vec4(p_o1135497_gradient_2_r,p_o1135497_gradient_2_g,p_o1135497_gradient_2_b,p_o1135497_gradient_2_a), ((x-p_o1135497_gradient_1_pos)/(p_o1135497_gradient_2_pos-p_o1135497_gradient_1_pos)));
}
return vec4(p_o1135497_gradient_2_r,p_o1135497_gradient_2_g,p_o1135497_gradient_2_b,p_o1135497_gradient_2_a);
}
const float p_o1147502_in_min = -1.950000000;
const float p_o1147502_in_max = 2.510000000;
const float p_o1147502_out_min = 0.080000000;
const float p_o1147502_out_max = 2.000000000;
const float p_o1079786_default_in1 = 0.000000000;
const float p_o1079786_default_in2 = 0.000000000;
const float p_o1544215_amount = 0.340000000;
const float p_o3153493_translate_y = 0.000000000;
const int seed_o1541301 = -32562;
const float p_o1541301_scale_x = 12.000000000;
const float p_o1541301_scale_y = 1.000000000;
const float p_o1541301_iterations = 1.000000000;
const float p_o1541301_persistence = 0.500000000;
const float p_o1047621_repeat = 1.000000000;
const float p_o1047621_rotate = -90.000000000;
const float p_o1047621_gradient_0_pos = 0.000000000;
const float p_o1047621_gradient_0_r = 0.000000000;
const float p_o1047621_gradient_0_g = 0.000000000;
const float p_o1047621_gradient_0_b = 0.000000000;
const float p_o1047621_gradient_0_a = 1.000000000;
const float p_o1047621_gradient_1_pos = 1.000000000;
const float p_o1047621_gradient_1_r = 1.000000000;
const float p_o1047621_gradient_1_g = 1.000000000;
const float p_o1047621_gradient_1_b = 1.000000000;
const float p_o1047621_gradient_1_a = 1.000000000;
vec4 o1047621_gradient_gradient_fct(float x) {
if (x < p_o1047621_gradient_0_pos) {
return vec4(p_o1047621_gradient_0_r,p_o1047621_gradient_0_g,p_o1047621_gradient_0_b,p_o1047621_gradient_0_a);
} else if (x < p_o1047621_gradient_1_pos) {
return mix(vec4(p_o1047621_gradient_0_r,p_o1047621_gradient_0_g,p_o1047621_gradient_0_b,p_o1047621_gradient_0_a), vec4(p_o1047621_gradient_1_r,p_o1047621_gradient_1_g,p_o1047621_gradient_1_b,p_o1047621_gradient_1_a), ((x-p_o1047621_gradient_0_pos)/(p_o1047621_gradient_1_pos-p_o1047621_gradient_0_pos)));
}
return vec4(p_o1047621_gradient_1_r,p_o1047621_gradient_1_g,p_o1047621_gradient_1_b,p_o1047621_gradient_1_a);
}
const float p_o2313099_curve_0_x = 0.000000000;
const float p_o2313099_curve_0_y = 0.887122393;
const float p_o2313099_curve_0_ls = 0.000000000;
const float p_o2313099_curve_0_rs = -0.653084097;
const float p_o2313099_curve_1_x = 0.451992810;
const float p_o2313099_curve_1_y = 0.484896600;
const float p_o2313099_curve_1_ls = -0.936088853;
const float p_o2313099_curve_1_rs = -1.978554322;
const float p_o2313099_curve_2_x = 1.000000000;
const float p_o2313099_curve_2_y = 0.000000000;
const float p_o2313099_curve_2_ls = 0.068362479;
const float p_o2313099_curve_2_rs = -0.000000000;
float o2313099_curve_curve_fct(float x) {
if (x <= p_o2313099_curve_1_x) {
float dx = x - p_o2313099_curve_0_x;
float d = p_o2313099_curve_1_x - p_o2313099_curve_0_x;
float t = dx/d;
float omt = (1.0 - t);
float omt2 = omt * omt;
float omt3 = omt2 * omt;
float t2 = t * t;
float t3 = t2 * t;
d /= 3.0;
float y1 = p_o2313099_curve_0_y;
float yac = p_o2313099_curve_0_y + d*p_o2313099_curve_0_rs;
float ybc = p_o2313099_curve_1_y - d*p_o2313099_curve_1_ls;
float y2 = p_o2313099_curve_1_y;
return y1*omt3 + yac*omt2*t*3.0 + ybc*omt*t2*3.0 + y2*t3;
}
if (x <= p_o2313099_curve_2_x) {
float dx = x - p_o2313099_curve_1_x;
float d = p_o2313099_curve_2_x - p_o2313099_curve_1_x;
float t = dx/d;
float omt = (1.0 - t);
float omt2 = omt * omt;
float omt3 = omt2 * omt;
float t2 = t * t;
float t3 = t2 * t;
d /= 3.0;
float y1 = p_o2313099_curve_1_y;
float yac = p_o2313099_curve_1_y + d*p_o2313099_curve_1_rs;
float ybc = p_o2313099_curve_2_y - d*p_o2313099_curve_2_ls;
float y2 = p_o2313099_curve_2_y;
return y1*omt3 + yac*omt2*t*3.0 + ybc*omt*t2*3.0 + y2*t3;
}
}
const float p_o2047992_curve_0_x = 0.000000000;
const float p_o2047992_curve_0_y = 1.000000000;
const float p_o2047992_curve_0_ls = 0.000000000;
const float p_o2047992_curve_0_rs = -37.443563156;
const float p_o2047992_curve_1_x = 0.045742754;
const float p_o2047992_curve_1_y = 0.004769504;
const float p_o2047992_curve_1_ls = 0.000000000;
const float p_o2047992_curve_1_rs = -0.000000000;
const float p_o2047992_curve_2_x = 0.202898547;
const float p_o2047992_curve_2_y = 0.069952309;
const float p_o2047992_curve_2_ls = 1.276485086;
const float p_o2047992_curve_2_rs = 0.566182865;
const float p_o2047992_curve_3_x = 0.633605063;
const float p_o2047992_curve_3_y = 0.527821898;
const float p_o2047992_curve_3_ls = 2.990280303;
const float p_o2047992_curve_3_rs = 3.026153690;
const float p_o2047992_curve_4_x = 1.000000000;
const float p_o2047992_curve_4_y = 1.000000000;
const float p_o2047992_curve_4_ls = 0.266607613;
const float p_o2047992_curve_4_rs = -0.000000000;
float o2047992_curve_curve_fct(float x) {
if (x <= p_o2047992_curve_1_x) {
float dx = x - p_o2047992_curve_0_x;
float d = p_o2047992_curve_1_x - p_o2047992_curve_0_x;
float t = dx/d;
float omt = (1.0 - t);
float omt2 = omt * omt;
float omt3 = omt2 * omt;
float t2 = t * t;
float t3 = t2 * t;
d /= 3.0;
float y1 = p_o2047992_curve_0_y;
float yac = p_o2047992_curve_0_y + d*p_o2047992_curve_0_rs;
float ybc = p_o2047992_curve_1_y - d*p_o2047992_curve_1_ls;
float y2 = p_o2047992_curve_1_y;
return y1*omt3 + yac*omt2*t*3.0 + ybc*omt*t2*3.0 + y2*t3;
}
if (x <= p_o2047992_curve_2_x) {
float dx = x - p_o2047992_curve_1_x;
float d = p_o2047992_curve_2_x - p_o2047992_curve_1_x;
float t = dx/d;
float omt = (1.0 - t);
float omt2 = omt * omt;
float omt3 = omt2 * omt;
float t2 = t * t;
float t3 = t2 * t;
d /= 3.0;
float y1 = p_o2047992_curve_1_y;
float yac = p_o2047992_curve_1_y + d*p_o2047992_curve_1_rs;
float ybc = p_o2047992_curve_2_y - d*p_o2047992_curve_2_ls;
float y2 = p_o2047992_curve_2_y;
return y1*omt3 + yac*omt2*t*3.0 + ybc*omt*t2*3.0 + y2*t3;
}
if (x <= p_o2047992_curve_3_x) {
float dx = x - p_o2047992_curve_2_x;
float d = p_o2047992_curve_3_x - p_o2047992_curve_2_x;
float t = dx/d;
float omt = (1.0 - t);
float omt2 = omt * omt;
float omt3 = omt2 * omt;
float t2 = t * t;
float t3 = t2 * t;
d /= 3.0;
float y1 = p_o2047992_curve_2_y;
float yac = p_o2047992_curve_2_y + d*p_o2047992_curve_2_rs;
float ybc = p_o2047992_curve_3_y - d*p_o2047992_curve_3_ls;
float y2 = p_o2047992_curve_3_y;
return y1*omt3 + yac*omt2*t*3.0 + ybc*omt*t2*3.0 + y2*t3;
}
if (x <= p_o2047992_curve_4_x) {
float dx = x - p_o2047992_curve_3_x;
float d = p_o2047992_curve_4_x - p_o2047992_curve_3_x;
float t = dx/d;
float omt = (1.0 - t);
float omt2 = omt * omt;
float omt3 = omt2 * omt;
float t2 = t * t;
float t3 = t2 * t;
d /= 3.0;
float y1 = p_o2047992_curve_3_y;
float yac = p_o2047992_curve_3_y + d*p_o2047992_curve_3_rs;
float ybc = p_o2047992_curve_4_y - d*p_o2047992_curve_4_ls;
float y2 = p_o2047992_curve_4_y;
return y1*omt3 + yac*omt2*t*3.0 + ybc*omt*t2*3.0 + y2*t3;
}
}
void fragment() {
float o1874989_0_clamp_false = (o3007790_ANIM)*p_o1874989_default_in2;
float o1874989_0_clamp_true = clamp(o1874989_0_clamp_false, 0.0, 1.0);
float o1874989_0_2_f = o1874989_0_clamp_false;
vec4 o2003912_0_1_rgba = o2003912_gradient_gradient_fct(o1874989_0_2_f);
vec4 o2016703_0_1_rgba = vec4(vec3(p_o2016703_out_min)+(o2003912_0_1_rgba.rgb-vec3(p_o2016703_in_min))*vec3((p_o2016703_out_max-p_o2016703_out_min)/(p_o2016703_in_max-p_o2016703_in_min)), o2003912_0_1_rgba.a);
float o1053514_0_clamp_false = abs((dot((o2016703_0_1_rgba).rgb, vec3(1.0))/3.0));
float o1053514_0_clamp_true = clamp(o1053514_0_clamp_false, 0.0, 1.0);
float o1053514_0_1_f = o1053514_0_clamp_true;
float o1711848_0_clamp_false = o1053514_0_1_f+p_o1711848_default_in2;
float o1711848_0_clamp_true = clamp(o1711848_0_clamp_false, 0.0, 1.0);
float o1711848_0_2_f = o1711848_0_clamp_false;
float o1646669_0_1_f = perlin((transform2_clamp(transform2((rotate((scale((UV), vec2(0.5+p_o3442925_cx, 0.5+p_o3442925_cy), vec2(p_o3442925_scale_x, p_o3442925_scale_y))), vec2(0.5+p_o3278853_cx, 0.5+p_o3278853_cy), (o3007790_OFFSET * 530.0)*0.01745329251)), vec2(p_o1730094_translate_x*(2.0*1.0-1.0), p_o1730094_translate_y*(2.0*1.0-1.0)), p_o1730094_rotate*0.01745329251*(2.0*1.0-1.0), vec2(p_o1730094_scale_x*(2.0*o1711848_0_2_f-1.0), p_o1730094_scale_y*(2.0*o1711848_0_2_f-1.0))))), vec2(p_o1646669_scale_x, p_o1646669_scale_y), int(p_o1646669_iterations), p_o1646669_persistence, seed_o1646669);
float o1646672_0_1_f = shape_circle((transform2_clamp(transform2((rotate((scale((UV), vec2(0.5+p_o3442925_cx, 0.5+p_o3442925_cy), vec2(p_o3442925_scale_x, p_o3442925_scale_y))), vec2(0.5+p_o3278853_cx, 0.5+p_o3278853_cy), (o3007790_OFFSET * 530.0)*0.01745329251)), vec2(p_o1730094_translate_x*(2.0*1.0-1.0), p_o1730094_translate_y*(2.0*1.0-1.0)), p_o1730094_rotate*0.01745329251*(2.0*1.0-1.0), vec2(p_o1730094_scale_x*(2.0*o1711848_0_2_f-1.0), p_o1730094_scale_y*(2.0*o1711848_0_2_f-1.0))))), p_o1646672_sides, p_o1646672_radius*1.0, p_o1646672_edge*o1646669_0_1_f);
vec4 o1730094_0_1_rgba = vec4(vec3(o1646672_0_1_f), 1.0);
vec4 o3278853_0_1_rgba = o1730094_0_1_rgba;
float o1383595_0_1_f = perlin((rotate((scale((UV), vec2(0.5+p_o3442925_cx, 0.5+p_o3442925_cy), vec2(p_o3442925_scale_x, p_o3442925_scale_y))), vec2(0.5+p_o3232740_cx, 0.5+p_o3232740_cy), (o3007790_OFFSET * 180.0)*0.01745329251)), vec2(p_o1383595_scale_x, p_o1383595_scale_y), int(p_o1383595_iterations), p_o1383595_persistence, seed_o1383595);
vec4 o3232740_0_1_rgba = vec4(vec3(o1383595_0_1_f), 1.0);
float o1227347_0_1_f = shape_circle((scale((UV), vec2(0.5+p_o3442925_cx, 0.5+p_o3442925_cy), vec2(p_o3442925_scale_x, p_o3442925_scale_y))), p_o1227347_sides, p_o1227347_radius*(dot((o3232740_0_1_rgba).rgb, vec3(1.0))/3.0), p_o1227347_edge*1.0);
float o1874989_3_clamp_false = (o3007790_ANIM)*p_o1874989_default_in2;
float o1874989_3_clamp_true = clamp(o1874989_3_clamp_false, 0.0, 1.0);
float o1874989_0_5_f = o1874989_3_clamp_false;
vec4 o2003912_0_3_rgba = o2003912_gradient_gradient_fct(o1874989_0_5_f);
vec4 o2016703_0_3_rgba = vec4(vec3(p_o2016703_out_min)+(o2003912_0_3_rgba.rgb-vec3(p_o2016703_in_min))*vec3((p_o2016703_out_max-p_o2016703_out_min)/(p_o2016703_in_max-p_o2016703_in_min)), o2003912_0_3_rgba.a);
float o1053514_2_clamp_false = abs((dot((o2016703_0_3_rgba).rgb, vec3(1.0))/3.0));
float o1053514_2_clamp_true = clamp(o1053514_2_clamp_false, 0.0, 1.0);
float o1053514_0_3_f = o1053514_2_clamp_true;
vec4 o1098035_0_xyzw = voronoi((fract(transform2(((rotate((vec2(fract(p_o1170149_repeat*atan((scale((UV), vec2(0.5+p_o3442925_cx, 0.5+p_o3442925_cy), vec2(p_o3442925_scale_x, p_o3442925_scale_y))).y-0.5, (scale((UV), vec2(0.5+p_o3442925_cx, 0.5+p_o3442925_cy), vec2(p_o3442925_scale_x, p_o3442925_scale_y))).x-0.5)*0.15915494309), min(0.99999, 2.0/p_o1170149_radius*length((scale((UV), vec2(0.5+p_o3442925_cx, 0.5+p_o3442925_cy), vec2(p_o3442925_scale_x, p_o3442925_scale_y)))-vec2(0.5))))), vec2(0.5+p_o1175160_cx, 0.5+p_o1175160_cy), p_o1175160_rotate*0.01745329251))-vec2((o3007790_OFFSET * 1.32), p_o3180989_translate_y)), vec2(p_o1115718_translate_x*(2.0*1.0-1.0), p_o1115718_translate_y*(2.0*o1053514_0_3_f-1.0)), p_o1115718_rotate*0.01745329251*(2.0*1.0-1.0), vec2(p_o1115718_scale_x*(2.0*1.0-1.0), p_o1115718_scale_y*(2.0*1.0-1.0))))), vec2(p_o1098035_scale_x, p_o1098035_scale_y), vec2(p_o1098035_stretch_y, p_o1098035_stretch_x), p_o1098035_intensity, p_o1098035_randomness, seed_o1098035);float o1098035_0_1_f = o1098035_0_xyzw.z;
vec4 o1099342_0_1_rgba = vec4(vec3(1.0)-vec4(vec3(o1098035_0_1_f), 1.0).rgb, vec4(vec3(o1098035_0_1_f), 1.0).a);
vec4 o1115718_0_1_rgba = o1099342_0_1_rgba;
float o1541301_0_1_f = perlin((((rotate((vec2(fract(p_o1170149_repeat*atan((scale((UV), vec2(0.5+p_o3442925_cx, 0.5+p_o3442925_cy), vec2(p_o3442925_scale_x, p_o3442925_scale_y))).y-0.5, (scale((UV), vec2(0.5+p_o3442925_cx, 0.5+p_o3442925_cy), vec2(p_o3442925_scale_x, p_o3442925_scale_y))).x-0.5)*0.15915494309), min(0.99999, 2.0/p_o1170149_radius*length((scale((UV), vec2(0.5+p_o3442925_cx, 0.5+p_o3442925_cy), vec2(p_o3442925_scale_x, p_o3442925_scale_y)))-vec2(0.5))))), vec2(0.5+p_o1175160_cx, 0.5+p_o1175160_cy), p_o1175160_rotate*0.01745329251))-vec2((o3007790_OFFSET * 1.32), p_o3180989_translate_y))-vec2((o3007790_OFFSET * 3.5), p_o3153493_translate_y)), vec2(p_o1541301_scale_x, p_o1541301_scale_y), int(p_o1541301_iterations), p_o1541301_persistence, seed_o1541301);
vec4 o3153493_0_1_rgba = vec4(vec3(o1541301_0_1_f), 1.0);
float o1047621_0_r = 0.5+(cos(p_o1047621_rotate*0.01745329251)*(((rotate((vec2(fract(p_o1170149_repeat*atan((scale((UV), vec2(0.5+p_o3442925_cx, 0.5+p_o3442925_cy), vec2(p_o3442925_scale_x, p_o3442925_scale_y))).y-0.5, (scale((UV), vec2(0.5+p_o3442925_cx, 0.5+p_o3442925_cy), vec2(p_o3442925_scale_x, p_o3442925_scale_y))).x-0.5)*0.15915494309), min(0.99999, 2.0/p_o1170149_radius*length((scale((UV), vec2(0.5+p_o3442925_cx, 0.5+p_o3442925_cy), vec2(p_o3442925_scale_x, p_o3442925_scale_y)))-vec2(0.5))))), vec2(0.5+p_o1175160_cx, 0.5+p_o1175160_cy), p_o1175160_rotate*0.01745329251))-vec2((o3007790_OFFSET * 1.32), p_o3180989_translate_y)).x-0.5)+sin(p_o1047621_rotate*0.01745329251)*(((rotate((vec2(fract(p_o1170149_repeat*atan((scale((UV), vec2(0.5+p_o3442925_cx, 0.5+p_o3442925_cy), vec2(p_o3442925_scale_x, p_o3442925_scale_y))).y-0.5, (scale((UV), vec2(0.5+p_o3442925_cx, 0.5+p_o3442925_cy), vec2(p_o3442925_scale_x, p_o3442925_scale_y))).x-0.5)*0.15915494309), min(0.99999, 2.0/p_o1170149_radius*length((scale((UV), vec2(0.5+p_o3442925_cx, 0.5+p_o3442925_cy), vec2(p_o3442925_scale_x, p_o3442925_scale_y)))-vec2(0.5))))), vec2(0.5+p_o1175160_cx, 0.5+p_o1175160_cy), p_o1175160_rotate*0.01745329251))-vec2((o3007790_OFFSET * 1.32), p_o3180989_translate_y)).y-0.5))/(cos(abs(mod(p_o1047621_rotate, 90.0)-45.0)*0.01745329251)*1.41421356237);vec4 o1047621_0_1_rgba = o1047621_gradient_gradient_fct(fract(o1047621_0_r*p_o1047621_repeat));
vec4 o1544215_0_s1 = o3153493_0_1_rgba;
vec4 o1544215_0_s2 = o1047621_0_1_rgba;
float o1544215_0_a = p_o1544215_amount*1.0;
vec4 o1544215_0_2_rgba = vec4(blend_normal(((rotate((vec2(fract(p_o1170149_repeat*atan((scale((UV), vec2(0.5+p_o3442925_cx, 0.5+p_o3442925_cy), vec2(p_o3442925_scale_x, p_o3442925_scale_y))).y-0.5, (scale((UV), vec2(0.5+p_o3442925_cx, 0.5+p_o3442925_cy), vec2(p_o3442925_scale_x, p_o3442925_scale_y))).x-0.5)*0.15915494309), min(0.99999, 2.0/p_o1170149_radius*length((scale((UV), vec2(0.5+p_o3442925_cx, 0.5+p_o3442925_cy), vec2(p_o3442925_scale_x, p_o3442925_scale_y)))-vec2(0.5))))), vec2(0.5+p_o1175160_cx, 0.5+p_o1175160_cy), p_o1175160_rotate*0.01745329251))-vec2((o3007790_OFFSET * 1.32), p_o3180989_translate_y)), o1544215_0_s1.rgb, o1544215_0_s2.rgb, o1544215_0_a*o1544215_0_s1.a), min(1.0, o1544215_0_s2.a+o1544215_0_a*o1544215_0_s1.a));
float o1079786_0_clamp_false = (dot((o1544215_0_2_rgba).rgb, vec3(1.0))/3.0)-o1053514_0_3_f;
float o1079786_0_clamp_true = clamp(o1079786_0_clamp_false, 0.0, 1.0);
float o1079786_0_1_f = o1079786_0_clamp_false;
vec4 o1147502_0_1_rgba = vec4(vec3(p_o1147502_out_min)+(vec4(vec3(o1079786_0_1_f), 1.0).rgb-vec3(p_o1147502_in_min))*vec3((p_o1147502_out_max-p_o1147502_out_min)/(p_o1147502_in_max-p_o1147502_in_min)), vec4(vec3(o1079786_0_1_f), 1.0).a);
vec4 o1135497_0_1_rgba = o1135497_gradient_gradient_fct((dot((o1147502_0_1_rgba).rgb, vec3(1.0))/3.0));
vec4 o1107567_0_s1 = o1115718_0_1_rgba;
vec4 o1107567_0_s2 = o1135497_0_1_rgba;
float o1107567_0_a = p_o1107567_amount*1.0;
vec4 o1107567_0_2_rgba = vec4(blend_multiply(((rotate((vec2(fract(p_o1170149_repeat*atan((scale((UV), vec2(0.5+p_o3442925_cx, 0.5+p_o3442925_cy), vec2(p_o3442925_scale_x, p_o3442925_scale_y))).y-0.5, (scale((UV), vec2(0.5+p_o3442925_cx, 0.5+p_o3442925_cy), vec2(p_o3442925_scale_x, p_o3442925_scale_y))).x-0.5)*0.15915494309), min(0.99999, 2.0/p_o1170149_radius*length((scale((UV), vec2(0.5+p_o3442925_cx, 0.5+p_o3442925_cy), vec2(p_o3442925_scale_x, p_o3442925_scale_y)))-vec2(0.5))))), vec2(0.5+p_o1175160_cx, 0.5+p_o1175160_cy), p_o1175160_rotate*0.01745329251))-vec2((o3007790_OFFSET * 1.32), p_o3180989_translate_y)), o1107567_0_s1.rgb, o1107567_0_s2.rgb, o1107567_0_a*o1107567_0_s1.a), min(1.0, o1107567_0_s2.a+o1107567_0_a*o1107567_0_s1.a));
vec4 o3180989_0_1_rgba = o1107567_0_2_rgba;
vec4 o1175160_0_1_rgba = o3180989_0_1_rgba;
vec4 o1170149_0_1_rgba = o1175160_0_1_rgba;
vec4 o1227913_0_s1 = vec4(vec3(o1227347_0_1_f), 1.0);
vec4 o1227913_0_s2 = o1170149_0_1_rgba;
float o1227913_0_a = p_o1227913_amount*1.0;
vec4 o1227913_0_2_rgba = vec4(blend_multiply((scale((UV), vec2(0.5+p_o3442925_cx, 0.5+p_o3442925_cy), vec2(p_o3442925_scale_x, p_o3442925_scale_y))), o1227913_0_s1.rgb, o1227913_0_s2.rgb, o1227913_0_a*o1227913_0_s1.a), min(1.0, o1227913_0_s2.a+o1227913_0_a*o1227913_0_s1.a));
float o1874989_6_clamp_false = (o3007790_ANIM)*p_o1874989_default_in2;
float o1874989_6_clamp_true = clamp(o1874989_6_clamp_false, 0.0, 1.0);
float o1874989_0_8_f = o1874989_6_clamp_false;
vec4 o2003912_0_5_rgba = o2003912_gradient_gradient_fct(o1874989_0_8_f);
vec4 o2016703_0_5_rgba = vec4(vec3(p_o2016703_out_min)+(o2003912_0_5_rgba.rgb-vec3(p_o2016703_in_min))*vec3((p_o2016703_out_max-p_o2016703_out_min)/(p_o2016703_in_max-p_o2016703_in_min)), o2003912_0_5_rgba.a);
float o1053514_4_clamp_false = abs((dot((o2016703_0_5_rgba).rgb, vec3(1.0))/3.0));
float o1053514_4_clamp_true = clamp(o1053514_4_clamp_false, 0.0, 1.0);
float o1053514_0_5_f = o1053514_4_clamp_true;
float o2313099_0_1_f = o2313099_curve_curve_fct(o1053514_0_5_f);
vec4 o1666169_0_s1 = o3278853_0_1_rgba;
vec4 o1666169_0_s2 = o1227913_0_2_rgba;
float o1666169_0_a = p_o1666169_amount*o2313099_0_1_f;
vec4 o1666169_0_1_rgba = vec4(blend_normal((scale((UV), vec2(0.5+p_o3442925_cx, 0.5+p_o3442925_cy), vec2(p_o3442925_scale_x, p_o3442925_scale_y))), o1666169_0_s1.rgb, o1666169_0_s2.rgb, o1666169_0_a*o1666169_0_s1.a), min(1.0, o1666169_0_s2.a+o1666169_0_a*o1666169_0_s1.a));
float o1839956_0_clamp_false = (dot((o1666169_0_1_rgba).rgb, vec3(1.0))/3.0)*p_o1839956_default_in2;
float o1839956_0_clamp_true = clamp(o1839956_0_clamp_false, 0.0, 1.0);
float o1839956_0_2_f = o1839956_0_clamp_true;
float o2047992_0_1_f = o2047992_curve_curve_fct(o1053514_0_5_f);
float o2609904_0_clamp_false = o1839956_0_2_f-o2047992_0_1_f;
float o2609904_0_clamp_true = clamp(o2609904_0_clamp_false, 0.0, 1.0);
float o2609904_0_1_f = o2609904_0_clamp_false;
vec4 o3442925_0_1_rgba = vec4(vec3(o2609904_0_1_f), 1.0);
float o2619577_0_clamp_false = step(p_o2619577_default_in1,(dot((o3442925_0_1_rgba).rgb, vec3(1.0))/3.0));
float o2619577_0_clamp_true = clamp(o2619577_0_clamp_false, 0.0, 1.0);
float o2619577_0_2_f = o2619577_0_clamp_true;
ALBEDO = vec3(0.7, 0, 0);
ROUGHNESS = 0.0;
ALPHA = o2619577_0_2_f;
}

View File

@ -1,9 +1,40 @@
[gd_scene load_steps=10 format=3 uid="uid://egphnvwk6cg"]
[gd_scene load_steps=13 format=3 uid="uid://egphnvwk6cg"]
[ext_resource type="Script" path="res://Assets/Effects/Impact.gd" id="1"]
[ext_resource type="Texture2D" uid="uid://cguy76rs8e220" path="res://Assets/Effects/Flame.png" id="2"]
[ext_resource type="Shader" path="res://Assets/Effects/ImpactBlood.gdshader" id="3_4p01j"]
[ext_resource type="PackedScene" uid="uid://c5cwnfuw4go1b" path="res://Assets/Audio/SoundPlayer.tscn" id="3_ftpj2"]
[sub_resource type="Animation" id="Animation_es1gj"]
length = 0.001
tracks/0/type = "value"
tracks/0/path = NodePath("MeshInstance3D:shader_params/o3007790_ANIM")
tracks/0/interp = 1
tracks/0/loop_wrap = true
tracks/0/imported = false
tracks/0/enabled = true
tracks/0/keys = {
"times": PackedFloat32Array(0, 0.5),
"transitions": PackedFloat32Array(1, 1),
"update": 0,
"values": [0.0, 1.0]
}
[sub_resource type="Animation" id="Animation_fex44"]
resource_name = "Splat"
tracks/0/type = "value"
tracks/0/path = NodePath("MeshInstance3D:shader_params/o3007790_ANIM")
tracks/0/interp = 1
tracks/0/loop_wrap = true
tracks/0/imported = false
tracks/0/enabled = true
tracks/0/keys = {
"times": PackedFloat32Array(0, 0.3),
"transitions": PackedFloat32Array(1, 1),
"update": 0,
"values": [0.0, 1.0]
}
[sub_resource type="StandardMaterial3D" id="7"]
blend_mode = 3
shading_mode = 0
@ -24,21 +55,25 @@ _data = [Vector2(0, 0.981818), 0.0, -1.7826, 0, 0, Vector2(1, 0), 0.0, 0.0, 0, 0
[sub_resource type="Gradient" id="8"]
colors = PackedColorArray(1, 0, 0, 1, 1, 1, 1, 1)
[sub_resource type="StandardMaterial3D" id="5"]
blend_mode = 1
shading_mode = 0
albedo_color = Color(1, 0, 0.00784314, 1)
albedo_texture = ExtResource( "2" )
uv1_scale = Vector3(0.5, 0.5, 1)
[sub_resource type="ShaderMaterial" id="ShaderMaterial_d8ai5"]
shader = ExtResource( "3_4p01j" )
[sub_resource type="QuadMesh" id="6"]
material = SubResource( "5" )
size = Vector2(0.25, 0.25)
[sub_resource type="QuadMesh" id="QuadMesh_xdhl5"]
material = SubResource( "ShaderMaterial_d8ai5" )
size = Vector2(2, 2)
[node name="Impact" type="Node3D"]
script = ExtResource( "1" )
[node name="AnimationPlayer" type="AnimationPlayer" parent="."]
autoplay = "Splat"
anims/RESET = SubResource( "Animation_es1gj" )
anims/Splat = SubResource( "Animation_fex44" )
blend_times = []
script = null
[node name="CPUParticles3D" type="CPUParticles3D" parent="."]
visible = false
emitting = false
amount = 32
lifetime = 3.0
@ -56,15 +91,16 @@ color_ramp = SubResource( "8" )
script = null
[node name="Timer" type="Timer" parent="."]
wait_time = 15.0
wait_time = 2.0
one_shot = true
autostart = true
script = null
[node name="MeshInstance3D" type="MeshInstance3D" parent="."]
transform = Transform3D(1, 0, 0, 0, -4.37114e-08, 1, 0, -1, -4.37114e-08, 0, 0.00379224, 0)
visible = false
mesh = SubResource( "6" )
transform = Transform3D(1, 0, 0, 0, -1, 8.74228e-08, 0, -8.74228e-08, -1, 0, 0.00379224, 0)
shader_params/o3007790_ANIM = 0.0
shader_params/o3007790_OFFSET = 0.0
mesh = SubResource( "QuadMesh_xdhl5" )
surface_material_override/0 = null
script = null