{ "connections": [ { "from": "graph_2", "from_port": 0, "to": "blend_2", "to_port": 0 }, { "from": "blend", "from_port": 0, "to": "blend_2", "to_port": 1 }, { "from": "graph_3", "from_port": 0, "to": "blend", "to_port": 2 }, { "from": "shape", "from_port": 0, "to": "quantize", "to_port": 0 }, { "from": "quantize", "from_port": 0, "to": "edge_detect_1", "to_port": 0 }, { "from": "quantize", "from_port": 0, "to": "edge_detect_2", "to_port": 0 }, { "from": "quantize", "from_port": 0, "to": "edge_detect_3", "to_port": 0 }, { "from": "quantize", "from_port": 0, "to": "sharpen", "to_port": 0 }, { "from": "quantize", "from_port": 0, "to": "blend", "to_port": 0 }, { "from": "edge_detect_1", "from_port": 0, "to": "blend", "to_port": 1 }, { "from": "tex3d_fbm_4", "from_port": 0, "to": "tex3d_distort_2", "to_port": 1 }, { "from": "tex3d_pattern_2", "from_port": 0, "to": "tex3d_distort_2", "to_port": 0 }, { "from": "tex3d_distort_2", "from_port": 0, "to": "4330", "to_port": 0 }, { "from": "sdf3d_elongation", "from_port": 0, "to": "raymarching", "to_port": 0 }, { "from": "sdf3d_torus", "from_port": 0, "to": "sdf3d_elongation", "to_port": 0 }, { "from": "shape_2", "from_port": 0, "to": "colorize", "to_port": 0 }, { "from": "shape_2_3", "from_port": 0, "to": "colorize_2", "to_port": 0 }, { "from": "shape_2_2", "from_port": 0, "to": "colorize_2_2", "to_port": 0 }, { "from": "shape_2_2_2", "from_port": 0, "to": "colorize_2_2_2", "to_port": 0 }, { "from": "colorize", "from_port": 0, "to": "tile2x2", "to_port": 0 }, { "from": "colorize_2", "from_port": 0, "to": "tile2x2", "to_port": 1 }, { "from": "colorize_2_2", "from_port": 0, "to": "tile2x2", "to_port": 2 }, { "from": "colorize_2_2_2", "from_port": 0, "to": "tile2x2", "to_port": 3 }, { "from": "tile2x2", "from_port": 0, "to": "splatter", "to_port": 0 }, { "from": "tile2x2", "from_port": 0, "to": "splatter_color", "to_port": 0 }, { "from": "tile2x2", "from_port": 0, "to": "tiler_color", "to_port": 0 }, { "from": "tiler_color", "from_port": 0, "to": "Material", "to_port": 0 } ], "label": "Graph", "name": "49", "node_position": { "x": 0, "y": 0 }, "nodes": [ { "name": "Material", "node_position": { "x": 23.544006, "y": 381.080017 }, "parameters": { "albedo_color": { "a": 1, "b": 1, "g": 1, "r": 1, "type": "Color" }, "ao_light_affect": 1, "depth_scale": 1, "emission_energy": 1, "metallic": 1, "normal_scale": 1, "roughness": 1, "size": 8, "subsurf_scatter_strength": 0 }, "type": "material" }, { "connections": [ { "from": "transform", "from_port": 0, "to": "blend_3", "to_port": 0 }, { "from": "transform_2", "from_port": 0, "to": "blend_3", "to_port": 1 }, { "from": "blend_3", "from_port": 0, "to": "blend", "to_port": 0 }, { "from": "transform_3", "from_port": 0, "to": "blend_2", "to_port": 0 }, { "from": "transform_4", "from_port": 0, "to": "blend_2", "to_port": 1 }, { "from": "blend_2", "from_port": 0, "to": "blend", "to_port": 1 }, { "from": "shape_5", "from_port": 0, "to": "blend_4", "to_port": 1 }, { "from": "gen_inputs", "from_port": 3, "to": "blend_4", "to_port": 0 }, { "from": "blend_4", "from_port": 0, "to": "transform_4", "to_port": 0 }, { "from": "shape_5", "from_port": 0, "to": "blend_4_2", "to_port": 1 }, { "from": "gen_inputs", "from_port": 2, "to": "blend_4_2", "to_port": 0 }, { "from": "shape_5", "from_port": 0, "to": "blend_4_3", "to_port": 1 }, { "from": "gen_inputs", "from_port": 1, "to": "blend_4_3", "to_port": 0 }, { "from": "gen_inputs", "from_port": 0, "to": "blend_4_4", "to_port": 0 }, { "from": "shape_5", "from_port": 0, "to": "blend_4_4", "to_port": 1 }, { "from": "blend_4_4", "from_port": 0, "to": "transform", "to_port": 0 }, { "from": "blend_4_3", "from_port": 0, "to": "transform_2", "to_port": 0 }, { "from": "blend_4_2", "from_port": 0, "to": "transform_3", "to_port": 0 }, { "from": "blend", "from_port": 0, "to": "gen_outputs", "to_port": 0 } ], "label": "Tile Inputs", "name": "graph", "node_position": { "x": 608.541992, "y": 541.266541 }, "nodes": [ { "name": "transform_4", "node_position": { "x": -144.5, "y": 193 }, "parameters": { "repeat": false, "rotate": 0, "scale_x": 0.5, "scale_y": 0.5, "translate_x": 0.25, "translate_y": 0.25 }, "type": "transform" }, { "name": "transform_3", "node_position": { "x": -141.5, "y": -2 }, "parameters": { "repeat": false, "rotate": 0, "scale_x": 0.5, "scale_y": 0.5, "translate_x": -0.25, "translate_y": 0.25 }, "type": "transform" }, { "name": "transform", "node_position": { "x": -136.5, "y": -418 }, "parameters": { "repeat": false, "rotate": 0, "scale_x": 0.5, "scale_y": 0.5, "translate_x": -0.25, "translate_y": -0.25 }, "type": "transform" }, { "name": "transform_2", "node_position": { "x": -135.5, "y": -224 }, "parameters": { "repeat": false, "rotate": 0, "scale_x": 0.5, "scale_y": 0.5, "translate_x": 0.25, "translate_y": -0.25 }, "type": "transform" }, { "name": "blend_2", "node_position": { "x": 113.5, "y": -10 }, "parameters": { "amount": 1, "blend_type": 9 }, "type": "blend" }, { "name": "blend_3", "node_position": { "x": 114.5, "y": -95 }, "parameters": { "amount": 1, "blend_type": 9 }, "type": "blend" }, { "name": "shape_5", "node_position": { "x": -392.29126, "y": 349 }, "parameters": { "edge": 0, "radius": 0.99, "shape": 1, "sides": 4 }, "type": "shape" }, { "name": "blend_4", "node_position": { "x": -405.29126, "y": 184.25 }, "parameters": { "amount": 1, "blend_type": 10 }, "type": "blend" }, { "name": "blend_4_2", "node_position": { "x": -404.79126, "y": 12.25 }, "parameters": { "amount": 1, "blend_type": 10 }, "type": "blend" }, { "name": "blend_4_3", "node_position": { "x": -399.79126, "y": -141.75 }, "parameters": { "amount": 1, "blend_type": 10 }, "type": "blend" }, { "name": "blend_4_4", "node_position": { "x": -393.79126, "y": -293 }, "parameters": { "amount": 1, "blend_type": 10 }, "type": "blend" }, { "name": "blend", "node_position": { "x": 358.220001, "y": -53.728001 }, "parameters": { "amount": 1, "blend_type": 9 }, "type": "blend" }, { "name": "gen_inputs", "node_position": { "x": -705.29126, "y": -41.581501 }, "parameters": { }, "ports": [ { "name": "port3", "type": "rgba" }, { "name": "port2", "type": "rgba" }, { "name": "port1", "type": "rgba" }, { "name": "port0", "type": "rgba" } ], "type": "ios" }, { "name": "gen_outputs", "node_position": { "x": 658.219971, "y": -41.581501 }, "parameters": { }, "ports": [ { "name": "port0", "type": "rgba" } ], "type": "ios" }, { "name": "gen_parameters", "node_position": { "x": -363.978027, "y": -718 }, "parameters": { }, "type": "remote", "widgets": [ ] } ], "parameters": { }, "type": "graph" }, { "connections": [ { "from": "sdbox_3", "from_port": 0, "to": "sdboolean_3", "to_port": 1 }, { "from": "sdboolean_3_2", "from_port": 0, "to": "sdboolean_3", "to_port": 0 }, { "from": "sdrhombus_2", "from_port": 0, "to": "sdboolean_3_2", "to_port": 1 }, { "from": "sdbox_3_2", "from_port": 0, "to": "sdboolean_3_2", "to_port": 0 }, { "from": "colorize", "from_port": 0, "to": "gen_outputs", "to_port": 0 }, { "from": "sdboolean_3", "from_port": 0, "to": "sdshow", "to_port": 0 }, { "from": "sdshow", "from_port": 0, "to": "colorize", "to_port": 0 } ], "label": "Arrow", "name": "graph_2", "node_position": { "x": 607.827515, "y": 652.753479 }, "nodes": [ { "name": "sdbox_3", "node_position": { "x": 368.648682, "y": 387.121552 }, "parameters": { "cx": -0.07, "cy": 0, "h": 0.04, "w": 0.08 }, "type": "sdbox" }, { "name": "sdrhombus_2", "node_position": { "x": 235.398682, "y": 252.121552 }, "parameters": { "cx": -0.02, "cy": 0, "h": 0.12, "w": 0.15 }, "type": "sdrhombus" }, { "name": "sdbox_3_2", "node_position": { "x": 220.086548, "y": 108.972382 }, "parameters": { "cx": -0.23, "cy": 0, "h": 0.35, "w": 0.21 }, "type": "sdbox" }, { "name": "sdboolean_3_2", "node_position": { "x": 454.586548, "y": 205.972443 }, "parameters": { "op": 1 }, "type": "sdboolean" }, { "name": "sdboolean_3", "node_position": { "x": 614.648682, "y": 282.510315 }, "parameters": { "op": 0 }, "type": "sdboolean" }, { "name": "colorize", "node_position": { "x": 858.58667, "y": 374.972534 }, "parameters": { "gradient": { "interpolation": 1, "points": [ { "a": 0, "b": 0, "g": 0, "pos": 0, "r": 1 }, { "a": 1, "b": 0, "g": 0, "pos": 1, "r": 1 } ], "type": "Gradient" } }, "type": "colorize" }, { "name": "gen_inputs", "node_position": { "x": -64.601318, "y": 285.753479 }, "parameters": { }, "ports": [ ], "type": "ios" }, { "name": "gen_outputs", "node_position": { "x": 1158.58667, "y": 285.753479 }, "parameters": { }, "ports": [ { "name": "port0", "type": "rgba" } ], "type": "ios" }, { "name": "gen_parameters", "node_position": { "x": 281.827484, "y": -178.027618 }, "parameters": { }, "type": "remote", "widgets": [ ] }, { "name": "sdshow", "node_position": { "x": 631.060425, "y": 365.52536 }, "parameters": { "bevel": 0.01 }, "type": "sdshow" } ], "parameters": { }, "type": "graph" }, { "connections": [ { "from": "pattern", "from_port": 0, "to": "transform", "to_port": 0 }, { "from": "transform", "from_port": 0, "to": "colorize", "to_port": 0 }, { "from": "colorize", "from_port": 0, "to": "gen_outputs", "to_port": 0 } ], "label": "Gradient", "name": "graph_3", "node_position": { "x": -298.787903, "y": 716.143799 }, "nodes": [ { "name": "pattern", "node_position": { "x": -389.625, "y": -359.458374 }, "parameters": { "mix": 0, "x_scale": 1, "x_wave": 3, "y_scale": 1, "y_wave": 4 }, "type": "pattern" }, { "name": "transform", "node_position": { "x": -371.125, "y": -262.458374 }, "parameters": { "repeat": false, "rotate": 180, "scale_x": 1, "scale_y": 1, "translate_x": 0, "translate_y": 0 }, "type": "transform" }, { "name": "colorize", "node_position": { "x": -352.125, "y": -69.458374 }, "parameters": { "gradient": { "interpolation": 0, "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": "gen_parameters", "node_position": { "x": -406.125, "y": -498.858337 }, "parameters": { "param0": 1, "param1": 180, "param2": { "interpolation": 0, "points": [ { "a": 1, "b": 0, "g": 0, "pos": 0, "r": 0 }, { "a": 1, "b": 1, "g": 1, "pos": 1, "r": 1 } ], "type": "Gradient" } }, "type": "remote", "widgets": [ { "label": "Repeat", "linked_widgets": [ { "node": "pattern", "widget": "x_scale" } ], "name": "param0", "type": "linked_control" }, { "label": "Rotate", "linked_widgets": [ { "node": "transform", "widget": "rotate" } ], "name": "param1", "type": "linked_control" }, { "label": "Gradient", "linked_widgets": [ { "node": "colorize", "widget": "gradient" } ], "name": "param2", "type": "linked_control" } ] }, { "name": "gen_inputs", "node_position": { "x": -706.125, "y": -297.55835 }, "parameters": { }, "ports": [ ], "type": "ios" }, { "name": "gen_outputs", "node_position": { "x": -52.125, "y": -297.55835 }, "parameters": { }, "ports": [ { "name": "port0", "type": "rgba" } ], "type": "ios" } ], "parameters": { "param0": 1, "param1": 180, "param2": { "interpolation": 0, "points": [ { "a": 1, "b": 0, "g": 0, "pos": 0, "r": 0 }, { "a": 1, "b": 1, "g": 1, "pos": 1, "r": 1 } ], "type": "Gradient" } }, "type": "graph" }, { "name": "blend", "node_position": { "x": 549.235168, "y": 819.099731 }, "parameters": { "amount": 1, "blend_type": 0 }, "type": "blend" }, { "name": "blend_2", "node_position": { "x": 553.235168, "y": 730.099731 }, "parameters": { "amount": 1, "blend_type": 0 }, "type": "blend" }, { "name": "raymarching", "node_position": { "x": -249.531464, "y": 322.145508 }, "parameters": { }, "shader_model": { "code": "", "global": "", "inputs": [ { "default": "0.0", "function": true, "label": "", "name": "sdf", "type": "sdf3d" } ], "instance": "float calcdist_$name(vec3 p) {\n return min($sdf(p), p.z);\n}\n\nfloat raymarch_$name(vec3 ro, vec3 rd) {\n\tfloat d=0.0;\n\tfor (int i = 0; i < 50; i++) {\n\t\tvec3 p = ro + rd*d;\n\t\tfloat dstep = calcdist_$name(p);\n\t\td += dstep;\n\t\tif (dstep < 0.0001) break;\n\t}\n\treturn d;\n}\n\nvec3 normal_$name(vec3 p) {\n\tfloat d = calcdist_$name(p);\n\tfloat e = .0001;\n\tvec3 n = d - vec3(calcdist_$name(p-vec3(e, 0.0, 0.0)), calcdist_$name(p-vec3(0.0, e, 0.0)), calcdist_$name(p-vec3(0.0, 0.0, e)));\n\treturn normalize(n);\n}\n\nvec3 render_$name(vec2 uv) {\n\tvec3 p = vec3(uv, 2.0-raymarch_$name(vec3(uv, 2.0), vec3(0.0, 0.0, -1.0)));\n\tvec3 n = normal_$name(p);\n\tvec3 l = vec3(5.0, 5.0, 10.0);\n\tvec3 ld = normalize(l-p);\n\tfloat o = step(p.z, 0.001);\n\tfloat shadow = 1.0-0.75*step(raymarch_$name(l, -ld), length(l-p)-0.01);\n\tfloat light = 0.3+0.7*dot(n, ld)*shadow;\n\treturn vec3(0.8+0.2*o, 0.8+0.2*o, 1.0)*light;\n}\n", "name": "Render3d", "outputs": [ { "rgb": "render_$name($uv-vec2(0.5))", "type": "rgb" } ], "parameters": [ ] }, "type": "shader" }, { "connections": [ { "from": "sdf3d_sphere_2", "from_port": 0, "to": "sdf3d_translate_4", "to_port": 0 }, { "from": "sdf3d_translate_4_2", "from_port": 0, "to": "sdf3d_smoothboolean_3", "to_port": 1 }, { "from": "sdf3d_smoothboolean_3", "from_port": 0, "to": "sdf3d_smoothboolean_3_2", "to_port": 1 }, { "from": "sdf3d_translate_4_2_2", "from_port": 0, "to": "sdf3d_smoothboolean_3_2", "to_port": 0 }, { "from": "sdf3d_sphere_2_2", "from_port": 0, "to": "sdf3d_translate_4_3", "to_port": 0 }, { "from": "sdf3d_translate_4_3", "from_port": 0, "to": "sdf3d_smoothboolean_3_2_2", "to_port": 0 }, { "from": "sdf3d_smoothboolean_3_2", "from_port": 0, "to": "sdf3d_smoothboolean_3_2_2", "to_port": 1 }, { "from": "sdf3d_sphere_2_2_2", "from_port": 0, "to": "sdf3d_translate_4_3_2", "to_port": 0 }, { "from": "sdf3d_smoothboolean_3_2_2", "from_port": 0, "to": "sdf3d_smoothboolean_3_2_3", "to_port": 1 }, { "from": "sdf3d_translate_4_3_2", "from_port": 0, "to": "sdf3d_smoothboolean_3_2_3", "to_port": 0 }, { "from": "sdf3d_smoothboolean_3_2_3", "from_port": 0, "to": "sdf3d_smoothboolean_3_2_3_2", "to_port": 1 }, { "from": "sdf3d_box_2", "from_port": 0, "to": "sdf3d_rotate_2", "to_port": 0 }, { "from": "sdf3d_rotate_2", "from_port": 0, "to": "sdf3d_translate_4_3_2_2", "to_port": 0 }, { "from": "sdf3d_translate_4_3_2_2", "from_port": 0, "to": "sdf3d_smoothboolean_3_2_3_2", "to_port": 0 }, { "from": "sdf3d_translate_4_3_2_2_2", "from_port": 0, "to": "sdf3d_repeat", "to_port": 0 }, { "from": "sdf3d_rotate_2_2_2", "from_port": 0, "to": "sdf3d_translate_4_3_2_2_2_2", "to_port": 0 }, { "from": "sdf3d_cylinder", "from_port": 0, "to": "sdf3d_translate_4_2", "to_port": 0 }, { "from": "sdf3d_smoothboolean_3_3", "from_port": 0, "to": "sdf3d_smoothboolean_3", "to_port": 0 }, { "from": "sdf3d_sphere_2", "from_port": 0, "to": "sdf3d_smoothboolean_3_3", "to_port": 1 }, { "from": "sdf3d_translate_4", "from_port": 0, "to": "sdf3d_smoothboolean_3_3", "to_port": 0 }, { "from": "sdf3d_box_2_2", "from_port": 0, "to": "sdf3d_rotate_2_2", "to_port": 0 }, { "from": "sdf3d_box_2_2", "from_port": 0, "to": "sdf3d_translate_4_3_2_2_2", "to_port": 0 }, { "from": "sdf3d_smoothboolean_3_2_3_2", "from_port": 0, "to": "sdf3d_smoothboolean_3_2_3_2_2", "to_port": 0 }, { "from": "sdf3d_smoothboolean_3_2_3_2_2", "from_port": 0, "to": "sdf3d_translate_4_3_3", "to_port": 0 }, { "from": "sdf3d_sphere_2_3", "from_port": 0, "to": "sdf3d_translate_4_3_2_2_2_3", "to_port": 0 }, { "from": "sdf3d_translate_4_3_2_2_2_3", "from_port": 0, "to": "sdf3d_boolean", "to_port": 0 }, { "from": "sdf3d_boolean", "from_port": 0, "to": "sdf3d_rotate_2_2_2", "to_port": 0 }, { "from": "sdf3d_translate_4_3_2_2_2_2", "from_port": 0, "to": "sdroundedshape", "to_port": 0 }, { "from": "sdroundedshape", "from_port": 0, "to": "sdf3d_smoothboolean_3_2_3_2_2", "to_port": 1 }, { "from": "sdf3d_repeat", "from_port": 0, "to": "sdf3d_rotate_2_2_3", "to_port": 0 }, { "from": "sdf3d_rotate_2_2_3", "from_port": 0, "to": "sdf3d_boolean", "to_port": 1 }, { "from": "sdf3d_translate_4_3_3", "from_port": 0, "to": "gen_outputs", "to_port": 0 }, { "from": "sdf3d_scale_2", "from_port": 0, "to": "sdf3d_translate_4_2_2", "to_port": 0 }, { "from": "sdf3d_translate_4_2", "from_port": 0, "to": "sdf3d_scale_2", "to_port": 0 } ], "label": "Skull", "name": "graph_3_2", "node_position": { "x": -184.234314, "y": 34.957581 }, "nodes": [ { "name": "sdf3d_smoothboolean_3", "node_position": { "x": -841.989258, "y": 938.422729 }, "parameters": { "k": 0.04, "op": 0 }, "type": "sdf3d_smoothboolean" }, { "name": "sdf3d_translate_4", "node_position": { "x": -1309.989258, "y": 736.422729 }, "parameters": { "x": 0.52, "y": -0.22, "z": 0 }, "type": "sdf3d_translate" }, { "name": "sdf3d_smoothboolean_3_2", "node_position": { "x": -629.489258, "y": 873.422729 }, "parameters": { "k": 0.17, "op": 1 }, "type": "sdf3d_smoothboolean" }, { "name": "sdf3d_sphere_2_2", "node_position": { "x": -830.318359, "y": 1023.672852 }, "parameters": { "r": 0.07 }, "type": "sdf3d_sphere" }, { "name": "sdf3d_translate_4_3", "node_position": { "x": -834.318359, "y": 1078.672852 }, "parameters": { "x": 0.13, "y": -0.04, "z": 0.18 }, "type": "sdf3d_translate" }, { "name": "sdf3d_sphere_2_2_2", "node_position": { "x": -831.318359, "y": 1179.672852 }, "parameters": { "r": 0.08 }, "type": "sdf3d_sphere" }, { "name": "sdf3d_sphere_2", "node_position": { "x": -1297.989258, "y": 844.922729 }, "parameters": { "r": 0.28 }, "type": "sdf3d_sphere" }, { "name": "sdf3d_box_2", "node_position": { "x": -855.193726, "y": 1338.172852 }, "parameters": { "r": 0, "sx": 0.05, "sy": 0.05, "sz": 0.05 }, "type": "sdf3d_box" }, { "name": "sdf3d_translate_4_3_2", "node_position": { "x": -834.318359, "y": 1232.672852 }, "parameters": { "x": 0.12, "y": -0.03, "z": 0.18 }, "type": "sdf3d_translate" }, { "name": "sdf3d_rotate_2", "node_position": { "x": -839.193726, "y": 1471.172852 }, "parameters": { "ax": -30, "ay": 45, "az": 0 }, "shader_model": { "code": "", "global": "vec3 rotate3d(vec3 p, vec3 a) {\n\tvec3 rv;\n\tfloat c;\n\tfloat s;\n\tc = cos(a.x);\n\ts = sin(a.x);\n\trv.x = p.x;\n\trv.y = p.y*c+p.z*s;\n\trv.z = -p.y*s+p.z*c;\n\tc = cos(a.y);\n\ts = sin(a.y);\n\tp.x = rv.x*c+rv.z*s;\n\tp.y = rv.y;\n\tp.z = -rv.x*s+rv.z*c;\n\tc = cos(a.z);\n\ts = sin(a.z);\n\trv.x = p.x*c+p.y*s;\n\trv.y = -p.x*s+p.y*c;\n\trv.z = p.z;\n\treturn rv;\n}\n", "inputs": [ { "default": "0.0", "label": "", "name": "in", "type": "sdf3d" } ], "instance": "", "name": "Rotate", "outputs": [ { "sdf3d": "$in(rotate3d($uv, -vec3($ax, $ay, $az)*0.01745329251))", "type": "sdf3d" } ], "parameters": [ { "default": 0, "label": "X", "max": 180, "min": -180, "name": "ax", "step": 1, "type": "float" }, { "default": 0, "label": "Y", "max": 180, "min": -180, "name": "ay", "step": 1, "type": "float" }, { "default": 0, "label": "Z", "max": 180, "min": -180, "name": "az", "step": 1, "type": "float" } ] }, "type": "shader" }, { "name": "sdf3d_translate_4_3_2_2", "node_position": { "x": -840.193726, "y": 1600.172852 }, "parameters": { "x": 0, "y": 0.11, "z": 0.19 }, "type": "sdf3d_translate" }, { "name": "sdf3d_smoothboolean_3_2_3", "node_position": { "x": -623.818359, "y": 1236.172852 }, "parameters": { "k": 0.09, "op": 1 }, "type": "sdf3d_smoothboolean" }, { "name": "sdf3d_smoothboolean_3_2_2", "node_position": { "x": -622.818359, "y": 1073.172852 }, "parameters": { "k": 0.15, "op": 0 }, "type": "sdf3d_smoothboolean" }, { "name": "sdf3d_translate_4_2_2", "node_position": { "x": -832.989258, "y": 826.922729 }, "parameters": { "x": 0, "y": 0.24, "z": 0.01 }, "type": "sdf3d_translate" }, { "name": "sdf3d_smoothboolean_3_2_3_2", "node_position": { "x": -602.693726, "y": 1454.672852 }, "parameters": { "k": 0.03, "op": 1 }, "type": "sdf3d_smoothboolean" }, { "name": "sdf3d_translate_4_2", "node_position": { "x": -1141.989258, "y": 1070.922729 }, "parameters": { "x": 0, "y": 0.21, "z": 0.08 }, "type": "sdf3d_translate" }, { "name": "sdf3d_translate_4_3_3", "node_position": { "x": -363.318359, "y": 1762.672852 }, "parameters": { }, "shader_model": { "code": "", "global": "", "inputs": [ { "default": "0.0", "label": "", "name": "in", "type": "sdf3d" } ], "instance": "", "name": "Mirror", "outputs": [ { "sdf3d": "$in(vec3(abs($uv.x), $uv.y, $uv.z))", "type": "sdf3d" } ], "parameters": [ ] }, "type": "shader" }, { "name": "gen_inputs", "node_position": { "x": -1375.989258, "y": 1121.935181 }, "parameters": { }, "ports": [ ], "type": "ios" }, { "name": "gen_outputs", "node_position": { "x": -179.318359, "y": 1763.935181 }, "parameters": { }, "ports": [ { "name": "port0", "type": "sdf3d" } ], "type": "ios" }, { "name": "gen_parameters", "node_position": { "x": -1028.995361, "y": 476.422729 }, "parameters": { }, "type": "remote", "widgets": [ ] }, { "name": "sdf3d_translate_4_3_2_2_2", "node_position": { "x": -1172.482544, "y": 1931.119385 }, "parameters": { "x": 0, "y": 0.14, "z": 0 }, "shader_model": { "code": "", "global": "", "inputs": [ { "default": "0.0", "label": "", "name": "in", "type": "sdf3d" } ], "instance": "", "name": "Translate", "outputs": [ { "sdf3d": "$in($uv-vec3($x, $y, $z))", "type": "sdf3d" } ], "parameters": [ { "default": 0, "label": "X", "max": 1, "min": -1, "name": "x", "step": 0.01, "type": "float" }, { "default": 0, "label": "Y", "max": 1, "min": -1, "name": "y", "step": 0.01, "type": "float" }, { "default": 0, "label": "Z", "max": 1, "min": -1, "name": "z", "step": 0.01, "type": "float" } ] }, "type": "shader" }, { "name": "sdf3d_rotate_2_2", "node_position": { "x": -1172.482544, "y": 1829.119385 }, "parameters": { "ax": 0, "ay": 0, "az": 45 }, "shader_model": { "code": "", "global": "vec3 rotate3d(vec3 p, vec3 a) {\n\tvec3 rv;\n\tfloat c;\n\tfloat s;\n\tc = cos(a.x);\n\ts = sin(a.x);\n\trv.x = p.x;\n\trv.y = p.y*c+p.z*s;\n\trv.z = -p.y*s+p.z*c;\n\tc = cos(a.y);\n\ts = sin(a.y);\n\tp.x = rv.x*c+rv.z*s;\n\tp.y = rv.y;\n\tp.z = -rv.x*s+rv.z*c;\n\tc = cos(a.z);\n\ts = sin(a.z);\n\trv.x = p.x*c+p.y*s;\n\trv.y = -p.x*s+p.y*c;\n\trv.z = p.z;\n\treturn rv;\n}\n", "inputs": [ { "default": "0.0", "label": "", "name": "in", "type": "sdf3d" } ], "instance": "", "name": "Rotate", "outputs": [ { "sdf3d": "$in(rotate3d($uv, -vec3($ax, $ay, $az)*0.01745329251))", "type": "sdf3d" } ], "parameters": [ { "default": 0, "label": "X", "max": 180, "min": -180, "name": "ax", "step": 1, "type": "float" }, { "default": 0, "label": "Y", "max": 180, "min": -180, "name": "ay", "step": 1, "type": "float" }, { "default": 0, "label": "Z", "max": 180, "min": -180, "name": "az", "step": 1, "type": "float" } ] }, "type": "shader" }, { "name": "sdf3d_repeat", "node_position": { "x": -1166.482544, "y": 2035.119385 }, "parameters": { "c": 15 }, "shader_model": { "code": "", "global": "vec3 circle_repeat_transform(vec3 p, float count) {\n\tfloat r = 6.28/count;\n\tfloat pa = atan(p.x, p.y);\n\tfloat a = mod(pa+0.5*r, r)-0.5*r;\n\tvec3 rv;\n\tfloat c = cos(a-pa);\n\tfloat s = sin(a-pa);\n\trv.x = p.x*c+p.y*s;\n\trv.y = -p.x*s+p.y*c;\n\trv.z = p.z;\n\treturn rv;\n}\n", "inputs": [ { "default": "0.0", "label": "", "name": "in", "type": "sdf3d" } ], "instance": "", "name": "Circle Repeat", "outputs": [ { "sdf3d": "$in(circle_repeat_transform($uv, $c))", "type": "sdf3d" } ], "parameters": [ { "default": 4, "label": "", "max": 32, "min": 1, "name": "c", "step": 1, "type": "float" } ] }, "type": "shader" }, { "name": "sdf3d_rotate_2_2_2", "node_position": { "x": -791.235718, "y": 1859.869385 }, "parameters": { "ax": -90, "ay": 0, "az": 0 }, "shader_model": { "code": "", "global": "vec3 rotate3d(vec3 p, vec3 a) {\n\tvec3 rv;\n\tfloat c;\n\tfloat s;\n\tc = cos(a.x);\n\ts = sin(a.x);\n\trv.x = p.x;\n\trv.y = p.y*c+p.z*s;\n\trv.z = -p.y*s+p.z*c;\n\tc = cos(a.y);\n\ts = sin(a.y);\n\tp.x = rv.x*c+rv.z*s;\n\tp.y = rv.y;\n\tp.z = -rv.x*s+rv.z*c;\n\tc = cos(a.z);\n\ts = sin(a.z);\n\trv.x = p.x*c+p.y*s;\n\trv.y = -p.x*s+p.y*c;\n\trv.z = p.z;\n\treturn rv;\n}\n", "inputs": [ { "default": "0.0", "label": "", "name": "in", "type": "sdf3d" } ], "instance": "", "name": "Rotate", "outputs": [ { "sdf3d": "$in(rotate3d($uv, -vec3($ax, $ay, $az)*0.01745329251))", "type": "sdf3d" } ], "parameters": [ { "default": 0, "label": "X", "max": 180, "min": -180, "name": "ax", "step": 1, "type": "float" }, { "default": 0, "label": "Y", "max": 180, "min": -180, "name": "ay", "step": 1, "type": "float" }, { "default": 0, "label": "Z", "max": 180, "min": -180, "name": "az", "step": 1, "type": "float" } ] }, "type": "shader" }, { "name": "sdf3d_translate_4_3_2_2_2_2", "node_position": { "x": -788.235718, "y": 1967.869385 }, "parameters": { "x": 0, "y": 0.315, "z": 0.08 }, "type": "sdf3d_translate" }, { "name": "sdf3d_cylinder", "node_position": { "x": -1161, "y": 994.5 }, "parameters": { "l": 0.06, "r": 0.15 }, "type": "sdf3d_cylinder" }, { "name": "sdf3d_smoothboolean_3_3", "node_position": { "x": -1104.305908, "y": 815.75 }, "parameters": { "k": 0.1, "op": 1 }, "type": "sdf3d_smoothboolean" }, { "name": "sdf3d_box_2_2", "node_position": { "x": -1190.880981, "y": 1701 }, "parameters": { "r": 0, "sx": 0.01, "sy": 0.01, "sz": 0.015 }, "type": "sdf3d_box" }, { "name": "sdf3d_smoothboolean_3_2_3_2_2", "node_position": { "x": -562.468933, "y": 1761.75 }, "parameters": { "k": 0.05, "op": 0 }, "type": "sdf3d_smoothboolean" }, { "name": "sdf3d_sphere_2_3", "node_position": { "x": -1165.397095, "y": 2204.25 }, "parameters": { "r": 0.28 }, "type": "sdf3d_sphere" }, { "name": "sdf3d_translate_4_3_2_2_2_3", "node_position": { "x": -1175.397095, "y": 2261.5 }, "parameters": { "x": 0, "y": 0.28, "z": 0 }, "type": "sdf3d_translate" }, { "name": "sdf3d_boolean", "node_position": { "x": -990.397095, "y": 2076 }, "parameters": { "op": 2 }, "type": "sdf3d_boolean" }, { "name": "sdroundedshape", "node_position": { "x": -794.225342, "y": 2070.75 }, "parameters": { "r": 0.01 }, "shader_model": { "code": "", "global": "", "inputs": [ { "default": "0.0", "label": "", "name": "in", "type": "sdf3d" } ], "instance": "", "name": "Rounded", "outputs": [ { "sdf3d": "$in($uv)-$r", "type": "sdf3d" } ], "parameters": [ { "default": 0, "label": "", "max": 1, "min": 0, "name": "r", "step": 0.01, "type": "float" } ] }, "type": "shader" }, { "name": "sdf3d_rotate_2_2_3", "node_position": { "x": -1172.268311, "y": 2085.75 }, "parameters": { "ax": 0, "ay": 0, "az": 11 }, "shader_model": { "code": "", "global": "vec3 rotate3d(vec3 p, vec3 a) {\n\tvec3 rv;\n\tfloat c;\n\tfloat s;\n\tc = cos(a.x);\n\ts = sin(a.x);\n\trv.x = p.x;\n\trv.y = p.y*c+p.z*s;\n\trv.z = -p.y*s+p.z*c;\n\tc = cos(a.y);\n\ts = sin(a.y);\n\tp.x = rv.x*c+rv.z*s;\n\tp.y = rv.y;\n\tp.z = -rv.x*s+rv.z*c;\n\tc = cos(a.z);\n\ts = sin(a.z);\n\trv.x = p.x*c+p.y*s;\n\trv.y = -p.x*s+p.y*c;\n\trv.z = p.z;\n\treturn rv;\n}\n", "inputs": [ { "default": "0.0", "label": "", "name": "in", "type": "sdf3d" } ], "instance": "", "name": "Rotate", "outputs": [ { "sdf3d": "$in(rotate3d($uv, -vec3($ax, $ay, $az)*0.01745329251))", "type": "sdf3d" } ], "parameters": [ { "default": 0, "label": "X", "max": 180, "min": -180, "name": "ax", "step": 1, "type": "float" }, { "default": 0, "label": "Y", "max": 180, "min": -180, "name": "ay", "step": 1, "type": "float" }, { "default": 0, "label": "Z", "max": 180, "min": -180, "name": "az", "step": 1, "type": "float" } ] }, "type": "shader" }, { "name": "sdf3d_scale_2", "node_position": { "x": -825.646118, "y": 772.643799 }, "parameters": { "s": 0.48 }, "type": "sdf3d_scale" } ], "parameters": { }, "type": "graph" }, { "name": "sdf3d_extrusion", "node_position": { "x": -69.41095, "y": -191.970337 }, "parameters": { "d": -0.53 }, "type": "sdf3d_extrusion" }, { "name": "sdf3d_cylinder", "node_position": { "x": -701.943542, "y": 10.501892 }, "parameters": { "l": 0.25, "r": 0.25 }, "type": "sdf3d_cylinder" }, { "name": "edge_detect_1", "node_position": { "x": 135.801086, "y": 669.017395 }, "parameters": { "size": 7 }, "type": "edge_detect_1" }, { "name": "shape", "node_position": { "x": -284.198914, "y": 863.517395 }, "parameters": { "edge": 0.754975, "radius": 1, "shape": 1, "sides": 7 }, "type": "shape" }, { "name": "edge_detect_2", "node_position": { "x": 135.801086, "y": 722.017395 }, "parameters": { "size": 6 }, "seed_value": 27531, "type": "edge_detect_2" }, { "name": "edge_detect_3", "node_position": { "x": 134.801086, "y": 775.017395 }, "parameters": { "size": 6 }, "seed_value": 18749, "type": "edge_detect_3" }, { "name": "sharpen", "node_position": { "x": 122.801086, "y": 909.017395 }, "parameters": { "size": 6 }, "seed_value": 55115, "type": "sharpen" }, { "name": "quantize", "node_position": { "x": -84.198914, "y": 926.517395 }, "parameters": { "steps": 4 }, "type": "quantize" }, { "name": "4330", "node_position": { "x": -240.982361, "y": 435.636383 }, "parameters": { }, "shader_model": { "code": "", "global": "float calcdist(vec3 p) {\n return length(p)-0.4;\n}\n\nfloat raymarch(vec3 ro, vec3 rd) {\n float d=0.0;\n for (int i = 0; i < 250; i++) {\n vec3 p = ro + rd*d;\n float dstep = calcdist(p);\n d += dstep;\n if (dstep < 0.0000001) break;\n }\n return d;\n}\nvec3 normal(vec3 p) {\n float d = calcdist(p);\n float e = .0001;\n vec3 n = d - vec3(calcdist(p-vec3(e, 0.0, 0.0)), calcdist(p-vec3(0.0, e, 0.0)), calcdist(p-vec3(0.0, 0.0, e)));\n return normalize(n);\n}\n\n", "inputs": [ { "default": "vec3(1.0)", "function": true, "label": "", "name": "in", "type": "tex3d" } ], "instance": "vec4 pvt3d(vec2 uv) {\n uv -= vec2(0.5);\n vec3 p = vec3(uv, 2.0-raymarch(vec3(uv, 2.0), vec3(0.0, 0.0, -1.0)));\n vec3 n = normal(p);\n vec3 l = vec3(5.0, 5.0, 10.0);\n vec3 ld = normalize(l-p);\n float o = step(p.z, 0.001);\n float shadow = 1.0-0.75*step(raymarch(l, -ld), length(l-p)-0.01);\n float light = 0.3+0.7*dot(n, ld)*shadow;\n return vec4($in(vec4(p, 0.0))*light, 1.0);\n}\n", "name": "TEX3D preview", "outputs": [ { "rgba": "pvt3d($uv)", "type": "rgba" } ], "parameters": [ ] }, "type": "shader" }, { "name": "tex3d_pattern_2", "node_position": { "x": -973.849976, "y": 562.386353 }, "parameters": { "mix": 4, "x_scale": 2, "x_wave": 2, "y_scale": 2, "y_wave": 2, "z_scale": 2, "z_wave": 2 }, "type": "tex3d_pattern" }, { "name": "tex3d_fbm_4", "node_position": { "x": -967.880981, "y": 383.243591 }, "parameters": { "iterations": 3, "noise": 2, "persistence": 0.5, "scale_x": 8, "scale_y": 8, "scale_z": 8 }, "type": "tex3d_fbm" }, { "name": "tex3d_distort_2", "node_position": { "x": -606.474854, "y": 463.950104 }, "parameters": { "Distort": 0.3 }, "shader_model": { "code": "", "global": "", "inputs": [ { "default": "vec3(1.0)", "label": "", "name": "in1", "type": "tex3d" }, { "default": "vec3(0.0)", "label": "", "name": "in2", "type": "tex3d" } ], "instance": "", "name": "TEX3D Distort", "outputs": [ { "tex3d": "$in1(vec4($uv.xyz+($in2($uv)*$Distort*0.5-0.5), 0.0))", "type": "tex3d" } ], "parameters": [ { "control": "None", "default": 0.5, "label": "Distort", "max": 1, "min": 0, "name": "Distort", "step": 0.01, "type": "float" } ] }, "type": "shader" }, { "name": "sdf3d_elongation", "node_position": { "x": -493.474854, "y": 290.950104 }, "parameters": { "x": 0.2, "y": 0, "z": 0 }, "type": "sdf3d_elongation" }, { "name": "sdf3d_torus", "node_position": { "x": -505.208618, "y": 190.516663 }, "parameters": { "R": 0.180551, "r": 0.097392 }, "type": "sdf3d_torus" }, { "name": "fbm", "node_position": { "x": -264.208618, "y": 128.516663 }, "parameters": { "iterations": 6, "noise": 2, "persistence": 0.5, "scale_x": 8, "scale_y": 8 }, "type": "fbm" }, { "name": "splatter", "node_position": { "x": -342.208618, "y": 502.266663 }, "parameters": { "count": 25, "rotate": 0, "scale": 0, "select_inputs": 0 }, "type": "splatter" }, { "name": "colorize_2_2_2", "node_position": { "x": -819.442566, "y": 1165.332642 }, "parameters": { "gradient": { "interpolation": 1, "points": [ { "a": 0, "b": 0, "g": 0, "pos": 0, "r": 0 }, { "a": 1, "b": 1, "g": 0.093751, "pos": 0.045455, "r": 0 }, { "a": 1, "b": 1, "g": 1, "pos": 1, "r": 1 } ], "type": "Gradient" } }, "type": "colorize" }, { "name": "shape_2_2", "node_position": { "x": -1016.442627, "y": 1034.332642 }, "parameters": { "edge": 1, "radius": 0.13, "shape": 0, "sides": 6 }, "type": "shape" }, { "name": "colorize_2_2", "node_position": { "x": -840.442566, "y": 1029.332642 }, "parameters": { "gradient": { "interpolation": 1, "points": [ { "a": 0, "b": 0, "g": 0, "pos": 0, "r": 0 }, { "a": 1, "b": 0, "g": 1, "pos": 0.036364, "r": 0.21875 }, { "a": 1, "b": 1, "g": 1, "pos": 1, "r": 1 } ], "type": "Gradient" } }, "type": "colorize" }, { "name": "shape_2", "node_position": { "x": -1019.442627, "y": 754.082642 }, "parameters": { "edge": 1, "radius": 0.12, "shape": 1, "sides": 6 }, "type": "shape" }, { "name": "shape_2_3", "node_position": { "x": -1022.442627, "y": 897.332642 }, "parameters": { "edge": 1, "radius": 0.06, "shape": 2, "sides": 5 }, "type": "shape" }, { "name": "colorize_2", "node_position": { "x": -838.442566, "y": 893.332642 }, "parameters": { "gradient": { "interpolation": 1, "points": [ { "a": 0, "b": 0, "g": 0, "pos": 0, "r": 0 }, { "a": 1, "b": 0, "g": 0.9375, "pos": 0.045455, "r": 1 }, { "a": 1, "b": 1, "g": 1, "pos": 1, "r": 1 } ], "type": "Gradient" } }, "type": "colorize" }, { "name": "colorize", "node_position": { "x": -840.442566, "y": 748.082642 }, "parameters": { "gradient": { "interpolation": 1, "points": [ { "a": 0, "b": 0, "g": 0, "pos": 0, "r": 0 }, { "a": 1, "b": 0, "g": 0, "pos": 0.036364, "r": 1 }, { "a": 1, "b": 1, "g": 1, "pos": 1, "r": 1 } ], "type": "Gradient" } }, "type": "colorize" }, { "name": "shape_2_2_2", "node_position": { "x": -1016.442627, "y": 1170.332642 }, "parameters": { "edge": 1, "radius": 0.12, "shape": 3, "sides": 7 }, "type": "shape" }, { "name": "tile2x2", "node_position": { "x": -558.442566, "y": 890.082642 }, "parameters": { }, "type": "tile2x2" }, { "name": "splatter_color", "node_position": { "x": -328.164795, "y": 1041.0271 }, "parameters": { "count": 100, "rotate": 0, "scale": 0, "select_inputs": 0 }, "type": "splatter_color" }, { "name": "tiler_color", "node_position": { "x": -598.862, "y": 599.541748 }, "parameters": { "offset": 0.62, "overlap": 1, "rotate": 45, "scale": 0.2, "select_inputs": 1, "tx": 8, "ty": 8 }, "type": "tiler_color" } ], "parameters": { }, "type": "graph" }