Pack, Color mix

This commit is contained in:
Tanasart 2023-03-19 15:17:39 +07:00
parent 1b22fb0233
commit 9d7854efe8
385 changed files with 11794 additions and 5364 deletions

View file

@ -23,6 +23,7 @@
{"name":"control","order":22,"path":"folders/functions/control.yy",}, {"name":"control","order":22,"path":"folders/functions/control.yy",},
{"name":"curve","order":12,"path":"folders/functions/curve.yy",}, {"name":"curve","order":12,"path":"folders/functions/curve.yy",},
{"name":"debug","order":14,"path":"folders/functions/debug.yy",}, {"name":"debug","order":14,"path":"folders/functions/debug.yy",},
{"name":"delaunay","order":30,"path":"folders/functions/delaunay.yy",},
{"name":"draw","order":2,"path":"folders/functions/draw.yy",}, {"name":"draw","order":2,"path":"folders/functions/draw.yy",},
{"name":"ds","order":5,"path":"folders/functions/ds.yy",}, {"name":"ds","order":5,"path":"folders/functions/ds.yy",},
{"name":"eval","order":10,"path":"folders/functions/eval.yy",}, {"name":"eval","order":10,"path":"folders/functions/eval.yy",},
@ -40,9 +41,11 @@
{"name":"object","order":4,"path":"folders/functions/fluid sim/Internal/Compatibility/object.yy",}, {"name":"object","order":4,"path":"folders/functions/fluid sim/Internal/Compatibility/object.yy",},
{"name":"texture","order":5,"path":"folders/functions/fluid sim/Internal/Compatibility/texture.yy",}, {"name":"texture","order":5,"path":"folders/functions/fluid sim/Internal/Compatibility/texture.yy",},
{"name":"view","order":6,"path":"folders/functions/fluid sim/Internal/Compatibility/view.yy",}, {"name":"view","order":6,"path":"folders/functions/fluid sim/Internal/Compatibility/view.yy",},
{"name":"geometry","order":31,"path":"folders/functions/geometry.yy",},
{"name":"importers","order":6,"path":"folders/functions/importers.yy",}, {"name":"importers","order":6,"path":"folders/functions/importers.yy",},
{"name":"inputs","order":7,"path":"folders/functions/inputs.yy",}, {"name":"inputs","order":7,"path":"folders/functions/inputs.yy",},
{"name":"lua","order":24,"path":"folders/functions/lua.yy",}, {"name":"lua","order":24,"path":"folders/functions/lua.yy",},
{"name":"packing","order":32,"path":"folders/functions/packing.yy",},
{"name":"physics","order":21,"path":"folders/functions/physics.yy",}, {"name":"physics","order":21,"path":"folders/functions/physics.yy",},
{"name":"regex","order":11,"path":"folders/functions/regex.yy",}, {"name":"regex","order":11,"path":"folders/functions/regex.yy",},
{"name":"shader","order":16,"path":"folders/functions/shader.yy",}, {"name":"shader","order":16,"path":"folders/functions/shader.yy",},
@ -53,7 +56,7 @@
{"name":"vector","order":3,"path":"folders/functions/vector.yy",}, {"name":"vector","order":3,"path":"folders/functions/vector.yy",},
{"name":"window","order":29,"path":"folders/functions/window.yy",}, {"name":"window","order":29,"path":"folders/functions/window.yy",},
{"name":"main","order":1,"path":"folders/main.yy",}, {"name":"main","order":1,"path":"folders/main.yy",},
{"name":"scritps","order":6,"path":"folders/main/scritps.yy",}, {"name":"scritps","order":2,"path":"folders/main/scritps.yy",},
{"name":"nodes","order":3,"path":"folders/nodes.yy",}, {"name":"nodes","order":3,"path":"folders/nodes.yy",},
{"name":"data","order":10,"path":"folders/nodes/data.yy",}, {"name":"data","order":10,"path":"folders/nodes/data.yy",},
{"name":"__base__","order":12,"path":"folders/nodes/data/__base__.yy",}, {"name":"__base__","order":12,"path":"folders/nodes/data/__base__.yy",},
@ -77,8 +80,10 @@
{"name":"node","order":11,"path":"folders/nodes/data/node.yy",}, {"name":"node","order":11,"path":"folders/nodes/data/node.yy",},
{"name":"render","order":2,"path":"folders/nodes/data/render.yy",}, {"name":"render","order":2,"path":"folders/nodes/data/render.yy",},
{"name":"rigidSim","order":16,"path":"folders/nodes/data/rigidSim.yy",}, {"name":"rigidSim","order":16,"path":"folders/nodes/data/rigidSim.yy",},
{"name":"strandSim","order":20,"path":"folders/nodes/data/strandSim.yy",},
{"name":"transform","order":8,"path":"folders/nodes/data/transform.yy",}, {"name":"transform","order":8,"path":"folders/nodes/data/transform.yy",},
{"name":"value","order":3,"path":"folders/nodes/data/value.yy",}, {"name":"value","order":3,"path":"folders/nodes/data/value.yy",},
{"name":"mesh","order":7,"path":"folders/nodes/data/value/mesh.yy",},
{"name":"struct","order":6,"path":"folders/nodes/data/value/struct.yy",}, {"name":"struct","order":6,"path":"folders/nodes/data/value/struct.yy",},
{"name":"VFX","order":13,"path":"folders/nodes/data/VFX.yy",}, {"name":"VFX","order":13,"path":"folders/nodes/data/VFX.yy",},
{"name":"icons","order":6,"path":"folders/nodes/icons.yy",}, {"name":"icons","order":6,"path":"folders/nodes/icons.yy",},
@ -91,24 +96,26 @@
{"name":"node","order":139,"path":"folders/nodes/icons/node.yy",}, {"name":"node","order":139,"path":"folders/nodes/icons/node.yy",},
{"name":"render","order":140,"path":"folders/nodes/icons/render.yy",}, {"name":"render","order":140,"path":"folders/nodes/icons/render.yy",},
{"name":"rigidSim","order":146,"path":"folders/nodes/icons/rigidSim.yy",}, {"name":"rigidSim","order":146,"path":"folders/nodes/icons/rigidSim.yy",},
{"name":"strandSim","order":148,"path":"folders/nodes/icons/strandSim.yy",},
{"name":"transform","order":145,"path":"folders/nodes/icons/transform.yy",}, {"name":"transform","order":145,"path":"folders/nodes/icons/transform.yy",},
{"name":"value","order":144,"path":"folders/nodes/icons/value.yy",}, {"name":"value","order":144,"path":"folders/nodes/icons/value.yy",},
{"name":"array","order":44,"path":"folders/nodes/icons/value/array.yy",}, {"name":"array","order":44,"path":"folders/nodes/icons/value/array.yy",},
{"name":"bool","order":45,"path":"folders/nodes/icons/value/bool.yy",}, {"name":"bool","order":45,"path":"folders/nodes/icons/value/bool.yy",},
{"name":"color","order":46,"path":"folders/nodes/icons/value/color.yy",}, {"name":"color","order":46,"path":"folders/nodes/icons/value/color.yy",},
{"name":"mesh","order":51,"path":"folders/nodes/icons/value/mesh.yy",},
{"name":"number","order":47,"path":"folders/nodes/icons/value/number.yy",}, {"name":"number","order":47,"path":"folders/nodes/icons/value/number.yy",},
{"name":"path","order":48,"path":"folders/nodes/icons/value/path.yy",}, {"name":"path","order":48,"path":"folders/nodes/icons/value/path.yy",},
{"name":"struct","order":50,"path":"folders/nodes/icons/value/struct.yy",}, {"name":"struct","order":50,"path":"folders/nodes/icons/value/struct.yy",},
{"name":"texts","order":49,"path":"folders/nodes/icons/value/texts.yy",}, {"name":"texts","order":49,"path":"folders/nodes/icons/value/texts.yy",},
{"name":"VFX","order":134,"path":"folders/nodes/icons/VFX.yy",}, {"name":"VFX","order":134,"path":"folders/nodes/icons/VFX.yy",},
{"name":"panels","order":2,"path":"folders/panels.yy",}, {"name":"panels","order":2,"path":"folders/panels.yy",},
{"name":"data","order":9,"path":"folders/panels/data.yy",}, {"name":"graph","order":1,"path":"folders/panels/graph.yy",},
{"name":"graph","order":11,"path":"folders/panels/data/graph.yy",}, {"name":"inspectors","order":2,"path":"folders/panels/inspectors.yy",},
{"name":"inspectors","order":6,"path":"folders/panels/data/inspectors.yy",}, {"name":"components","order":3,"path":"folders/panels/inspectors/components.yy",},
{"name":"menu","order":12,"path":"folders/panels/data/menu.yy",}, {"name":"menu","order":3,"path":"folders/panels/menu.yy",},
{"name":"preview","order":10,"path":"folders/panels/data/preview.yy",}, {"name":"preview","order":4,"path":"folders/panels/preview.yy",},
{"name":"preview","order":7,"path":"folders/panels/preview.yy",}, {"name":"overlay","order":2,"path":"folders/panels/preview/overlay.yy",},
{"name":"overlay","order":4,"path":"folders/panels/preview/overlay.yy",}, {"name":"sprites","order":3,"path":"folders/panels/preview/sprites.yy",},
{"name":"shader","order":8,"path":"folders/shader.yy",}, {"name":"shader","order":8,"path":"folders/shader.yy",},
{"name":"3d","order":29,"path":"folders/shader/3d.yy",}, {"name":"3d","order":29,"path":"folders/shader/3d.yy",},
{"name":"blend","order":18,"path":"folders/shader/blend.yy",}, {"name":"blend","order":18,"path":"folders/shader/blend.yy",},
@ -148,6 +155,7 @@
{"name":"s_node_text_trim","order":7,"path":"sprites/s_node_text_trim/s_node_text_trim.yy",}, {"name":"s_node_text_trim","order":7,"path":"sprites/s_node_text_trim/s_node_text_trim.yy",},
{"name":"sh_noise_grid_hex","order":24,"path":"shaders/sh_noise_grid_hex/sh_noise_grid_hex.yy",}, {"name":"sh_noise_grid_hex","order":24,"path":"shaders/sh_noise_grid_hex/sh_noise_grid_hex.yy",},
{"name":"node_3d_obj","order":8,"path":"scripts/node_3d_obj/node_3d_obj.yy",}, {"name":"node_3d_obj","order":8,"path":"scripts/node_3d_obj/node_3d_obj.yy",},
{"name":"__path","order":1,"path":"scripts/__path/__path.yy",},
{"name":"s_node_grid_tri_noise","order":22,"path":"sprites/s_node_grid_tri_noise/s_node_grid_tri_noise.yy",}, {"name":"s_node_grid_tri_noise","order":22,"path":"sprites/s_node_grid_tri_noise/s_node_grid_tri_noise.yy",},
{"name":"o_dialog_menubox","order":1,"path":"objects/o_dialog_menubox/o_dialog_menubox.yy",}, {"name":"o_dialog_menubox","order":1,"path":"objects/o_dialog_menubox/o_dialog_menubox.yy",},
{"name":"s_node_blend","order":5,"path":"sprites/s_node_blend/s_node_blend.yy",}, {"name":"s_node_blend","order":5,"path":"sprites/s_node_blend/s_node_blend.yy",},
@ -175,12 +183,14 @@
{"name":"node_switch","order":5,"path":"scripts/node_switch/node_switch.yy",}, {"name":"node_switch","order":5,"path":"scripts/node_switch/node_switch.yy",},
{"name":"sh_corner","order":20,"path":"shaders/sh_corner/sh_corner.yy",}, {"name":"sh_corner","order":20,"path":"shaders/sh_corner/sh_corner.yy",},
{"name":"node_array","order":8,"path":"scripts/node_array/node_array.yy",}, {"name":"node_array","order":8,"path":"scripts/node_array/node_array.yy",},
{"name":"pack_corner","order":3,"path":"scripts/pack_corner/pack_corner.yy",},
{"name":"sh_colorize","order":9,"path":"shaders/sh_colorize/sh_colorize.yy",}, {"name":"sh_colorize","order":9,"path":"shaders/sh_colorize/sh_colorize.yy",},
{"name":"node_string","order":13,"path":"scripts/node_string/node_string.yy",}, {"name":"node_string","order":13,"path":"scripts/node_string/node_string.yy",},
{"name":"cross_product","order":3,"path":"scripts/cross_product/cross_product.yy",}, {"name":"cross_product","order":3,"path":"scripts/cross_product/cross_product.yy",},
{"name":"s_node_particle_effector","order":13,"path":"sprites/s_node_particle_effector/s_node_particle_effector.yy",}, {"name":"s_node_particle_effector","order":13,"path":"sprites/s_node_particle_effector/s_node_particle_effector.yy",},
{"name":"sh_blur_bokeh","order":8,"path":"shaders/sh_blur_bokeh/sh_blur_bokeh.yy",}, {"name":"sh_blur_bokeh","order":8,"path":"shaders/sh_blur_bokeh/sh_blur_bokeh.yy",},
{"name":"s_node_loop_input","order":14,"path":"sprites/s_node_loop_input/s_node_loop_input.yy",}, {"name":"s_node_loop_input","order":14,"path":"sprites/s_node_loop_input/s_node_loop_input.yy",},
{"name":"node_strand_length_adjust","order":11,"path":"scripts/node_strand_length_adjust/node_strand_length_adjust.yy",},
{"name":"fd_rectangle_add_material_surface","order":25,"path":"scripts/fd_rectangle_add_material_surface/fd_rectangle_add_material_surface.yy",}, {"name":"fd_rectangle_add_material_surface","order":25,"path":"scripts/fd_rectangle_add_material_surface/fd_rectangle_add_material_surface.yy",},
{"name":"perlin_noise","order":5,"path":"scripts/perlin_noise/perlin_noise.yy",}, {"name":"perlin_noise","order":5,"path":"scripts/perlin_noise/perlin_noise.yy",},
{"name":"fd_rectangle_replace_material","order":14,"path":"scripts/fd_rectangle_replace_material/fd_rectangle_replace_material.yy",}, {"name":"fd_rectangle_replace_material","order":14,"path":"scripts/fd_rectangle_replace_material/fd_rectangle_replace_material.yy",},
@ -223,6 +233,7 @@
{"name":"node_outline","order":11,"path":"scripts/node_outline/node_outline.yy",}, {"name":"node_outline","order":11,"path":"scripts/node_outline/node_outline.yy",},
{"name":"sh_mesh_generation","order":44,"path":"shaders/sh_mesh_generation/sh_mesh_generation.yy",}, {"name":"sh_mesh_generation","order":44,"path":"shaders/sh_mesh_generation/sh_mesh_generation.yy",},
{"name":"math_function","order":7,"path":"scripts/math_function/math_function.yy",}, {"name":"math_function","order":7,"path":"scripts/math_function/math_function.yy",},
{"name":"__point","order":4,"path":"scripts/__point/__point.yy",},
{"name":"scrollBox","order":13,"path":"scripts/scrollBox/scrollBox.yy",}, {"name":"scrollBox","order":13,"path":"scripts/scrollBox/scrollBox.yy",},
{"name":"o_dialog_exit","order":2,"path":"objects/o_dialog_exit/o_dialog_exit.yy",}, {"name":"o_dialog_exit","order":2,"path":"objects/o_dialog_exit/o_dialog_exit.yy",},
{"name":"node_polygonal_shape","order":27,"path":"scripts/node_polygonal_shape/node_polygonal_shape.yy",}, {"name":"node_polygonal_shape","order":27,"path":"scripts/node_polygonal_shape/node_polygonal_shape.yy",},
@ -231,6 +242,7 @@
{"name":"node_gradient_points","order":20,"path":"scripts/node_gradient_points/node_gradient_points.yy",}, {"name":"node_gradient_points","order":20,"path":"scripts/node_gradient_points/node_gradient_points.yy",},
{"name":"_f_code","order":9,"path":"fonts/_f_code/_f_code.yy",}, {"name":"_f_code","order":9,"path":"fonts/_f_code/_f_code.yy",},
{"name":"sh_combine_rgb","order":40,"path":"shaders/sh_combine_rgb/sh_combine_rgb.yy",}, {"name":"sh_combine_rgb","order":40,"path":"shaders/sh_combine_rgb/sh_combine_rgb.yy",},
{"name":"s_node_strandSim","order":3,"path":"sprites/s_node_strandSim/s_node_strandSim.yy",},
{"name":"o_dialog_panel","order":13,"path":"objects/o_dialog_panel/o_dialog_panel.yy",}, {"name":"o_dialog_panel","order":13,"path":"objects/o_dialog_panel/o_dialog_panel.yy",},
{"name":"s_node_vfx","order":9,"path":"sprites/s_node_vfx/s_node_vfx.yy",}, {"name":"s_node_vfx","order":9,"path":"sprites/s_node_vfx/s_node_vfx.yy",},
{"name":"fd_rectangle_get_velocity_maccormack_weight","order":23,"path":"scripts/fd_rectangle_get_velocity_maccormack_weight/fd_rectangle_get_velocity_maccormack_weight.yy",}, {"name":"fd_rectangle_get_velocity_maccormack_weight","order":23,"path":"scripts/fd_rectangle_get_velocity_maccormack_weight/fd_rectangle_get_velocity_maccormack_weight.yy",},
@ -262,7 +274,7 @@
{"name":"sh_cell_noise_round","order":9,"path":"shaders/sh_cell_noise_round/sh_cell_noise_round.yy",}, {"name":"sh_cell_noise_round","order":9,"path":"shaders/sh_cell_noise_round/sh_cell_noise_round.yy",},
{"name":"s_node_path_plot","order":12,"path":"sprites/s_node_path_plot/s_node_path_plot.yy",}, {"name":"s_node_path_plot","order":12,"path":"sprites/s_node_path_plot/s_node_path_plot.yy",},
{"name":"json_functions","order":8,"path":"scripts/json_functions/json_functions.yy",}, {"name":"json_functions","order":8,"path":"scripts/json_functions/json_functions.yy",},
{"name":"event_recorder","order":3,"path":"scripts/event_recorder/event_recorder.yy",}, {"name":"event_recorder","order":4,"path":"scripts/event_recorder/event_recorder.yy",},
{"name":"s_node_path_l_system","order":10,"path":"sprites/s_node_path_l_system/s_node_path_l_system.yy",}, {"name":"s_node_path_l_system","order":10,"path":"sprites/s_node_path_l_system/s_node_path_l_system.yy",},
{"name":"s_node_noise_cell","order":10,"path":"sprites/s_node_noise_cell/s_node_noise_cell.yy",}, {"name":"s_node_noise_cell","order":10,"path":"sprites/s_node_noise_cell/s_node_noise_cell.yy",},
{"name":"node_colorize","order":4,"path":"scripts/node_colorize/node_colorize.yy",}, {"name":"node_colorize","order":4,"path":"scripts/node_colorize/node_colorize.yy",},
@ -279,7 +291,7 @@
{"name":"checkboxGroup","order":28,"path":"scripts/checkboxGroup/checkboxGroup.yy",}, {"name":"checkboxGroup","order":28,"path":"scripts/checkboxGroup/checkboxGroup.yy",},
{"name":"s_node_pixel_find","order":13,"path":"sprites/s_node_pixel_find/s_node_pixel_find.yy",}, {"name":"s_node_pixel_find","order":13,"path":"sprites/s_node_pixel_find/s_node_pixel_find.yy",},
{"name":"sh_noise_grid_tri","order":25,"path":"shaders/sh_noise_grid_tri/sh_noise_grid_tri.yy",}, {"name":"sh_noise_grid_tri","order":25,"path":"shaders/sh_noise_grid_tri/sh_noise_grid_tri.yy",},
{"name":"globals","order":1,"path":"scripts/globals/globals.yy",}, {"name":"globals","order":2,"path":"scripts/globals/globals.yy",},
{"name":"s_node_noise_perlin","order":11,"path":"sprites/s_node_noise_perlin/s_node_noise_perlin.yy",}, {"name":"s_node_noise_perlin","order":11,"path":"sprites/s_node_noise_perlin/s_node_noise_perlin.yy",},
{"name":"s_node_dithering","order":19,"path":"sprites/s_node_dithering/s_node_dithering.yy",}, {"name":"s_node_dithering","order":19,"path":"sprites/s_node_dithering/s_node_dithering.yy",},
{"name":"s_workshop_badge","order":1,"path":"sprites/s_workshop_badge/s_workshop_badge.yy",}, {"name":"s_workshop_badge","order":1,"path":"sprites/s_workshop_badge/s_workshop_badge.yy",},
@ -319,10 +331,12 @@
{"name":"s_node_vec4","order":9,"path":"sprites/s_node_vec4/s_node_vec4.yy",}, {"name":"s_node_vec4","order":9,"path":"sprites/s_node_vec4/s_node_vec4.yy",},
{"name":"buttonGroup","order":5,"path":"scripts/buttonGroup/buttonGroup.yy",}, {"name":"buttonGroup","order":5,"path":"scripts/buttonGroup/buttonGroup.yy",},
{"name":"s_node_image_sheet","order":10,"path":"sprites/s_node_image_sheet/s_node_image_sheet.yy",}, {"name":"s_node_image_sheet","order":10,"path":"sprites/s_node_image_sheet/s_node_image_sheet.yy",},
{"name":"locale_data","order":1,"path":"scripts/locale_data/locale_data.yy",},
{"name":"o_dialog_scrollbox","order":2,"path":"objects/o_dialog_scrollbox/o_dialog_scrollbox.yy",}, {"name":"o_dialog_scrollbox","order":2,"path":"objects/o_dialog_scrollbox/o_dialog_scrollbox.yy",},
{"name":"s_node_palette","order":10,"path":"sprites/s_node_palette/s_node_palette.yy",}, {"name":"s_node_palette","order":10,"path":"sprites/s_node_palette/s_node_palette.yy",},
{"name":"curve_damping_function","order":2,"path":"scripts/curve_damping_function/curve_damping_function.yy",}, {"name":"curve_damping_function","order":2,"path":"scripts/curve_damping_function/curve_damping_function.yy",},
{"name":"fd_rectangle_get_collision_mask_surface","order":6,"path":"scripts/fd_rectangle_get_collision_mask_surface/fd_rectangle_get_collision_mask_surface.yy",}, {"name":"fd_rectangle_get_collision_mask_surface","order":6,"path":"scripts/fd_rectangle_get_collision_mask_surface/fd_rectangle_get_collision_mask_surface.yy",},
{"name":"s_node_strandSim_length","order":9,"path":"sprites/s_node_strandSim_length/s_node_strandSim_length.yy",},
{"name":"node_VFX_variable","order":15,"path":"scripts/node_VFX_variable/node_VFX_variable.yy",}, {"name":"node_VFX_variable","order":15,"path":"scripts/node_VFX_variable/node_VFX_variable.yy",},
{"name":"node_array_sort","order":23,"path":"scripts/node_array_sort/node_array_sort.yy",}, {"name":"node_array_sort","order":23,"path":"scripts/node_array_sort/node_array_sort.yy",},
{"name":"fd_draw_surface_to_collision_mask_surface","order":2,"path":"scripts/fd_draw_surface_to_collision_mask_surface/fd_draw_surface_to_collision_mask_surface.yy",}, {"name":"fd_draw_surface_to_collision_mask_surface","order":2,"path":"scripts/fd_draw_surface_to_collision_mask_surface/fd_draw_surface_to_collision_mask_surface.yy",},
@ -363,13 +377,16 @@
{"name":"node_blur_bokeh","order":6,"path":"scripts/node_blur_bokeh/node_blur_bokeh.yy",}, {"name":"node_blur_bokeh","order":6,"path":"scripts/node_blur_bokeh/node_blur_bokeh.yy",},
{"name":"sh_color_remove","order":22,"path":"shaders/sh_color_remove/sh_color_remove.yy",}, {"name":"sh_color_remove","order":22,"path":"shaders/sh_color_remove/sh_color_remove.yy",},
{"name":"o_dialog_migration","order":11,"path":"objects/o_dialog_migration/o_dialog_migration.yy",}, {"name":"o_dialog_migration","order":11,"path":"objects/o_dialog_migration/o_dialog_migration.yy",},
{"name":"s_node_color_mix","order":19,"path":"sprites/s_node_color_mix/s_node_color_mix.yy",},
{"name":"s_node_blur","order":7,"path":"sprites/s_node_blur/s_node_blur.yy",}, {"name":"s_node_blur","order":7,"path":"sprites/s_node_blur/s_node_blur.yy",},
{"name":"textArea","order":20,"path":"scripts/textArea/textArea.yy",}, {"name":"textArea","order":20,"path":"scripts/textArea/textArea.yy",},
{"name":"s_node_gradient_4points","order":2,"path":"sprites/s_node_gradient_4points/s_node_gradient_4points.yy",}, {"name":"s_node_gradient_4points","order":2,"path":"sprites/s_node_gradient_4points/s_node_gradient_4points.yy",},
{"name":"s_node_gradient_out","order":9,"path":"sprites/s_node_gradient_out/s_node_gradient_out.yy",}, {"name":"s_node_gradient_out","order":9,"path":"sprites/s_node_gradient_out/s_node_gradient_out.yy",},
{"name":"s_node_vec3","order":8,"path":"sprites/s_node_vec3/s_node_vec3.yy",}, {"name":"s_node_vec3","order":8,"path":"sprites/s_node_vec3/s_node_vec3.yy",},
{"name":"s_node_strandSim_create","order":2,"path":"sprites/s_node_strandSim_create/s_node_strandSim_create.yy",},
{"name":"node_gradient_shift","order":10,"path":"scripts/node_gradient_shift/node_gradient_shift.yy",}, {"name":"node_gradient_shift","order":10,"path":"scripts/node_gradient_shift/node_gradient_shift.yy",},
{"name":"sh_vertex_normal_pass","order":5,"path":"shaders/sh_vertex_normal_pass/sh_vertex_normal_pass.yy",}, {"name":"sh_vertex_normal_pass","order":5,"path":"shaders/sh_vertex_normal_pass/sh_vertex_normal_pass.yy",},
{"name":"s_node_pack_sprite","order":5,"path":"sprites/s_node_pack_sprite/s_node_pack_sprite.yy",},
{"name":"surface_valid","order":6,"path":"scripts/surface_valid/surface_valid.yy",}, {"name":"surface_valid","order":6,"path":"scripts/surface_valid/surface_valid.yy",},
{"name":"sh_blur_zoom","order":5,"path":"shaders/sh_blur_zoom/sh_blur_zoom.yy",}, {"name":"sh_blur_zoom","order":5,"path":"shaders/sh_blur_zoom/sh_blur_zoom.yy",},
{"name":"node_VFX_renderer","order":3,"path":"scripts/node_VFX_renderer/node_VFX_renderer.yy",}, {"name":"node_VFX_renderer","order":3,"path":"scripts/node_VFX_renderer/node_VFX_renderer.yy",},
@ -388,6 +405,7 @@
{"name":"node_posterize","order":13,"path":"scripts/node_posterize/node_posterize.yy",}, {"name":"node_posterize","order":13,"path":"scripts/node_posterize/node_posterize.yy",},
{"name":"o_dialog_image_array_edit","order":4,"path":"objects/o_dialog_image_array_edit/o_dialog_image_array_edit.yy",}, {"name":"o_dialog_image_array_edit","order":4,"path":"objects/o_dialog_image_array_edit/o_dialog_image_array_edit.yy",},
{"name":"s_ui_base_white","order":2,"path":"sprites/s_ui_base_white/s_ui_base_white.yy",}, {"name":"s_ui_base_white","order":2,"path":"sprites/s_ui_base_white/s_ui_base_white.yy",},
{"name":"node_color_mix","order":14,"path":"scripts/node_color_mix/node_color_mix.yy",},
{"name":"s_node_array_range","order":6,"path":"sprites/s_node_array_range/s_node_array_range.yy",}, {"name":"s_node_array_range","order":6,"path":"sprites/s_node_array_range/s_node_array_range.yy",},
{"name":"sh_fd_advect_material_a_16_glsl","order":2,"path":"shaders/sh_fd_advect_material_a_16_glsl/sh_fd_advect_material_a_16_glsl.yy",}, {"name":"sh_fd_advect_material_a_16_glsl","order":2,"path":"shaders/sh_fd_advect_material_a_16_glsl/sh_fd_advect_material_a_16_glsl.yy",},
{"name":"distribution_function","order":12,"path":"scripts/distribution_function/distribution_function.yy",}, {"name":"distribution_function","order":12,"path":"scripts/distribution_function/distribution_function.yy",},
@ -399,14 +417,16 @@
{"name":"node_zigzag","order":12,"path":"scripts/node_zigzag/node_zigzag.yy",}, {"name":"node_zigzag","order":12,"path":"scripts/node_zigzag/node_zigzag.yy",},
{"name":"node_equation","order":18,"path":"scripts/node_equation/node_equation.yy",}, {"name":"node_equation","order":18,"path":"scripts/node_equation/node_equation.yy",},
{"name":"fd_rectangle_get_visualization_shader","order":27,"path":"scripts/fd_rectangle_get_visualization_shader/fd_rectangle_get_visualization_shader.yy",}, {"name":"fd_rectangle_get_visualization_shader","order":27,"path":"scripts/fd_rectangle_get_visualization_shader/fd_rectangle_get_visualization_shader.yy",},
{"name":"preset_data","order":7,"path":"scripts/preset_data/preset_data.yy",}, {"name":"preset_data","order":8,"path":"scripts/preset_data/preset_data.yy",},
{"name":"_f_h5","order":2,"path":"fonts/_f_h5/_f_h5.yy",}, {"name":"_f_h5","order":2,"path":"fonts/_f_h5/_f_h5.yy",},
{"name":"node_string_split","order":14,"path":"scripts/node_string_split/node_string_split.yy",}, {"name":"node_string_split","order":14,"path":"scripts/node_string_split/node_string_split.yy",},
{"name":"meta_data","order":11,"path":"scripts/meta_data/meta_data.yy",}, {"name":"meta_data","order":12,"path":"scripts/meta_data/meta_data.yy",},
{"name":"node_find_pixel","order":1,"path":"scripts/node_find_pixel/node_find_pixel.yy",}, {"name":"node_find_pixel","order":1,"path":"scripts/node_find_pixel/node_find_pixel.yy",},
{"name":"node_scatter_points","order":24,"path":"scripts/node_scatter_points/node_scatter_points.yy",}, {"name":"node_scatter_points","order":24,"path":"scripts/node_scatter_points/node_scatter_points.yy",},
{"name":"pack_bottom_left","order":2,"path":"scripts/pack_bottom_left/pack_bottom_left.yy",},
{"name":"o_dialog_lua_reference","order":5,"path":"objects/o_dialog_lua_reference/o_dialog_lua_reference.yy",}, {"name":"o_dialog_lua_reference","order":5,"path":"objects/o_dialog_lua_reference/o_dialog_lua_reference.yy",},
{"name":"node_surface_data","order":4,"path":"scripts/node_surface_data/node_surface_data.yy",}, {"name":"node_surface_data","order":4,"path":"scripts/node_surface_data/node_surface_data.yy",},
{"name":"node_strand_gravity","order":4,"path":"scripts/node_strand_gravity/node_strand_gravity.yy",},
{"name":"load_palette","order":3,"path":"scripts/load_palette/load_palette.yy",}, {"name":"load_palette","order":3,"path":"scripts/load_palette/load_palette.yy",},
{"name":"sh_alpha_cutoff","order":21,"path":"shaders/sh_alpha_cutoff/sh_alpha_cutoff.yy",}, {"name":"sh_alpha_cutoff","order":21,"path":"shaders/sh_alpha_cutoff/sh_alpha_cutoff.yy",},
{"name":"luaHighlight","order":1,"path":"scripts/luaHighlight/luaHighlight.yy",}, {"name":"luaHighlight","order":1,"path":"scripts/luaHighlight/luaHighlight.yy",},
@ -479,7 +499,9 @@
{"name":"node_iterator_length","order":3,"path":"scripts/node_iterator_length/node_iterator_length.yy",}, {"name":"node_iterator_length","order":3,"path":"scripts/node_iterator_length/node_iterator_length.yy",},
{"name":"node_VFX_effect_attract","order":8,"path":"scripts/node_VFX_effect_attract/node_VFX_effect_attract.yy",}, {"name":"node_VFX_effect_attract","order":8,"path":"scripts/node_VFX_effect_attract/node_VFX_effect_attract.yy",},
{"name":"s_node_text_splice","order":6,"path":"sprites/s_node_text_splice/s_node_text_splice.yy",}, {"name":"s_node_text_splice","order":6,"path":"sprites/s_node_text_splice/s_node_text_splice.yy",},
{"name":"__atlas","order":6,"path":"scripts/__atlas/__atlas.yy",},
{"name":"node_3d_object_transform","order":11,"path":"scripts/node_3d_object_transform/node_3d_object_transform.yy",}, {"name":"node_3d_object_transform","order":11,"path":"scripts/node_3d_object_transform/node_3d_object_transform.yy",},
{"name":"sh_draw_single_channel","order":3,"path":"shaders/sh_draw_single_channel/sh_draw_single_channel.yy",},
{"name":"draw_sprite_ext_override","order":9,"path":"scripts/draw_sprite_ext_override/draw_sprite_ext_override.yy",}, {"name":"draw_sprite_ext_override","order":9,"path":"scripts/draw_sprite_ext_override/draw_sprite_ext_override.yy",},
{"name":"node_array_add","order":9,"path":"scripts/node_array_add/node_array_add.yy",}, {"name":"node_array_add","order":9,"path":"scripts/node_array_add/node_array_add.yy",},
{"name":"s_node_array_set","order":9,"path":"sprites/s_node_array_set/s_node_array_set.yy",}, {"name":"s_node_array_set","order":9,"path":"sprites/s_node_array_set/s_node_array_set.yy",},
@ -487,6 +509,7 @@
{"name":"__background_get_internal","order":2,"path":"scripts/__background_get_internal/__background_get_internal.yy",}, {"name":"__background_get_internal","order":2,"path":"scripts/__background_get_internal/__background_get_internal.yy",},
{"name":"sh_combine_hsv","order":41,"path":"shaders/sh_combine_hsv/sh_combine_hsv.yy",}, {"name":"sh_combine_hsv","order":41,"path":"shaders/sh_combine_hsv/sh_combine_hsv.yy",},
{"name":"s_node_array_insert","order":4,"path":"sprites/s_node_array_insert/s_node_array_insert.yy",}, {"name":"s_node_array_insert","order":4,"path":"sprites/s_node_array_insert/s_node_array_insert.yy",},
{"name":"nodeValue_drawer","order":1,"path":"scripts/nodeValue_drawer/nodeValue_drawer.yy",},
{"name":"node_noise","order":17,"path":"scripts/node_noise/node_noise.yy",}, {"name":"node_noise","order":17,"path":"scripts/node_noise/node_noise.yy",},
{"name":"mtl_reader","order":6,"path":"scripts/mtl_reader/mtl_reader.yy",}, {"name":"mtl_reader","order":6,"path":"scripts/mtl_reader/mtl_reader.yy",},
{"name":"s_node_3d_array","order":7,"path":"sprites/s_node_3d_array/s_node_3d_array.yy",}, {"name":"s_node_3d_array","order":7,"path":"sprites/s_node_3d_array/s_node_3d_array.yy",},
@ -495,12 +518,13 @@
{"name":"ds_priority","order":3,"path":"scripts/ds_priority/ds_priority.yy",}, {"name":"ds_priority","order":3,"path":"scripts/ds_priority/ds_priority.yy",},
{"name":"node_palette","order":4,"path":"scripts/node_palette/node_palette.yy",}, {"name":"node_palette","order":4,"path":"scripts/node_palette/node_palette.yy",},
{"name":"buttonColor","order":3,"path":"scripts/buttonColor/buttonColor.yy",}, {"name":"buttonColor","order":3,"path":"scripts/buttonColor/buttonColor.yy",},
{"name":"notification_system","order":6,"path":"scripts/notification_system/notification_system.yy",}, {"name":"notification_system","order":7,"path":"scripts/notification_system/notification_system.yy",},
{"name":"node_color_from_hsv","order":8,"path":"scripts/node_color_from_hsv/node_color_from_hsv.yy",}, {"name":"node_color_from_hsv","order":8,"path":"scripts/node_color_from_hsv/node_color_from_hsv.yy",},
{"name":"s_node_image_copy","order":6,"path":"sprites/s_node_image_copy/s_node_image_copy.yy",}, {"name":"s_node_image_copy","order":6,"path":"sprites/s_node_image_copy/s_node_image_copy.yy",},
{"name":"node_boolean","order":17,"path":"scripts/node_boolean/node_boolean.yy",}, {"name":"node_boolean","order":17,"path":"scripts/node_boolean/node_boolean.yy",},
{"name":"node_grid_tri","order":21,"path":"scripts/node_grid_tri/node_grid_tri.yy",}, {"name":"node_grid_tri","order":21,"path":"scripts/node_grid_tri/node_grid_tri.yy",},
{"name":"node_average","order":5,"path":"scripts/node_average/node_average.yy",}, {"name":"node_average","order":5,"path":"scripts/node_average/node_average.yy",},
{"name":"node_mesh_transform","order":2,"path":"scripts/node_mesh_transform/node_mesh_transform.yy",},
{"name":"node_fluid_turbulence","order":10,"path":"scripts/node_fluid_turbulence/node_fluid_turbulence.yy",}, {"name":"node_fluid_turbulence","order":10,"path":"scripts/node_fluid_turbulence/node_fluid_turbulence.yy",},
{"name":"sh_sdf","order":1,"path":"shaders/sh_sdf/sh_sdf.yy",}, {"name":"sh_sdf","order":1,"path":"shaders/sh_sdf/sh_sdf.yy",},
{"name":"slider","order":15,"path":"scripts/slider/slider.yy",}, {"name":"slider","order":15,"path":"scripts/slider/slider.yy",},
@ -518,6 +542,7 @@
{"name":"fd_rectangle_set_velocity_size","order":16,"path":"scripts/fd_rectangle_set_velocity_size/fd_rectangle_set_velocity_size.yy",}, {"name":"fd_rectangle_set_velocity_size","order":16,"path":"scripts/fd_rectangle_set_velocity_size/fd_rectangle_set_velocity_size.yy",},
{"name":"node_image_gif","order":6,"path":"scripts/node_image_gif/node_image_gif.yy",}, {"name":"node_image_gif","order":6,"path":"scripts/node_image_gif/node_image_gif.yy",},
{"name":"node_iterator_each_output","order":2,"path":"scripts/node_iterator_each_output/node_iterator_each_output.yy",}, {"name":"node_iterator_each_output","order":2,"path":"scripts/node_iterator_each_output/node_iterator_each_output.yy",},
{"name":"s_node_strandSim_render_texture","order":5,"path":"sprites/s_node_strandSim_render_texture/s_node_strandSim_render_texture.yy",},
{"name":"sh_fd_advect_material_a_8_glsl","order":3,"path":"shaders/sh_fd_advect_material_a_8_glsl/sh_fd_advect_material_a_8_glsl.yy",}, {"name":"sh_fd_advect_material_a_8_glsl","order":3,"path":"shaders/sh_fd_advect_material_a_8_glsl/sh_fd_advect_material_a_8_glsl.yy",},
{"name":"node_color_remove","order":2,"path":"scripts/node_color_remove/node_color_remove.yy",}, {"name":"node_color_remove","order":2,"path":"scripts/node_color_remove/node_color_remove.yy",},
{"name":"spr_gameframe_pixel","order":3,"path":"sprites/spr_gameframe_pixel/spr_gameframe_pixel.yy",}, {"name":"spr_gameframe_pixel","order":3,"path":"sprites/spr_gameframe_pixel/spr_gameframe_pixel.yy",},
@ -545,6 +570,7 @@
{"name":"sh_channel_R_grey","order":7,"path":"shaders/sh_channel_R_grey/sh_channel_R_grey.yy",}, {"name":"sh_channel_R_grey","order":7,"path":"shaders/sh_channel_R_grey/sh_channel_R_grey.yy",},
{"name":"sh_blend_subtract","order":5,"path":"shaders/sh_blend_subtract/sh_blend_subtract.yy",}, {"name":"sh_blend_subtract","order":5,"path":"shaders/sh_blend_subtract/sh_blend_subtract.yy",},
{"name":"panel_animation","order":4,"path":"scripts/panel_animation/panel_animation.yy",}, {"name":"panel_animation","order":4,"path":"scripts/panel_animation/panel_animation.yy",},
{"name":"node_strand_create","order":1,"path":"scripts/node_strand_create/node_strand_create.yy",},
{"name":"sh_gradient","order":17,"path":"shaders/sh_gradient/sh_gradient.yy",}, {"name":"sh_gradient","order":17,"path":"shaders/sh_gradient/sh_gradient.yy",},
{"name":"node_json_file_read","order":8,"path":"scripts/node_json_file_read/node_json_file_read.yy",}, {"name":"node_json_file_read","order":8,"path":"scripts/node_json_file_read/node_json_file_read.yy",},
{"name":"s_node_array_remove","order":7,"path":"sprites/s_node_array_remove/s_node_array_remove.yy",}, {"name":"s_node_array_remove","order":7,"path":"sprites/s_node_array_remove/s_node_array_remove.yy",},
@ -558,6 +584,7 @@
{"name":"s_node_mirror","order":3,"path":"sprites/s_node_mirror/s_node_mirror.yy",}, {"name":"s_node_mirror","order":3,"path":"sprites/s_node_mirror/s_node_mirror.yy",},
{"name":"s_node_blur_simple","order":41,"path":"sprites/s_node_blur_simple/s_node_blur_simple.yy",}, {"name":"s_node_blur_simple","order":41,"path":"sprites/s_node_blur_simple/s_node_blur_simple.yy",},
{"name":"node_VFX_spawner","order":1,"path":"scripts/node_VFX_spawner/node_VFX_spawner.yy",}, {"name":"node_VFX_spawner","order":1,"path":"scripts/node_VFX_spawner/node_VFX_spawner.yy",},
{"name":"_draw_defines","order":21,"path":"scripts/_draw_defines/_draw_defines.yy",},
{"name":"sh_color_replace","order":8,"path":"shaders/sh_color_replace/sh_color_replace.yy",}, {"name":"sh_color_replace","order":8,"path":"shaders/sh_color_replace/sh_color_replace.yy",},
{"name":"rotator","order":11,"path":"scripts/rotator/rotator.yy",}, {"name":"rotator","order":11,"path":"scripts/rotator/rotator.yy",},
{"name":"s_node_edge_detect","order":20,"path":"sprites/s_node_edge_detect/s_node_edge_detect.yy",}, {"name":"s_node_edge_detect","order":20,"path":"sprites/s_node_edge_detect/s_node_edge_detect.yy",},
@ -565,6 +592,7 @@
{"name":"fontScrollBox","order":26,"path":"scripts/fontScrollBox/fontScrollBox.yy",}, {"name":"fontScrollBox","order":26,"path":"scripts/fontScrollBox/fontScrollBox.yy",},
{"name":"node_grid_hex","order":22,"path":"scripts/node_grid_hex/node_grid_hex.yy",}, {"name":"node_grid_hex","order":22,"path":"scripts/node_grid_hex/node_grid_hex.yy",},
{"name":"s_node_text_display","order":4,"path":"sprites/s_node_text_display/s_node_text_display.yy",}, {"name":"s_node_text_display","order":4,"path":"sprites/s_node_text_display/s_node_text_display.yy",},
{"name":"node_strand_render_texture","order":7,"path":"scripts/node_strand_render_texture/node_strand_render_texture.yy",},
{"name":"luaRenderer","order":2,"path":"scripts/luaRenderer/luaRenderer.yy",}, {"name":"luaRenderer","order":2,"path":"scripts/luaRenderer/luaRenderer.yy",},
{"name":"node_blur_zoom","order":3,"path":"scripts/node_blur_zoom/node_blur_zoom.yy",}, {"name":"node_blur_zoom","order":3,"path":"scripts/node_blur_zoom/node_blur_zoom.yy",},
{"name":"node_bloom","order":3,"path":"scripts/node_bloom/node_bloom.yy",}, {"name":"node_bloom","order":3,"path":"scripts/node_bloom/node_bloom.yy",},
@ -572,6 +600,7 @@
{"name":"sh_blend_overlay","order":15,"path":"shaders/sh_blend_overlay/sh_blend_overlay.yy",}, {"name":"sh_blend_overlay","order":15,"path":"shaders/sh_blend_overlay/sh_blend_overlay.yy",},
{"name":"node_sprite_stack","order":4,"path":"scripts/node_sprite_stack/node_sprite_stack.yy",}, {"name":"node_sprite_stack","order":4,"path":"scripts/node_sprite_stack/node_sprite_stack.yy",},
{"name":"s_node_json_file_read","order":14,"path":"sprites/s_node_json_file_read/s_node_json_file_read.yy",}, {"name":"s_node_json_file_read","order":14,"path":"sprites/s_node_json_file_read/s_node_json_file_read.yy",},
{"name":"__strandSim","order":2,"path":"scripts/__strandSim/__strandSim.yy",},
{"name":"sh_shape","order":3,"path":"shaders/sh_shape/sh_shape.yy",}, {"name":"sh_shape","order":3,"path":"shaders/sh_shape/sh_shape.yy",},
{"name":"draw_line_width2","order":2,"path":"scripts/draw_line_width2/draw_line_width2.yy",}, {"name":"draw_line_width2","order":2,"path":"scripts/draw_line_width2/draw_line_width2.yy",},
{"name":"matrixGrid","order":23,"path":"scripts/matrixGrid/matrixGrid.yy",}, {"name":"matrixGrid","order":23,"path":"scripts/matrixGrid/matrixGrid.yy",},
@ -584,9 +613,11 @@
{"name":"node_noise_grid_hex","order":24,"path":"scripts/node_noise_grid_hex/node_noise_grid_hex.yy",}, {"name":"node_noise_grid_hex","order":24,"path":"scripts/node_noise_grid_hex/node_noise_grid_hex.yy",},
{"name":"node_lua_global","order":1,"path":"scripts/node_lua_global/node_lua_global.yy",}, {"name":"node_lua_global","order":1,"path":"scripts/node_lua_global/node_lua_global.yy",},
{"name":"o_dialog_preset","order":1,"path":"objects/o_dialog_preset/o_dialog_preset.yy",}, {"name":"o_dialog_preset","order":1,"path":"objects/o_dialog_preset/o_dialog_preset.yy",},
{"name":"s_node_mesh_transform","order":1,"path":"sprites/s_node_mesh_transform/s_node_mesh_transform.yy",},
{"name":"o_dialog_tunnels","order":6,"path":"objects/o_dialog_tunnels/o_dialog_tunnels.yy",}, {"name":"o_dialog_tunnels","order":6,"path":"objects/o_dialog_tunnels/o_dialog_tunnels.yy",},
{"name":"s_node_erode","order":21,"path":"sprites/s_node_erode/s_node_erode.yy",}, {"name":"s_node_erode","order":21,"path":"sprites/s_node_erode/s_node_erode.yy",},
{"name":"node_particle","order":14,"path":"scripts/node_particle/node_particle.yy",}, {"name":"node_particle","order":14,"path":"scripts/node_particle/node_particle.yy",},
{"name":"histogram_drawer","order":2,"path":"scripts/histogram_drawer/histogram_drawer.yy",},
{"name":"node_array_range","order":12,"path":"scripts/node_array_range/node_array_range.yy",}, {"name":"node_array_range","order":12,"path":"scripts/node_array_range/node_array_range.yy",},
{"name":"s_node_tunnel_in","order":21,"path":"sprites/s_node_tunnel_in/s_node_tunnel_in.yy",}, {"name":"s_node_tunnel_in","order":21,"path":"sprites/s_node_tunnel_in/s_node_tunnel_in.yy",},
{"name":"o_dialog_graph_grid","order":3,"path":"objects/o_dialog_graph_grid/o_dialog_graph_grid.yy",}, {"name":"o_dialog_graph_grid","order":3,"path":"objects/o_dialog_graph_grid/o_dialog_graph_grid.yy",},
@ -606,16 +637,19 @@
{"name":"point_rect_overlap","order":2,"path":"scripts/point_rect_overlap/point_rect_overlap.yy",}, {"name":"point_rect_overlap","order":2,"path":"scripts/point_rect_overlap/point_rect_overlap.yy",},
{"name":"s_node_bevel","order":4,"path":"sprites/s_node_bevel/s_node_bevel.yy",}, {"name":"s_node_bevel","order":4,"path":"sprites/s_node_bevel/s_node_bevel.yy",},
{"name":"color_selector","order":4,"path":"scripts/color_selector/color_selector.yy",}, {"name":"color_selector","order":4,"path":"scripts/color_selector/color_selector.yy",},
{"name":"s_node_strandSim_gravity","order":4,"path":"sprites/s_node_strandSim_gravity/s_node_strandSim_gravity.yy",},
{"name":"node_VFX_effect_turbulence","order":11,"path":"scripts/node_VFX_effect_turbulence/node_VFX_effect_turbulence.yy",}, {"name":"node_VFX_effect_turbulence","order":11,"path":"scripts/node_VFX_effect_turbulence/node_VFX_effect_turbulence.yy",},
{"name":"node_ase_file_read","order":14,"path":"scripts/node_ase_file_read/node_ase_file_read.yy",}, {"name":"node_ase_file_read","order":14,"path":"scripts/node_ase_file_read/node_ase_file_read.yy",},
{"name":"sh_seperate_shape_counter","order":1,"path":"shaders/sh_seperate_shape_counter/sh_seperate_shape_counter.yy",}, {"name":"sh_seperate_shape_counter","order":1,"path":"shaders/sh_seperate_shape_counter/sh_seperate_shape_counter.yy",},
{"name":"s_node_stack","order":35,"path":"sprites/s_node_stack/s_node_stack.yy",}, {"name":"s_node_stack","order":35,"path":"sprites/s_node_stack/s_node_stack.yy",},
{"name":"s_fade_up","order":3,"path":"sprites/s_fade_up/s_fade_up.yy",}, {"name":"s_fade_up","order":3,"path":"sprites/s_fade_up/s_fade_up.yy",},
{"name":"panel_globalvar","order":4,"path":"scripts/panel_globalvar/panel_globalvar.yy",},
{"name":"node_guide","order":18,"path":"scripts/node_guide/node_guide.yy",}, {"name":"node_guide","order":18,"path":"scripts/node_guide/node_guide.yy",},
{"name":"fd_rectangle_get_velocity_surface","order":24,"path":"scripts/fd_rectangle_get_velocity_surface/fd_rectangle_get_velocity_surface.yy",}, {"name":"fd_rectangle_get_velocity_surface","order":24,"path":"scripts/fd_rectangle_get_velocity_surface/fd_rectangle_get_velocity_surface.yy",},
{"name":"s_node_text_char_get","order":2,"path":"sprites/s_node_text_char_get/s_node_text_char_get.yy",}, {"name":"s_node_text_char_get","order":2,"path":"sprites/s_node_text_char_get/s_node_text_char_get.yy",},
{"name":"fd_rectangle_get_initial_value_pressure","order":7,"path":"scripts/fd_rectangle_get_initial_value_pressure/fd_rectangle_get_initial_value_pressure.yy",}, {"name":"fd_rectangle_get_initial_value_pressure","order":7,"path":"scripts/fd_rectangle_get_initial_value_pressure/fd_rectangle_get_initial_value_pressure.yy",},
{"name":"node_timeline_preview","order":2,"path":"scripts/node_timeline_preview/node_timeline_preview.yy",}, {"name":"node_timeline_preview","order":2,"path":"scripts/node_timeline_preview/node_timeline_preview.yy",},
{"name":"__polygon","order":2,"path":"scripts/__polygon/__polygon.yy",},
{"name":"o_dialog_fontscrollbox","order":4,"path":"objects/o_dialog_fontscrollbox/o_dialog_fontscrollbox.yy",}, {"name":"o_dialog_fontscrollbox","order":4,"path":"objects/o_dialog_fontscrollbox/o_dialog_fontscrollbox.yy",},
{"name":"s_node_vfx_output","order":11,"path":"sprites/s_node_vfx_output/s_node_vfx_output.yy",}, {"name":"s_node_vfx_output","order":11,"path":"sprites/s_node_vfx_output/s_node_vfx_output.yy",},
{"name":"sh_greyscale","order":10,"path":"shaders/sh_greyscale/sh_greyscale.yy",}, {"name":"sh_greyscale","order":10,"path":"shaders/sh_greyscale/sh_greyscale.yy",},
@ -623,7 +657,9 @@
{"name":"node_global","order":3,"path":"scripts/node_global/node_global.yy",}, {"name":"node_global","order":3,"path":"scripts/node_global/node_global.yy",},
{"name":"spr_gameframe_buttons","order":1,"path":"sprites/spr_gameframe_buttons/spr_gameframe_buttons.yy",}, {"name":"spr_gameframe_buttons","order":1,"path":"sprites/spr_gameframe_buttons/spr_gameframe_buttons.yy",},
{"name":"s_node_draw_stack","order":4,"path":"sprites/s_node_draw_stack/s_node_draw_stack.yy",}, {"name":"s_node_draw_stack","order":4,"path":"sprites/s_node_draw_stack/s_node_draw_stack.yy",},
{"name":"delaunay","order":1,"path":"scripts/delaunay/delaunay.yy",},
{"name":"sh_outline","order":18,"path":"shaders/sh_outline/sh_outline.yy",}, {"name":"sh_outline","order":18,"path":"shaders/sh_outline/sh_outline.yy",},
{"name":"s_node_strandSim_break","order":8,"path":"sprites/s_node_strandSim_break/s_node_strandSim_break.yy",},
{"name":"s_node_scatter_point","order":4,"path":"sprites/s_node_scatter_point/s_node_scatter_point.yy",}, {"name":"s_node_scatter_point","order":4,"path":"sprites/s_node_scatter_point/s_node_scatter_point.yy",},
{"name":"node_checkerboard","order":13,"path":"scripts/node_checkerboard/node_checkerboard.yy",}, {"name":"node_checkerboard","order":13,"path":"scripts/node_checkerboard/node_checkerboard.yy",},
{"name":"node_gradient_output","order":5,"path":"scripts/node_gradient_output/node_gradient_output.yy",}, {"name":"node_gradient_output","order":5,"path":"scripts/node_gradient_output/node_gradient_output.yy",},
@ -642,10 +678,10 @@
{"name":"node_sequence_to_anim","order":3,"path":"scripts/node_sequence_to_anim/node_sequence_to_anim.yy",}, {"name":"node_sequence_to_anim","order":3,"path":"scripts/node_sequence_to_anim/node_sequence_to_anim.yy",},
{"name":"sh_blend_replace","order":50,"path":"shaders/sh_blend_replace/sh_blend_replace.yy",}, {"name":"sh_blend_replace","order":50,"path":"shaders/sh_blend_replace/sh_blend_replace.yy",},
{"name":"node_rigid_render","order":3,"path":"scripts/node_rigid_render/node_rigid_render.yy",}, {"name":"node_rigid_render","order":3,"path":"scripts/node_rigid_render/node_rigid_render.yy",},
{"name":"node_image_sheet","order":4,"path":"scripts/node_image_sheet/node_image_sheet.yy",}, {"name":"node_image_splice_sheet","order":4,"path":"scripts/node_image_splice_sheet/node_image_splice_sheet.yy",},
{"name":"sh_posterize_palette","order":12,"path":"shaders/sh_posterize_palette/sh_posterize_palette.yy",}, {"name":"sh_posterize_palette","order":12,"path":"shaders/sh_posterize_palette/sh_posterize_palette.yy",},
{"name":"fd_rectangle_set_material_maccormack_weight","order":6,"path":"scripts/fd_rectangle_set_material_maccormack_weight/fd_rectangle_set_material_maccormack_weight.yy",}, {"name":"fd_rectangle_set_material_maccormack_weight","order":6,"path":"scripts/fd_rectangle_set_material_maccormack_weight/fd_rectangle_set_material_maccormack_weight.yy",},
{"name":"collection_data","order":8,"path":"scripts/collection_data/collection_data.yy",}, {"name":"collection_data","order":9,"path":"scripts/collection_data/collection_data.yy",},
{"name":"s_node_flood_fill","order":24,"path":"sprites/s_node_flood_fill/s_node_flood_fill.yy",}, {"name":"s_node_flood_fill","order":24,"path":"sprites/s_node_flood_fill/s_node_flood_fill.yy",},
{"name":"node_rigid_force_apply","order":4,"path":"scripts/node_rigid_force_apply/node_rigid_force_apply.yy",}, {"name":"node_rigid_force_apply","order":4,"path":"scripts/node_rigid_force_apply/node_rigid_force_apply.yy",},
{"name":"s_node_rigid_variable","order":8,"path":"sprites/s_node_rigid_variable/s_node_rigid_variable.yy",}, {"name":"s_node_rigid_variable","order":8,"path":"sprites/s_node_rigid_variable/s_node_rigid_variable.yy",},
@ -654,6 +690,7 @@
{"name":"s_node_array_get","order":3,"path":"sprites/s_node_array_get/s_node_array_get.yy",}, {"name":"s_node_array_get","order":3,"path":"sprites/s_node_array_get/s_node_array_get.yy",},
{"name":"o_dialog_load","order":12,"path":"objects/o_dialog_load/o_dialog_load.yy",}, {"name":"o_dialog_load","order":12,"path":"objects/o_dialog_load/o_dialog_load.yy",},
{"name":"s_node_BW","order":11,"path":"sprites/s_node_BW/s_node_BW.yy",}, {"name":"s_node_BW","order":11,"path":"sprites/s_node_BW/s_node_BW.yy",},
{"name":"s_node_strandSim_collide","order":7,"path":"sprites/s_node_strandSim_collide/s_node_strandSim_collide.yy",},
{"name":"sh_fd_turbulence","order":22,"path":"shaders/sh_fd_turbulence/sh_fd_turbulence.yy",}, {"name":"sh_fd_turbulence","order":22,"path":"shaders/sh_fd_turbulence/sh_fd_turbulence.yy",},
{"name":"s_node_compare","order":1,"path":"sprites/s_node_compare/s_node_compare.yy",}, {"name":"s_node_compare","order":1,"path":"sprites/s_node_compare/s_node_compare.yy",},
{"name":"s_node_fluidSim_domain_queue","order":9,"path":"sprites/s_node_fluidSim_domain_queue/s_node_fluidSim_domain_queue.yy",}, {"name":"s_node_fluidSim_domain_queue","order":9,"path":"sprites/s_node_fluidSim_domain_queue/s_node_fluidSim_domain_queue.yy",},
@ -661,6 +698,7 @@
{"name":"s_node_vfx_spawn","order":2,"path":"sprites/s_node_vfx_spawn/s_node_vfx_spawn.yy",}, {"name":"s_node_vfx_spawn","order":2,"path":"sprites/s_node_vfx_spawn/s_node_vfx_spawn.yy",},
{"name":"texture_set_repeat","order":1,"path":"scripts/texture_set_repeat/texture_set_repeat.yy",}, {"name":"texture_set_repeat","order":1,"path":"scripts/texture_set_repeat/texture_set_repeat.yy",},
{"name":"fd_rectangle_update_velocity","order":22,"path":"scripts/fd_rectangle_update_velocity/fd_rectangle_update_velocity.yy",}, {"name":"fd_rectangle_update_velocity","order":22,"path":"scripts/fd_rectangle_update_velocity/fd_rectangle_update_velocity.yy",},
{"name":"__bbox","order":5,"path":"scripts/__bbox/__bbox.yy",},
{"name":"node_shadow","order":14,"path":"scripts/node_shadow/node_shadow.yy",}, {"name":"node_shadow","order":14,"path":"scripts/node_shadow/node_shadow.yy",},
{"name":"s_node_color_data","order":3,"path":"sprites/s_node_color_data/s_node_color_data.yy",}, {"name":"s_node_color_data","order":3,"path":"sprites/s_node_color_data/s_node_color_data.yy",},
{"name":"fd_rectangle_set_repeat","order":12,"path":"scripts/fd_rectangle_set_repeat/fd_rectangle_set_repeat.yy",}, {"name":"fd_rectangle_set_repeat","order":12,"path":"scripts/fd_rectangle_set_repeat/fd_rectangle_set_repeat.yy",},
@ -683,6 +721,7 @@
{"name":"string_hexadecimal","order":1,"path":"scripts/string_hexadecimal/string_hexadecimal.yy",}, {"name":"string_hexadecimal","order":1,"path":"scripts/string_hexadecimal/string_hexadecimal.yy",},
{"name":"s_node_camera","order":3,"path":"sprites/s_node_camera/s_node_camera.yy",}, {"name":"s_node_camera","order":3,"path":"sprites/s_node_camera/s_node_camera.yy",},
{"name":"sh_find_boundary","order":48,"path":"shaders/sh_find_boundary/sh_find_boundary.yy",}, {"name":"sh_find_boundary","order":48,"path":"shaders/sh_find_boundary/sh_find_boundary.yy",},
{"name":"_node_strand_affector","order":10,"path":"scripts/_node_strand_affector/_node_strand_affector.yy",},
{"name":"sh_vertex_pnt_light","order":4,"path":"shaders/sh_vertex_pnt_light/sh_vertex_pnt_light.yy",}, {"name":"sh_vertex_pnt_light","order":4,"path":"shaders/sh_vertex_pnt_light/sh_vertex_pnt_light.yy",},
{"name":"surfaceBox","order":22,"path":"scripts/surfaceBox/surfaceBox.yy",}, {"name":"surfaceBox","order":22,"path":"scripts/surfaceBox/surfaceBox.yy",},
{"name":"node_gradient_palette","order":11,"path":"scripts/node_gradient_palette/node_gradient_palette.yy",}, {"name":"node_gradient_palette","order":11,"path":"scripts/node_gradient_palette/node_gradient_palette.yy",},
@ -692,9 +731,11 @@
{"name":"s_node_array_length","order":5,"path":"sprites/s_node_array_length/s_node_array_length.yy",}, {"name":"s_node_array_length","order":5,"path":"sprites/s_node_array_length/s_node_array_length.yy",},
{"name":"string_splice","order":5,"path":"scripts/string_splice/string_splice.yy",}, {"name":"string_splice","order":5,"path":"scripts/string_splice/string_splice.yy",},
{"name":"s_node_vfx_input","order":12,"path":"sprites/s_node_vfx_input/s_node_vfx_input.yy",}, {"name":"s_node_vfx_input","order":12,"path":"sprites/s_node_vfx_input/s_node_vfx_input.yy",},
{"name":"node_strand_force_apply","order":6,"path":"scripts/node_strand_force_apply/node_strand_force_apply.yy",},
{"name":"sh_seperate_shape_ite","order":2,"path":"shaders/sh_seperate_shape_ite/sh_seperate_shape_ite.yy",}, {"name":"sh_seperate_shape_ite","order":2,"path":"shaders/sh_seperate_shape_ite/sh_seperate_shape_ite.yy",},
{"name":"o_main","order":1,"path":"objects/o_main/o_main.yy",}, {"name":"o_main","order":1,"path":"objects/o_main/o_main.yy",},
{"name":"area_function","order":2,"path":"scripts/area_function/area_function.yy",}, {"name":"area_function","order":2,"path":"scripts/area_function/area_function.yy",},
{"name":"node_mesh_to_path","order":3,"path":"scripts/node_mesh_to_path/node_mesh_to_path.yy",},
{"name":"sh_convolution","order":44,"path":"shaders/sh_convolution/sh_convolution.yy",}, {"name":"sh_convolution","order":44,"path":"shaders/sh_convolution/sh_convolution.yy",},
{"name":"s_node_array_shift","order":12,"path":"sprites/s_node_array_shift/s_node_array_shift.yy",}, {"name":"s_node_array_shift","order":12,"path":"sprites/s_node_array_shift/s_node_array_shift.yy",},
{"name":"s_node_statistic","order":5,"path":"sprites/s_node_statistic/s_node_statistic.yy",}, {"name":"s_node_statistic","order":5,"path":"sprites/s_node_statistic/s_node_statistic.yy",},
@ -741,6 +782,7 @@
{"name":"fd_rectangle_get_velocity_width","order":26,"path":"scripts/fd_rectangle_get_velocity_width/fd_rectangle_get_velocity_width.yy",}, {"name":"fd_rectangle_get_velocity_width","order":26,"path":"scripts/fd_rectangle_get_velocity_width/fd_rectangle_get_velocity_width.yy",},
{"name":"node_convolution","order":5,"path":"scripts/node_convolution/node_convolution.yy",}, {"name":"node_convolution","order":5,"path":"scripts/node_convolution/node_convolution.yy",},
{"name":"sh_outline_only","order":35,"path":"shaders/sh_outline_only/sh_outline_only.yy",}, {"name":"sh_outline_only","order":35,"path":"shaders/sh_outline_only/sh_outline_only.yy",},
{"name":"lcd_function","order":13,"path":"scripts/lcd_function/lcd_function.yy",},
{"name":"s_node_destray","order":16,"path":"sprites/s_node_destray/s_node_destray.yy",}, {"name":"s_node_destray","order":16,"path":"sprites/s_node_destray/s_node_destray.yy",},
{"name":"node_color_sampler","order":3,"path":"scripts/node_color_sampler/node_color_sampler.yy",}, {"name":"node_color_sampler","order":3,"path":"scripts/node_color_sampler/node_color_sampler.yy",},
{"name":"s_node_fluidSim_update","order":5,"path":"sprites/s_node_fluidSim_update/s_node_fluidSim_update.yy",}, {"name":"s_node_fluidSim_update","order":5,"path":"sprites/s_node_fluidSim_update/s_node_fluidSim_update.yy",},
@ -756,7 +798,7 @@
{"name":"sh_content_sampler","order":34,"path":"shaders/sh_content_sampler/sh_content_sampler.yy",}, {"name":"sh_content_sampler","order":34,"path":"shaders/sh_content_sampler/sh_content_sampler.yy",},
{"name":"fd_rectangle_get_repeat","order":19,"path":"scripts/fd_rectangle_get_repeat/fd_rectangle_get_repeat.yy",}, {"name":"fd_rectangle_get_repeat","order":19,"path":"scripts/fd_rectangle_get_repeat/fd_rectangle_get_repeat.yy",},
{"name":"s_menu_white","order":1,"path":"sprites/s_menu_white/s_menu_white.yy",}, {"name":"s_menu_white","order":1,"path":"sprites/s_menu_white/s_menu_white.yy",},
{"name":"color_loader","order":1,"path":"scripts/color_loader/color_loader.yy",}, {"name":"color_loader","order":13,"path":"scripts/color_loader/color_loader.yy",},
{"name":"node_rigid_override","order":9,"path":"scripts/node_rigid_override/node_rigid_override.yy",}, {"name":"node_rigid_override","order":9,"path":"scripts/node_rigid_override/node_rigid_override.yy",},
{"name":"fd_rectangle_set_velocity_maccormack_weight","order":15,"path":"scripts/fd_rectangle_set_velocity_maccormack_weight/fd_rectangle_set_velocity_maccormack_weight.yy",}, {"name":"fd_rectangle_set_velocity_maccormack_weight","order":15,"path":"scripts/fd_rectangle_set_velocity_maccormack_weight/fd_rectangle_set_velocity_maccormack_weight.yy",},
{"name":"s_node_array_sort","order":11,"path":"sprites/s_node_array_sort/s_node_array_sort.yy",}, {"name":"s_node_array_sort","order":11,"path":"sprites/s_node_array_sort/s_node_array_sort.yy",},
@ -764,7 +806,7 @@
{"name":"json_prettify","order":7,"path":"scripts/json_prettify/json_prettify.yy",}, {"name":"json_prettify","order":7,"path":"scripts/json_prettify/json_prettify.yy",},
{"name":"s_node_loop_output","order":13,"path":"sprites/s_node_loop_output/s_node_loop_output.yy",}, {"name":"s_node_loop_output","order":13,"path":"sprites/s_node_loop_output/s_node_loop_output.yy",},
{"name":"panel_notification","order":9,"path":"scripts/panel_notification/panel_notification.yy",}, {"name":"panel_notification","order":9,"path":"scripts/panel_notification/panel_notification.yy",},
{"name":"render_data","order":2,"path":"scripts/render_data/render_data.yy",}, {"name":"render_data","order":3,"path":"scripts/render_data/render_data.yy",},
{"name":"o_dialog_graph_view","order":4,"path":"objects/o_dialog_graph_view/o_dialog_graph_view.yy",}, {"name":"o_dialog_graph_view","order":4,"path":"objects/o_dialog_graph_view/o_dialog_graph_view.yy",},
{"name":"fd_rectangle_get_velocity_height","order":22,"path":"scripts/fd_rectangle_get_velocity_height/fd_rectangle_get_velocity_height.yy",}, {"name":"fd_rectangle_get_velocity_height","order":22,"path":"scripts/fd_rectangle_get_velocity_height/fd_rectangle_get_velocity_height.yy",},
{"name":"s_node_blur_directional","order":9,"path":"sprites/s_node_blur_directional/s_node_blur_directional.yy",}, {"name":"s_node_blur_directional","order":9,"path":"sprites/s_node_blur_directional/s_node_blur_directional.yy",},
@ -777,9 +819,11 @@
{"name":"s_node_sampler","order":11,"path":"sprites/s_node_sampler/s_node_sampler.yy",}, {"name":"s_node_sampler","order":11,"path":"sprites/s_node_sampler/s_node_sampler.yy",},
{"name":"__background_get_element","order":1,"path":"scripts/__background_get_element/__background_get_element.yy",}, {"name":"__background_get_element","order":1,"path":"scripts/__background_get_element/__background_get_element.yy",},
{"name":"window_functions","order":27,"path":"scripts/window_functions/window_functions.yy",}, {"name":"window_functions","order":27,"path":"scripts/window_functions/window_functions.yy",},
{"name":"node_mesh_create_path","order":1,"path":"scripts/node_mesh_create_path/node_mesh_create_path.yy",},
{"name":"sh_fd_calculate_pressure_srj_glsl","order":9,"path":"shaders/sh_fd_calculate_pressure_srj_glsl/sh_fd_calculate_pressure_srj_glsl.yy",}, {"name":"sh_fd_calculate_pressure_srj_glsl","order":9,"path":"shaders/sh_fd_calculate_pressure_srj_glsl/sh_fd_calculate_pressure_srj_glsl.yy",},
{"name":"curve_bounce_function","order":1,"path":"scripts/curve_bounce_function/curve_bounce_function.yy",}, {"name":"curve_bounce_function","order":1,"path":"scripts/curve_bounce_function/curve_bounce_function.yy",},
{"name":"fd_rectangle_replace_material_surface","order":23,"path":"scripts/fd_rectangle_replace_material_surface/fd_rectangle_replace_material_surface.yy",}, {"name":"fd_rectangle_replace_material_surface","order":23,"path":"scripts/fd_rectangle_replace_material_surface/fd_rectangle_replace_material_surface.yy",},
{"name":"pack_skyline","order":4,"path":"scripts/pack_skyline/pack_skyline.yy",},
{"name":"fd_x","order":4,"path":"scripts/fd_x/fd_x.yy",}, {"name":"fd_x","order":4,"path":"scripts/fd_x/fd_x.yy",},
{"name":"s_node_number","order":2,"path":"sprites/s_node_number/s_node_number.yy",}, {"name":"s_node_number","order":2,"path":"sprites/s_node_number/s_node_number.yy",},
{"name":"gif_reader","order":4,"path":"scripts/gif_reader/gif_reader.yy",}, {"name":"gif_reader","order":4,"path":"scripts/gif_reader/gif_reader.yy",},
@ -858,6 +902,8 @@
{"name":"s_texture_default","order":1,"path":"sprites/s_texture_default/s_texture_default.yy",}, {"name":"s_texture_default","order":1,"path":"sprites/s_texture_default/s_texture_default.yy",},
{"name":"directory_object","order":3,"path":"scripts/directory_object/directory_object.yy",}, {"name":"directory_object","order":3,"path":"scripts/directory_object/directory_object.yy",},
{"name":"fd_rectangle_get_acceleration_b","order":1,"path":"scripts/fd_rectangle_get_acceleration_b/fd_rectangle_get_acceleration_b.yy",}, {"name":"fd_rectangle_get_acceleration_b","order":1,"path":"scripts/fd_rectangle_get_acceleration_b/fd_rectangle_get_acceleration_b.yy",},
{"name":"surface_draw_functions","order":7,"path":"scripts/surface_draw_functions/surface_draw_functions.yy",},
{"name":"pack_shelf","order":1,"path":"scripts/pack_shelf/pack_shelf.yy",},
{"name":"s_node_path_trim","order":6,"path":"sprites/s_node_path_trim/s_node_path_trim.yy",}, {"name":"s_node_path_trim","order":6,"path":"sprites/s_node_path_trim/s_node_path_trim.yy",},
{"name":"libfilesystem","order":10,"path":"extensions/libfilesystem/libfilesystem.yy",}, {"name":"libfilesystem","order":10,"path":"extensions/libfilesystem/libfilesystem.yy",},
{"name":"node_channels_hsv","order":1,"path":"scripts/node_channels_hsv/node_channels_hsv.yy",}, {"name":"node_channels_hsv","order":1,"path":"scripts/node_channels_hsv/node_channels_hsv.yy",},
@ -869,6 +915,7 @@
{"name":"s_node_fluidSim_add_collider","order":1,"path":"sprites/s_node_fluidSim_add_collider/s_node_fluidSim_add_collider.yy",}, {"name":"s_node_fluidSim_add_collider","order":1,"path":"sprites/s_node_fluidSim_add_collider/s_node_fluidSim_add_collider.yy",},
{"name":"node_3d_plane","order":2,"path":"scripts/node_3d_plane/node_3d_plane.yy",}, {"name":"node_3d_plane","order":2,"path":"scripts/node_3d_plane/node_3d_plane.yy",},
{"name":"node_display_text","order":3,"path":"scripts/node_display_text/node_display_text.yy",}, {"name":"node_display_text","order":3,"path":"scripts/node_display_text/node_display_text.yy",},
{"name":"node_strand_update","order":3,"path":"scripts/node_strand_update/node_strand_update.yy",},
{"name":"sh_grid_noise","order":8,"path":"shaders/sh_grid_noise/sh_grid_noise.yy",}, {"name":"sh_grid_noise","order":8,"path":"shaders/sh_grid_noise/sh_grid_noise.yy",},
{"name":"draw_set_blend_mode","order":1,"path":"scripts/draw_set_blend_mode/draw_set_blend_mode.yy",}, {"name":"draw_set_blend_mode","order":1,"path":"scripts/draw_set_blend_mode/draw_set_blend_mode.yy",},
{"name":"gameframe_macros","order":1,"path":"scripts/gameframe_macros/gameframe_macros.yy",}, {"name":"gameframe_macros","order":1,"path":"scripts/gameframe_macros/gameframe_macros.yy",},
@ -905,6 +952,7 @@
{"name":"s_node_palette_sort","order":14,"path":"sprites/s_node_palette_sort/s_node_palette_sort.yy",}, {"name":"s_node_palette_sort","order":14,"path":"sprites/s_node_palette_sort/s_node_palette_sort.yy",},
{"name":"node_greyscale","order":5,"path":"scripts/node_greyscale/node_greyscale.yy",}, {"name":"node_greyscale","order":5,"path":"scripts/node_greyscale/node_greyscale.yy",},
{"name":"node_color_adjustment","order":1,"path":"scripts/node_color_adjustment/node_color_adjustment.yy",}, {"name":"node_color_adjustment","order":1,"path":"scripts/node_color_adjustment/node_color_adjustment.yy",},
{"name":"s_node_strandSim_force","order":6,"path":"sprites/s_node_strandSim_force/s_node_strandSim_force.yy",},
{"name":"s_node_array_reverse","order":8,"path":"sprites/s_node_array_reverse/s_node_array_reverse.yy",}, {"name":"s_node_array_reverse","order":8,"path":"sprites/s_node_array_reverse/s_node_array_reverse.yy",},
{"name":"sh_ani_noise","order":4,"path":"shaders/sh_ani_noise/sh_ani_noise.yy",}, {"name":"sh_ani_noise","order":4,"path":"shaders/sh_ani_noise/sh_ani_noise.yy",},
{"name":"sh_level","order":11,"path":"shaders/sh_level/sh_level.yy",}, {"name":"sh_level","order":11,"path":"shaders/sh_level/sh_level.yy",},
@ -931,6 +979,7 @@
{"name":"_node_VFX_spawner","order":13,"path":"scripts/_node_VFX_spawner/_node_VFX_spawner.yy",}, {"name":"_node_VFX_spawner","order":13,"path":"scripts/_node_VFX_spawner/_node_VFX_spawner.yy",},
{"name":"sh_channel_B_grey","order":9,"path":"shaders/sh_channel_B_grey/sh_channel_B_grey.yy",}, {"name":"sh_channel_B_grey","order":9,"path":"shaders/sh_channel_B_grey/sh_channel_B_grey.yy",},
{"name":"draw_UI_scale","order":8,"path":"scripts/draw_UI_scale/draw_UI_scale.yy",}, {"name":"draw_UI_scale","order":8,"path":"scripts/draw_UI_scale/draw_UI_scale.yy",},
{"name":"s_node_strandSim_update","order":1,"path":"sprites/s_node_strandSim_update/s_node_strandSim_update.yy",},
{"name":"s_node_RGB_combine","order":43,"path":"sprites/s_node_RGB_combine/s_node_RGB_combine.yy",}, {"name":"s_node_RGB_combine","order":43,"path":"sprites/s_node_RGB_combine/s_node_RGB_combine.yy",},
{"name":"s_node_shadow_cast","order":47,"path":"sprites/s_node_shadow_cast/s_node_shadow_cast.yy",}, {"name":"s_node_shadow_cast","order":47,"path":"sprites/s_node_shadow_cast/s_node_shadow_cast.yy",},
{"name":"path_function","order":4,"path":"scripts/path_function/path_function.yy",}, {"name":"path_function","order":4,"path":"scripts/path_function/path_function.yy",},
@ -965,11 +1014,13 @@
{"name":"node_VFX_effector","order":6,"path":"scripts/node_VFX_effector/node_VFX_effector.yy",}, {"name":"node_VFX_effector","order":6,"path":"scripts/node_VFX_effector/node_VFX_effector.yy",},
{"name":"node_path_shift","order":5,"path":"scripts/node_path_shift/node_path_shift.yy",}, {"name":"node_path_shift","order":5,"path":"scripts/node_path_shift/node_path_shift.yy",},
{"name":"s_node_3d_cylinder","order":1,"path":"sprites/s_node_3d_cylinder/s_node_3d_cylinder.yy",}, {"name":"s_node_3d_cylinder","order":1,"path":"sprites/s_node_3d_cylinder/s_node_3d_cylinder.yy",},
{"name":"node_strand_break","order":9,"path":"scripts/node_strand_break/node_strand_break.yy",},
{"name":"s_node_vec_split","order":6,"path":"sprites/s_node_vec_split/s_node_vec_split.yy",}, {"name":"s_node_vec_split","order":6,"path":"sprites/s_node_vec_split/s_node_vec_split.yy",},
{"name":"paddingBox","order":9,"path":"scripts/paddingBox/paddingBox.yy",}, {"name":"paddingBox","order":9,"path":"scripts/paddingBox/paddingBox.yy",},
{"name":"fd_rectangle_set_visualization_shader","order":18,"path":"scripts/fd_rectangle_set_visualization_shader/fd_rectangle_set_visualization_shader.yy",}, {"name":"fd_rectangle_set_visualization_shader","order":18,"path":"scripts/fd_rectangle_set_visualization_shader/fd_rectangle_set_visualization_shader.yy",},
{"name":"s_node_ase_layer","order":17,"path":"sprites/s_node_ase_layer/s_node_ase_layer.yy",}, {"name":"s_node_ase_layer","order":17,"path":"sprites/s_node_ase_layer/s_node_ase_layer.yy",},
{"name":"_f_p1","order":1,"path":"fonts/_f_p1/_f_p1.yy",}, {"name":"_f_p1","order":1,"path":"fonts/_f_p1/_f_p1.yy",},
{"name":"tuple_functions","order":5,"path":"scripts/tuple_functions/tuple_functions.yy",},
{"name":"sh_blur_simple","order":6,"path":"shaders/sh_blur_simple/sh_blur_simple.yy",}, {"name":"sh_blur_simple","order":6,"path":"shaders/sh_blur_simple/sh_blur_simple.yy",},
{"name":"sh_blend_difference","order":51,"path":"shaders/sh_blend_difference/sh_blend_difference.yy",}, {"name":"sh_blend_difference","order":51,"path":"shaders/sh_blend_difference/sh_blend_difference.yy",},
{"name":"s_node_image_animation","order":5,"path":"sprites/s_node_image_animation/s_node_image_animation.yy",}, {"name":"s_node_image_animation","order":5,"path":"sprites/s_node_image_animation/s_node_image_animation.yy",},
@ -999,7 +1050,7 @@
{"name":"s_node_image","order":4,"path":"sprites/s_node_image/s_node_image.yy",}, {"name":"s_node_image","order":4,"path":"sprites/s_node_image/s_node_image.yy",},
{"name":"__node_value_processor","order":7,"path":"scripts/__node_value_processor/__node_value_processor.yy",}, {"name":"__node_value_processor","order":7,"path":"scripts/__node_value_processor/__node_value_processor.yy",},
{"name":"s_node_group_input","order":16,"path":"sprites/s_node_group_input/s_node_group_input.yy",}, {"name":"s_node_group_input","order":16,"path":"sprites/s_node_group_input/s_node_group_input.yy",},
{"name":"sample_projects","order":5,"path":"scripts/sample_projects/sample_projects.yy",}, {"name":"sample_projects","order":6,"path":"scripts/sample_projects/sample_projects.yy",},
{"name":"load_function","order":2,"path":"scripts/load_function/load_function.yy",}, {"name":"load_function","order":2,"path":"scripts/load_function/load_function.yy",},
{"name":"draw_fit","order":12,"path":"scripts/draw_fit/draw_fit.yy",}, {"name":"draw_fit","order":12,"path":"scripts/draw_fit/draw_fit.yy",},
{"name":"fd_rectangle_get_velocity_dissipation_type","order":20,"path":"scripts/fd_rectangle_get_velocity_dissipation_type/fd_rectangle_get_velocity_dissipation_type.yy",}, {"name":"fd_rectangle_get_velocity_dissipation_type","order":20,"path":"scripts/fd_rectangle_get_velocity_dissipation_type/fd_rectangle_get_velocity_dissipation_type.yy",},
@ -1023,25 +1074,28 @@
{"name":"o_dialog_graph_connection","order":5,"path":"objects/o_dialog_graph_connection/o_dialog_graph_connection.yy",}, {"name":"o_dialog_graph_connection","order":5,"path":"objects/o_dialog_graph_connection/o_dialog_graph_connection.yy",},
{"name":"sh_fd_advect_velocity_0_glsl","order":6,"path":"shaders/sh_fd_advect_velocity_0_glsl/sh_fd_advect_velocity_0_glsl.yy",}, {"name":"sh_fd_advect_velocity_0_glsl","order":6,"path":"shaders/sh_fd_advect_velocity_0_glsl/sh_fd_advect_velocity_0_glsl.yy",},
{"name":"sh_flood_fill_replace","order":2,"path":"shaders/sh_flood_fill_replace/sh_flood_fill_replace.yy",}, {"name":"sh_flood_fill_replace","order":2,"path":"shaders/sh_flood_fill_replace/sh_flood_fill_replace.yy",},
{"name":"sprite_loader","order":10,"path":"scripts/sprite_loader/sprite_loader.yy",}, {"name":"sprite_loader","order":11,"path":"scripts/sprite_loader/sprite_loader.yy",},
{"name":"fd_rectangle_get_material_surface","order":12,"path":"scripts/fd_rectangle_get_material_surface/fd_rectangle_get_material_surface.yy",}, {"name":"fd_rectangle_get_material_surface","order":12,"path":"scripts/fd_rectangle_get_material_surface/fd_rectangle_get_material_surface.yy",},
{"name":"fd_rectangle_clear","order":6,"path":"scripts/fd_rectangle_clear/fd_rectangle_clear.yy",}, {"name":"fd_rectangle_clear","order":6,"path":"scripts/fd_rectangle_clear/fd_rectangle_clear.yy",},
{"name":"__rectangle","order":7,"path":"scripts/__rectangle/__rectangle.yy",},
{"name":"s_node_iterator_index","order":8,"path":"sprites/s_node_iterator_index/s_node_iterator_index.yy",}, {"name":"s_node_iterator_index","order":8,"path":"sprites/s_node_iterator_index/s_node_iterator_index.yy",},
{"name":"preferences","order":4,"path":"scripts/preferences/preferences.yy",}, {"name":"preferences","order":5,"path":"scripts/preferences/preferences.yy",},
{"name":"sh_fd_replace_material_advanced_glsl","order":11,"path":"shaders/sh_fd_replace_material_advanced_glsl/sh_fd_replace_material_advanced_glsl.yy",}, {"name":"sh_fd_replace_material_advanced_glsl","order":11,"path":"shaders/sh_fd_replace_material_advanced_glsl/sh_fd_replace_material_advanced_glsl.yy",},
{"name":"sh_solid","order":15,"path":"shaders/sh_solid/sh_solid.yy",}, {"name":"sh_solid","order":15,"path":"shaders/sh_solid/sh_solid.yy",},
{"name":"s_node_json_file_write","order":13,"path":"sprites/s_node_json_file_write/s_node_json_file_write.yy",}, {"name":"s_node_json_file_write","order":13,"path":"sprites/s_node_json_file_write/s_node_json_file_write.yy",},
{"name":"fd_rectangle_get_material_time_step","order":13,"path":"scripts/fd_rectangle_get_material_time_step/fd_rectangle_get_material_time_step.yy",}, {"name":"fd_rectangle_get_material_time_step","order":13,"path":"scripts/fd_rectangle_get_material_time_step/fd_rectangle_get_material_time_step.yy",},
{"name":"font_data","order":9,"path":"scripts/font_data/font_data.yy",}, {"name":"node_pack_sprites","order":4,"path":"scripts/node_pack_sprites/node_pack_sprites.yy",},
{"name":"font_data","order":10,"path":"scripts/font_data/font_data.yy",},
{"name":"node_camera","order":3,"path":"scripts/node_camera/node_camera.yy",}, {"name":"node_camera","order":3,"path":"scripts/node_camera/node_camera.yy",},
{"name":"s_node_color_replace","order":8,"path":"sprites/s_node_color_replace/s_node_color_replace.yy",}, {"name":"s_node_color_replace","order":8,"path":"sprites/s_node_color_replace/s_node_color_replace.yy",},
{"name":"draw_surface_functions","order":4,"path":"scripts/draw_surface_functions/draw_surface_functions.yy",}, {"name":"draw_surface_functions","order":4,"path":"scripts/draw_surface_functions/draw_surface_functions.yy",},
{"name":"node_rigid_variable","order":8,"path":"scripts/node_rigid_variable/node_rigid_variable.yy",}, {"name":"node_rigid_variable","order":8,"path":"scripts/node_rigid_variable/node_rigid_variable.yy",},
{"name":"s_node_zoom","order":52,"path":"sprites/s_node_zoom/s_node_zoom.yy",}, {"name":"s_node_zoom","order":52,"path":"sprites/s_node_zoom/s_node_zoom.yy",},
{"name":"sh_channel_V","order":6,"path":"shaders/sh_channel_V/sh_channel_V.yy",}, {"name":"sh_channel_V","order":6,"path":"shaders/sh_channel_V/sh_channel_V.yy",},
{"name":"__shapes","order":16,"path":"scripts/__shapes/__shapes.yy",}, {"name":"__shapes","order":3,"path":"scripts/__shapes/__shapes.yy",},
{"name":"node_alpha_to_grey","order":3,"path":"scripts/node_alpha_to_grey/node_alpha_to_grey.yy",}, {"name":"node_alpha_to_grey","order":3,"path":"scripts/node_alpha_to_grey/node_alpha_to_grey.yy",},
{"name":"shell_helper","order":20,"path":"scripts/shell_helper/shell_helper.yy",}, {"name":"shell_helper","order":20,"path":"scripts/shell_helper/shell_helper.yy",},
{"name":"node_strand_collision","order":8,"path":"scripts/node_strand_collision/node_strand_collision.yy",},
{"name":"sh_flood_fill_it","order":1,"path":"shaders/sh_flood_fill_it/sh_flood_fill_it.yy",}, {"name":"sh_flood_fill_it","order":1,"path":"shaders/sh_flood_fill_it/sh_flood_fill_it.yy",},
{"name":"draw_corner","order":19,"path":"scripts/draw_corner/draw_corner.yy",}, {"name":"draw_corner","order":19,"path":"scripts/draw_corner/draw_corner.yy",},
{"name":"o_dialog_preference","order":7,"path":"objects/o_dialog_preference/o_dialog_preference.yy",}, {"name":"o_dialog_preference","order":7,"path":"objects/o_dialog_preference/o_dialog_preference.yy",},
@ -1055,6 +1109,7 @@
{"name":"node_iterator_output","order":2,"path":"scripts/node_iterator_output/node_iterator_output.yy",}, {"name":"node_iterator_output","order":2,"path":"scripts/node_iterator_output/node_iterator_output.yy",},
{"name":"debug","order":9,"path":"scripts/debug/debug.yy",}, {"name":"debug","order":9,"path":"scripts/debug/debug.yy",},
{"name":"node_shadow_cast","order":15,"path":"scripts/node_shadow_cast/node_shadow_cast.yy",}, {"name":"node_shadow_cast","order":15,"path":"scripts/node_shadow_cast/node_shadow_cast.yy",},
{"name":"node_strand_render","order":5,"path":"scripts/node_strand_render/node_strand_render.yy",},
{"name":"s_node_3d_obj_combine","order":5,"path":"sprites/s_node_3d_obj_combine/s_node_3d_obj_combine.yy",}, {"name":"s_node_3d_obj_combine","order":5,"path":"sprites/s_node_3d_obj_combine/s_node_3d_obj_combine.yy",},
{"name":"o_dialog_assetbox","order":3,"path":"objects/o_dialog_assetbox/o_dialog_assetbox.yy",}, {"name":"o_dialog_assetbox","order":3,"path":"objects/o_dialog_assetbox/o_dialog_assetbox.yy",},
{"name":"node_lerp","order":6,"path":"scripts/node_lerp/node_lerp.yy",}, {"name":"node_lerp","order":6,"path":"scripts/node_lerp/node_lerp.yy",},

View file

@ -38,6 +38,7 @@
{"resourceType":"GMFolder","resourceVersion":"1.0","name":"control","folderPath":"folders/functions/control.yy",}, {"resourceType":"GMFolder","resourceVersion":"1.0","name":"control","folderPath":"folders/functions/control.yy",},
{"resourceType":"GMFolder","resourceVersion":"1.0","name":"curve","folderPath":"folders/functions/curve.yy",}, {"resourceType":"GMFolder","resourceVersion":"1.0","name":"curve","folderPath":"folders/functions/curve.yy",},
{"resourceType":"GMFolder","resourceVersion":"1.0","name":"debug","folderPath":"folders/functions/debug.yy",}, {"resourceType":"GMFolder","resourceVersion":"1.0","name":"debug","folderPath":"folders/functions/debug.yy",},
{"resourceType":"GMFolder","resourceVersion":"1.0","name":"delaunay","folderPath":"folders/functions/delaunay.yy",},
{"resourceType":"GMFolder","resourceVersion":"1.0","name":"draw","folderPath":"folders/functions/draw.yy",}, {"resourceType":"GMFolder","resourceVersion":"1.0","name":"draw","folderPath":"folders/functions/draw.yy",},
{"resourceType":"GMFolder","resourceVersion":"1.0","name":"ds","folderPath":"folders/functions/ds.yy",}, {"resourceType":"GMFolder","resourceVersion":"1.0","name":"ds","folderPath":"folders/functions/ds.yy",},
{"resourceType":"GMFolder","resourceVersion":"1.0","name":"eval","folderPath":"folders/functions/eval.yy",}, {"resourceType":"GMFolder","resourceVersion":"1.0","name":"eval","folderPath":"folders/functions/eval.yy",},
@ -56,10 +57,12 @@
{"resourceType":"GMFolder","resourceVersion":"1.0","name":"texture","folderPath":"folders/functions/fluid sim/Internal/Compatibility/texture.yy",}, {"resourceType":"GMFolder","resourceVersion":"1.0","name":"texture","folderPath":"folders/functions/fluid sim/Internal/Compatibility/texture.yy",},
{"resourceType":"GMFolder","resourceVersion":"1.0","name":"view","folderPath":"folders/functions/fluid sim/Internal/Compatibility/view.yy",}, {"resourceType":"GMFolder","resourceVersion":"1.0","name":"view","folderPath":"folders/functions/fluid sim/Internal/Compatibility/view.yy",},
{"resourceType":"GMFolder","resourceVersion":"1.0","name":"Shaders","folderPath":"folders/functions/fluid sim/Shaders.yy",}, {"resourceType":"GMFolder","resourceVersion":"1.0","name":"Shaders","folderPath":"folders/functions/fluid sim/Shaders.yy",},
{"resourceType":"GMFolder","resourceVersion":"1.0","name":"geometry","folderPath":"folders/functions/geometry.yy",},
{"resourceType":"GMFolder","resourceVersion":"1.0","name":"importers","folderPath":"folders/functions/importers.yy",}, {"resourceType":"GMFolder","resourceVersion":"1.0","name":"importers","folderPath":"folders/functions/importers.yy",},
{"resourceType":"GMFolder","resourceVersion":"1.0","name":"inputs","folderPath":"folders/functions/inputs.yy",}, {"resourceType":"GMFolder","resourceVersion":"1.0","name":"inputs","folderPath":"folders/functions/inputs.yy",},
{"resourceType":"GMFolder","resourceVersion":"1.0","name":"lua","folderPath":"folders/functions/lua.yy",}, {"resourceType":"GMFolder","resourceVersion":"1.0","name":"lua","folderPath":"folders/functions/lua.yy",},
{"resourceType":"GMFolder","resourceVersion":"1.0","name":"migration","folderPath":"folders/functions/migration.yy",}, {"resourceType":"GMFolder","resourceVersion":"1.0","name":"migration","folderPath":"folders/functions/migration.yy",},
{"resourceType":"GMFolder","resourceVersion":"1.0","name":"packing","folderPath":"folders/functions/packing.yy",},
{"resourceType":"GMFolder","resourceVersion":"1.0","name":"physics","folderPath":"folders/functions/physics.yy",}, {"resourceType":"GMFolder","resourceVersion":"1.0","name":"physics","folderPath":"folders/functions/physics.yy",},
{"resourceType":"GMFolder","resourceVersion":"1.0","name":"regex","folderPath":"folders/functions/regex.yy",}, {"resourceType":"GMFolder","resourceVersion":"1.0","name":"regex","folderPath":"folders/functions/regex.yy",},
{"resourceType":"GMFolder","resourceVersion":"1.0","name":"shader","folderPath":"folders/functions/shader.yy",}, {"resourceType":"GMFolder","resourceVersion":"1.0","name":"shader","folderPath":"folders/functions/shader.yy",},
@ -97,11 +100,13 @@
{"resourceType":"GMFolder","resourceVersion":"1.0","name":"node","folderPath":"folders/nodes/data/node.yy",}, {"resourceType":"GMFolder","resourceVersion":"1.0","name":"node","folderPath":"folders/nodes/data/node.yy",},
{"resourceType":"GMFolder","resourceVersion":"1.0","name":"render","folderPath":"folders/nodes/data/render.yy",}, {"resourceType":"GMFolder","resourceVersion":"1.0","name":"render","folderPath":"folders/nodes/data/render.yy",},
{"resourceType":"GMFolder","resourceVersion":"1.0","name":"rigidSim","folderPath":"folders/nodes/data/rigidSim.yy",}, {"resourceType":"GMFolder","resourceVersion":"1.0","name":"rigidSim","folderPath":"folders/nodes/data/rigidSim.yy",},
{"resourceType":"GMFolder","resourceVersion":"1.0","name":"strandSim","folderPath":"folders/nodes/data/strandSim.yy",},
{"resourceType":"GMFolder","resourceVersion":"1.0","name":"transform","folderPath":"folders/nodes/data/transform.yy",}, {"resourceType":"GMFolder","resourceVersion":"1.0","name":"transform","folderPath":"folders/nodes/data/transform.yy",},
{"resourceType":"GMFolder","resourceVersion":"1.0","name":"value","folderPath":"folders/nodes/data/value.yy",}, {"resourceType":"GMFolder","resourceVersion":"1.0","name":"value","folderPath":"folders/nodes/data/value.yy",},
{"resourceType":"GMFolder","resourceVersion":"1.0","name":"array","folderPath":"folders/nodes/data/value/array.yy",}, {"resourceType":"GMFolder","resourceVersion":"1.0","name":"array","folderPath":"folders/nodes/data/value/array.yy",},
{"resourceType":"GMFolder","resourceVersion":"1.0","name":"bool","folderPath":"folders/nodes/data/value/bool.yy",}, {"resourceType":"GMFolder","resourceVersion":"1.0","name":"bool","folderPath":"folders/nodes/data/value/bool.yy",},
{"resourceType":"GMFolder","resourceVersion":"1.0","name":"color","folderPath":"folders/nodes/data/value/color.yy",}, {"resourceType":"GMFolder","resourceVersion":"1.0","name":"color","folderPath":"folders/nodes/data/value/color.yy",},
{"resourceType":"GMFolder","resourceVersion":"1.0","name":"mesh","folderPath":"folders/nodes/data/value/mesh.yy",},
{"resourceType":"GMFolder","resourceVersion":"1.0","name":"number","folderPath":"folders/nodes/data/value/number.yy",}, {"resourceType":"GMFolder","resourceVersion":"1.0","name":"number","folderPath":"folders/nodes/data/value/number.yy",},
{"resourceType":"GMFolder","resourceVersion":"1.0","name":"path","folderPath":"folders/nodes/data/value/path.yy",}, {"resourceType":"GMFolder","resourceVersion":"1.0","name":"path","folderPath":"folders/nodes/data/value/path.yy",},
{"resourceType":"GMFolder","resourceVersion":"1.0","name":"struct","folderPath":"folders/nodes/data/value/struct.yy",}, {"resourceType":"GMFolder","resourceVersion":"1.0","name":"struct","folderPath":"folders/nodes/data/value/struct.yy",},
@ -117,24 +122,27 @@
{"resourceType":"GMFolder","resourceVersion":"1.0","name":"node","folderPath":"folders/nodes/icons/node.yy",}, {"resourceType":"GMFolder","resourceVersion":"1.0","name":"node","folderPath":"folders/nodes/icons/node.yy",},
{"resourceType":"GMFolder","resourceVersion":"1.0","name":"render","folderPath":"folders/nodes/icons/render.yy",}, {"resourceType":"GMFolder","resourceVersion":"1.0","name":"render","folderPath":"folders/nodes/icons/render.yy",},
{"resourceType":"GMFolder","resourceVersion":"1.0","name":"rigidSim","folderPath":"folders/nodes/icons/rigidSim.yy",}, {"resourceType":"GMFolder","resourceVersion":"1.0","name":"rigidSim","folderPath":"folders/nodes/icons/rigidSim.yy",},
{"resourceType":"GMFolder","resourceVersion":"1.0","name":"strandSim","folderPath":"folders/nodes/icons/strandSim.yy",},
{"resourceType":"GMFolder","resourceVersion":"1.0","name":"transform","folderPath":"folders/nodes/icons/transform.yy",}, {"resourceType":"GMFolder","resourceVersion":"1.0","name":"transform","folderPath":"folders/nodes/icons/transform.yy",},
{"resourceType":"GMFolder","resourceVersion":"1.0","name":"value","folderPath":"folders/nodes/icons/value.yy",}, {"resourceType":"GMFolder","resourceVersion":"1.0","name":"value","folderPath":"folders/nodes/icons/value.yy",},
{"resourceType":"GMFolder","resourceVersion":"1.0","name":"array","folderPath":"folders/nodes/icons/value/array.yy",}, {"resourceType":"GMFolder","resourceVersion":"1.0","name":"array","folderPath":"folders/nodes/icons/value/array.yy",},
{"resourceType":"GMFolder","resourceVersion":"1.0","name":"bool","folderPath":"folders/nodes/icons/value/bool.yy",}, {"resourceType":"GMFolder","resourceVersion":"1.0","name":"bool","folderPath":"folders/nodes/icons/value/bool.yy",},
{"resourceType":"GMFolder","resourceVersion":"1.0","name":"color","folderPath":"folders/nodes/icons/value/color.yy",}, {"resourceType":"GMFolder","resourceVersion":"1.0","name":"color","folderPath":"folders/nodes/icons/value/color.yy",},
{"resourceType":"GMFolder","resourceVersion":"1.0","name":"mesh","folderPath":"folders/nodes/icons/value/mesh.yy",},
{"resourceType":"GMFolder","resourceVersion":"1.0","name":"number","folderPath":"folders/nodes/icons/value/number.yy",}, {"resourceType":"GMFolder","resourceVersion":"1.0","name":"number","folderPath":"folders/nodes/icons/value/number.yy",},
{"resourceType":"GMFolder","resourceVersion":"1.0","name":"path","folderPath":"folders/nodes/icons/value/path.yy",}, {"resourceType":"GMFolder","resourceVersion":"1.0","name":"path","folderPath":"folders/nodes/icons/value/path.yy",},
{"resourceType":"GMFolder","resourceVersion":"1.0","name":"struct","folderPath":"folders/nodes/icons/value/struct.yy",}, {"resourceType":"GMFolder","resourceVersion":"1.0","name":"struct","folderPath":"folders/nodes/icons/value/struct.yy",},
{"resourceType":"GMFolder","resourceVersion":"1.0","name":"texts","folderPath":"folders/nodes/icons/value/texts.yy",}, {"resourceType":"GMFolder","resourceVersion":"1.0","name":"texts","folderPath":"folders/nodes/icons/value/texts.yy",},
{"resourceType":"GMFolder","resourceVersion":"1.0","name":"VFX","folderPath":"folders/nodes/icons/VFX.yy",}, {"resourceType":"GMFolder","resourceVersion":"1.0","name":"VFX","folderPath":"folders/nodes/icons/VFX.yy",},
{"resourceType":"GMFolder","resourceVersion":"1.0","name":"panels","folderPath":"folders/panels.yy",}, {"resourceType":"GMFolder","resourceVersion":"1.0","name":"panels","folderPath":"folders/panels.yy",},
{"resourceType":"GMFolder","resourceVersion":"1.0","name":"data","folderPath":"folders/panels/data.yy",}, {"resourceType":"GMFolder","resourceVersion":"1.0","name":"_others","folderPath":"folders/panels/_others.yy",},
{"resourceType":"GMFolder","resourceVersion":"1.0","name":"graph","folderPath":"folders/panels/data/graph.yy",}, {"resourceType":"GMFolder","resourceVersion":"1.0","name":"graph","folderPath":"folders/panels/graph.yy",},
{"resourceType":"GMFolder","resourceVersion":"1.0","name":"inspectors","folderPath":"folders/panels/data/inspectors.yy",}, {"resourceType":"GMFolder","resourceVersion":"1.0","name":"inspectors","folderPath":"folders/panels/inspectors.yy",},
{"resourceType":"GMFolder","resourceVersion":"1.0","name":"menu","folderPath":"folders/panels/data/menu.yy",}, {"resourceType":"GMFolder","resourceVersion":"1.0","name":"components","folderPath":"folders/panels/inspectors/components.yy",},
{"resourceType":"GMFolder","resourceVersion":"1.0","name":"preview","folderPath":"folders/panels/data/preview.yy",}, {"resourceType":"GMFolder","resourceVersion":"1.0","name":"menu","folderPath":"folders/panels/menu.yy",},
{"resourceType":"GMFolder","resourceVersion":"1.0","name":"preview","folderPath":"folders/panels/preview.yy",}, {"resourceType":"GMFolder","resourceVersion":"1.0","name":"preview","folderPath":"folders/panels/preview.yy",},
{"resourceType":"GMFolder","resourceVersion":"1.0","name":"overlay","folderPath":"folders/panels/preview/overlay.yy",}, {"resourceType":"GMFolder","resourceVersion":"1.0","name":"overlay","folderPath":"folders/panels/preview/overlay.yy",},
{"resourceType":"GMFolder","resourceVersion":"1.0","name":"sprites","folderPath":"folders/panels/preview/sprites.yy",},
{"resourceType":"GMFolder","resourceVersion":"1.0","name":"shader","folderPath":"folders/shader.yy",}, {"resourceType":"GMFolder","resourceVersion":"1.0","name":"shader","folderPath":"folders/shader.yy",},
{"resourceType":"GMFolder","resourceVersion":"1.0","name":"3d","folderPath":"folders/shader/3d.yy",}, {"resourceType":"GMFolder","resourceVersion":"1.0","name":"3d","folderPath":"folders/shader/3d.yy",},
{"resourceType":"GMFolder","resourceVersion":"1.0","name":"blend","folderPath":"folders/shader/blend.yy",}, {"resourceType":"GMFolder","resourceVersion":"1.0","name":"blend","folderPath":"folders/shader/blend.yy",},
@ -287,6 +295,7 @@
{"resourceType":"GMIncludedFile","resourceVersion":"1.0","name":"s_sort_24.png","CopyToMask":-1,"filePath":"datafiles/data/themes/default/graphics/icon",}, {"resourceType":"GMIncludedFile","resourceVersion":"1.0","name":"s_sort_24.png","CopyToMask":-1,"filePath":"datafiles/data/themes/default/graphics/icon",},
{"resourceType":"GMIncludedFile","resourceVersion":"1.0","name":"s_steam_creator.png","CopyToMask":-1,"filePath":"datafiles/data/themes/default/graphics/icon",}, {"resourceType":"GMIncludedFile","resourceVersion":"1.0","name":"s_steam_creator.png","CopyToMask":-1,"filePath":"datafiles/data/themes/default/graphics/icon",},
{"resourceType":"GMIncludedFile","resourceVersion":"1.0","name":"s_steam.png","CopyToMask":-1,"filePath":"datafiles/data/themes/default/graphics/icon",}, {"resourceType":"GMIncludedFile","resourceVersion":"1.0","name":"s_steam.png","CopyToMask":-1,"filePath":"datafiles/data/themes/default/graphics/icon",},
{"resourceType":"GMIncludedFile","resourceVersion":"1.0","name":"s_strandSim.png","CopyToMask":-1,"filePath":"datafiles/data/themes/default/graphics/icon",},
{"resourceType":"GMIncludedFile","resourceVersion":"1.0","name":"s_text_bullet_strip2.png","CopyToMask":-1,"filePath":"datafiles/data/themes/default/graphics/icon",}, {"resourceType":"GMIncludedFile","resourceVersion":"1.0","name":"s_text_bullet_strip2.png","CopyToMask":-1,"filePath":"datafiles/data/themes/default/graphics/icon",},
{"resourceType":"GMIncludedFile","resourceVersion":"1.0","name":"s_timeline_clock.png","CopyToMask":-1,"filePath":"datafiles/data/themes/default/graphics/icon",}, {"resourceType":"GMIncludedFile","resourceVersion":"1.0","name":"s_timeline_clock.png","CopyToMask":-1,"filePath":"datafiles/data/themes/default/graphics/icon",},
{"resourceType":"GMIncludedFile","resourceVersion":"1.0","name":"s_timeline_graph.png","CopyToMask":-1,"filePath":"datafiles/data/themes/default/graphics/icon",}, {"resourceType":"GMIncludedFile","resourceVersion":"1.0","name":"s_timeline_graph.png","CopyToMask":-1,"filePath":"datafiles/data/themes/default/graphics/icon",},
@ -388,7 +397,6 @@
{"resourceType":"GMIncludedFile","resourceVersion":"1.0","name":"s_canvas_tools_rect_fill.png","CopyToMask":-1,"filePath":"datafiles/data/themes/default/graphics/tool",}, {"resourceType":"GMIncludedFile","resourceVersion":"1.0","name":"s_canvas_tools_rect_fill.png","CopyToMask":-1,"filePath":"datafiles/data/themes/default/graphics/tool",},
{"resourceType":"GMIncludedFile","resourceVersion":"1.0","name":"s_canvas_tools_rect.png","CopyToMask":-1,"filePath":"datafiles/data/themes/default/graphics/tool",}, {"resourceType":"GMIncludedFile","resourceVersion":"1.0","name":"s_canvas_tools_rect.png","CopyToMask":-1,"filePath":"datafiles/data/themes/default/graphics/tool",},
{"resourceType":"GMIncludedFile","resourceVersion":"1.0","name":"s_control_add.png","CopyToMask":-1,"filePath":"datafiles/data/themes/default/graphics/tool",}, {"resourceType":"GMIncludedFile","resourceVersion":"1.0","name":"s_control_add.png","CopyToMask":-1,"filePath":"datafiles/data/themes/default/graphics/tool",},
{"resourceType":"GMIncludedFile","resourceVersion":"1.0","name":"s_control_edit.png","CopyToMask":-1,"filePath":"datafiles/data/themes/default/graphics/tool",},
{"resourceType":"GMIncludedFile","resourceVersion":"1.0","name":"s_control_pin.png","CopyToMask":-1,"filePath":"datafiles/data/themes/default/graphics/tool",}, {"resourceType":"GMIncludedFile","resourceVersion":"1.0","name":"s_control_pin.png","CopyToMask":-1,"filePath":"datafiles/data/themes/default/graphics/tool",},
{"resourceType":"GMIncludedFile","resourceVersion":"1.0","name":"s_control_remove.png","CopyToMask":-1,"filePath":"datafiles/data/themes/default/graphics/tool",}, {"resourceType":"GMIncludedFile","resourceVersion":"1.0","name":"s_control_remove.png","CopyToMask":-1,"filePath":"datafiles/data/themes/default/graphics/tool",},
{"resourceType":"GMIncludedFile","resourceVersion":"1.0","name":"s_control_unpin.png","CopyToMask":-1,"filePath":"datafiles/data/themes/default/graphics/tool",}, {"resourceType":"GMIncludedFile","resourceVersion":"1.0","name":"s_control_unpin.png","CopyToMask":-1,"filePath":"datafiles/data/themes/default/graphics/tool",},
@ -399,7 +407,13 @@
{"resourceType":"GMIncludedFile","resourceVersion":"1.0","name":"s_path_tools_circle.png","CopyToMask":-1,"filePath":"datafiles/data/themes/default/graphics/tool",}, {"resourceType":"GMIncludedFile","resourceVersion":"1.0","name":"s_path_tools_circle.png","CopyToMask":-1,"filePath":"datafiles/data/themes/default/graphics/tool",},
{"resourceType":"GMIncludedFile","resourceVersion":"1.0","name":"s_path_tools_draw.png","CopyToMask":-1,"filePath":"datafiles/data/themes/default/graphics/tool",}, {"resourceType":"GMIncludedFile","resourceVersion":"1.0","name":"s_path_tools_draw.png","CopyToMask":-1,"filePath":"datafiles/data/themes/default/graphics/tool",},
{"resourceType":"GMIncludedFile","resourceVersion":"1.0","name":"s_path_tools_rectangle.png","CopyToMask":-1,"filePath":"datafiles/data/themes/default/graphics/tool",}, {"resourceType":"GMIncludedFile","resourceVersion":"1.0","name":"s_path_tools_rectangle.png","CopyToMask":-1,"filePath":"datafiles/data/themes/default/graphics/tool",},
{"resourceType":"GMIncludedFile","resourceVersion":"1.0","name":"s_path_tools_transform.png","CopyToMask":-1,"filePath":"datafiles/data/themes/default/graphics/tool",},
{"resourceType":"GMIncludedFile","resourceVersion":"1.0","name":"s_splice_draw.png","CopyToMask":-1,"filePath":"datafiles/data/themes/default/graphics/tool",}, {"resourceType":"GMIncludedFile","resourceVersion":"1.0","name":"s_splice_draw.png","CopyToMask":-1,"filePath":"datafiles/data/themes/default/graphics/tool",},
{"resourceType":"GMIncludedFile","resourceVersion":"1.0","name":"s_strand_tool_comb.png","CopyToMask":-1,"filePath":"datafiles/data/themes/default/graphics/tool",},
{"resourceType":"GMIncludedFile","resourceVersion":"1.0","name":"s_strand_tool_cut.png","CopyToMask":-1,"filePath":"datafiles/data/themes/default/graphics/tool",},
{"resourceType":"GMIncludedFile","resourceVersion":"1.0","name":"s_strand_tool_grab.png","CopyToMask":-1,"filePath":"datafiles/data/themes/default/graphics/tool",},
{"resourceType":"GMIncludedFile","resourceVersion":"1.0","name":"s_strand_tool_push.png","CopyToMask":-1,"filePath":"datafiles/data/themes/default/graphics/tool",},
{"resourceType":"GMIncludedFile","resourceVersion":"1.0","name":"s_strand_tool_stretch.png","CopyToMask":-1,"filePath":"datafiles/data/themes/default/graphics/tool",},
{"resourceType":"GMIncludedFile","resourceVersion":"1.0","name":"graphic.ai","CopyToMask":-1,"filePath":"datafiles/data/themes/default/graphics/UI",}, {"resourceType":"GMIncludedFile","resourceVersion":"1.0","name":"graphic.ai","CopyToMask":-1,"filePath":"datafiles/data/themes/default/graphics/UI",},
{"resourceType":"GMIncludedFile","resourceVersion":"1.0","name":"s_color_picker_box.png","CopyToMask":-1,"filePath":"datafiles/data/themes/default/graphics/UI",}, {"resourceType":"GMIncludedFile","resourceVersion":"1.0","name":"s_color_picker_box.png","CopyToMask":-1,"filePath":"datafiles/data/themes/default/graphics/UI",},
{"resourceType":"GMIncludedFile","resourceVersion":"1.0","name":"s_color_picker_sample.png","CopyToMask":-1,"filePath":"datafiles/data/themes/default/graphics/UI",}, {"resourceType":"GMIncludedFile","resourceVersion":"1.0","name":"s_color_picker_sample.png","CopyToMask":-1,"filePath":"datafiles/data/themes/default/graphics/UI",},
@ -421,6 +435,9 @@
{"resourceType":"GMIncludedFile","resourceVersion":"1.0","name":"s_button_bottom_left_strip3.png","CopyToMask":-1,"filePath":"datafiles/data/themes/default/graphics/widget",}, {"resourceType":"GMIncludedFile","resourceVersion":"1.0","name":"s_button_bottom_left_strip3.png","CopyToMask":-1,"filePath":"datafiles/data/themes/default/graphics/widget",},
{"resourceType":"GMIncludedFile","resourceVersion":"1.0","name":"s_button_bottom_right_strip3.png","CopyToMask":-1,"filePath":"datafiles/data/themes/default/graphics/widget",}, {"resourceType":"GMIncludedFile","resourceVersion":"1.0","name":"s_button_bottom_right_strip3.png","CopyToMask":-1,"filePath":"datafiles/data/themes/default/graphics/widget",},
{"resourceType":"GMIncludedFile","resourceVersion":"1.0","name":"s_button_hide_fill_strip3.png","CopyToMask":-1,"filePath":"datafiles/data/themes/default/graphics/widget",}, {"resourceType":"GMIncludedFile","resourceVersion":"1.0","name":"s_button_hide_fill_strip3.png","CopyToMask":-1,"filePath":"datafiles/data/themes/default/graphics/widget",},
{"resourceType":"GMIncludedFile","resourceVersion":"1.0","name":"s_button_hide_left.png","CopyToMask":-1,"filePath":"datafiles/data/themes/default/graphics/widget",},
{"resourceType":"GMIncludedFile","resourceVersion":"1.0","name":"s_button_hide_middle.png","CopyToMask":-1,"filePath":"datafiles/data/themes/default/graphics/widget",},
{"resourceType":"GMIncludedFile","resourceVersion":"1.0","name":"s_button_hide_right.png","CopyToMask":-1,"filePath":"datafiles/data/themes/default/graphics/widget",},
{"resourceType":"GMIncludedFile","resourceVersion":"1.0","name":"s_button_hide_strip3.png","CopyToMask":-1,"filePath":"datafiles/data/themes/default/graphics/widget",}, {"resourceType":"GMIncludedFile","resourceVersion":"1.0","name":"s_button_hide_strip3.png","CopyToMask":-1,"filePath":"datafiles/data/themes/default/graphics/widget",},
{"resourceType":"GMIncludedFile","resourceVersion":"1.0","name":"s_button_left_strip3.png","CopyToMask":-1,"filePath":"datafiles/data/themes/default/graphics/widget",}, {"resourceType":"GMIncludedFile","resourceVersion":"1.0","name":"s_button_left_strip3.png","CopyToMask":-1,"filePath":"datafiles/data/themes/default/graphics/widget",},
{"resourceType":"GMIncludedFile","resourceVersion":"1.0","name":"s_button_lime_strip3.png","CopyToMask":-1,"filePath":"datafiles/data/themes/default/graphics/widget",}, {"resourceType":"GMIncludedFile","resourceVersion":"1.0","name":"s_button_lime_strip3.png","CopyToMask":-1,"filePath":"datafiles/data/themes/default/graphics/widget",},
@ -532,6 +549,7 @@
{"id":{"name":"s_node_text_trim","path":"sprites/s_node_text_trim/s_node_text_trim.yy",},}, {"id":{"name":"s_node_text_trim","path":"sprites/s_node_text_trim/s_node_text_trim.yy",},},
{"id":{"name":"sh_noise_grid_hex","path":"shaders/sh_noise_grid_hex/sh_noise_grid_hex.yy",},}, {"id":{"name":"sh_noise_grid_hex","path":"shaders/sh_noise_grid_hex/sh_noise_grid_hex.yy",},},
{"id":{"name":"node_3d_obj","path":"scripts/node_3d_obj/node_3d_obj.yy",},}, {"id":{"name":"node_3d_obj","path":"scripts/node_3d_obj/node_3d_obj.yy",},},
{"id":{"name":"__path","path":"scripts/__path/__path.yy",},},
{"id":{"name":"s_node_grid_tri_noise","path":"sprites/s_node_grid_tri_noise/s_node_grid_tri_noise.yy",},}, {"id":{"name":"s_node_grid_tri_noise","path":"sprites/s_node_grid_tri_noise/s_node_grid_tri_noise.yy",},},
{"id":{"name":"o_dialog_menubox","path":"objects/o_dialog_menubox/o_dialog_menubox.yy",},}, {"id":{"name":"o_dialog_menubox","path":"objects/o_dialog_menubox/o_dialog_menubox.yy",},},
{"id":{"name":"s_node_blend","path":"sprites/s_node_blend/s_node_blend.yy",},}, {"id":{"name":"s_node_blend","path":"sprites/s_node_blend/s_node_blend.yy",},},
@ -561,12 +579,14 @@
{"id":{"name":"node_switch","path":"scripts/node_switch/node_switch.yy",},}, {"id":{"name":"node_switch","path":"scripts/node_switch/node_switch.yy",},},
{"id":{"name":"sh_corner","path":"shaders/sh_corner/sh_corner.yy",},}, {"id":{"name":"sh_corner","path":"shaders/sh_corner/sh_corner.yy",},},
{"id":{"name":"node_array","path":"scripts/node_array/node_array.yy",},}, {"id":{"name":"node_array","path":"scripts/node_array/node_array.yy",},},
{"id":{"name":"pack_corner","path":"scripts/pack_corner/pack_corner.yy",},},
{"id":{"name":"sh_colorize","path":"shaders/sh_colorize/sh_colorize.yy",},}, {"id":{"name":"sh_colorize","path":"shaders/sh_colorize/sh_colorize.yy",},},
{"id":{"name":"node_string","path":"scripts/node_string/node_string.yy",},}, {"id":{"name":"node_string","path":"scripts/node_string/node_string.yy",},},
{"id":{"name":"cross_product","path":"scripts/cross_product/cross_product.yy",},}, {"id":{"name":"cross_product","path":"scripts/cross_product/cross_product.yy",},},
{"id":{"name":"s_node_particle_effector","path":"sprites/s_node_particle_effector/s_node_particle_effector.yy",},}, {"id":{"name":"s_node_particle_effector","path":"sprites/s_node_particle_effector/s_node_particle_effector.yy",},},
{"id":{"name":"sh_blur_bokeh","path":"shaders/sh_blur_bokeh/sh_blur_bokeh.yy",},}, {"id":{"name":"sh_blur_bokeh","path":"shaders/sh_blur_bokeh/sh_blur_bokeh.yy",},},
{"id":{"name":"s_node_loop_input","path":"sprites/s_node_loop_input/s_node_loop_input.yy",},}, {"id":{"name":"s_node_loop_input","path":"sprites/s_node_loop_input/s_node_loop_input.yy",},},
{"id":{"name":"node_strand_length_adjust","path":"scripts/node_strand_length_adjust/node_strand_length_adjust.yy",},},
{"id":{"name":"fd_rectangle_add_material_surface","path":"scripts/fd_rectangle_add_material_surface/fd_rectangle_add_material_surface.yy",},}, {"id":{"name":"fd_rectangle_add_material_surface","path":"scripts/fd_rectangle_add_material_surface/fd_rectangle_add_material_surface.yy",},},
{"id":{"name":"perlin_noise","path":"scripts/perlin_noise/perlin_noise.yy",},}, {"id":{"name":"perlin_noise","path":"scripts/perlin_noise/perlin_noise.yy",},},
{"id":{"name":"fd_rectangle_replace_material","path":"scripts/fd_rectangle_replace_material/fd_rectangle_replace_material.yy",},}, {"id":{"name":"fd_rectangle_replace_material","path":"scripts/fd_rectangle_replace_material/fd_rectangle_replace_material.yy",},},
@ -617,6 +637,8 @@
{"id":{"name":"node_outline","path":"scripts/node_outline/node_outline.yy",},}, {"id":{"name":"node_outline","path":"scripts/node_outline/node_outline.yy",},},
{"id":{"name":"sh_mesh_generation","path":"shaders/sh_mesh_generation/sh_mesh_generation.yy",},}, {"id":{"name":"sh_mesh_generation","path":"shaders/sh_mesh_generation/sh_mesh_generation.yy",},},
{"id":{"name":"math_function","path":"scripts/math_function/math_function.yy",},}, {"id":{"name":"math_function","path":"scripts/math_function/math_function.yy",},},
{"id":{"name":"__point","path":"scripts/__point/__point.yy",},},
{"id":{"name":"node_strand_sim","path":"scripts/node_strand_sim/node_strand_sim.yy",},},
{"id":{"name":"scrollBox","path":"scripts/scrollBox/scrollBox.yy",},}, {"id":{"name":"scrollBox","path":"scripts/scrollBox/scrollBox.yy",},},
{"id":{"name":"o_dialog_exit","path":"objects/o_dialog_exit/o_dialog_exit.yy",},}, {"id":{"name":"o_dialog_exit","path":"objects/o_dialog_exit/o_dialog_exit.yy",},},
{"id":{"name":"node_polygonal_shape","path":"scripts/node_polygonal_shape/node_polygonal_shape.yy",},}, {"id":{"name":"node_polygonal_shape","path":"scripts/node_polygonal_shape/node_polygonal_shape.yy",},},
@ -626,11 +648,13 @@
{"id":{"name":"node_gradient_points","path":"scripts/node_gradient_points/node_gradient_points.yy",},}, {"id":{"name":"node_gradient_points","path":"scripts/node_gradient_points/node_gradient_points.yy",},},
{"id":{"name":"_f_code","path":"fonts/_f_code/_f_code.yy",},}, {"id":{"name":"_f_code","path":"fonts/_f_code/_f_code.yy",},},
{"id":{"name":"sh_combine_rgb","path":"shaders/sh_combine_rgb/sh_combine_rgb.yy",},}, {"id":{"name":"sh_combine_rgb","path":"shaders/sh_combine_rgb/sh_combine_rgb.yy",},},
{"id":{"name":"s_node_strandSim","path":"sprites/s_node_strandSim/s_node_strandSim.yy",},},
{"id":{"name":"object_get_depth","path":"scripts/object_get_depth/object_get_depth.yy",},}, {"id":{"name":"object_get_depth","path":"scripts/object_get_depth/object_get_depth.yy",},},
{"id":{"name":"o_dialog_panel","path":"objects/o_dialog_panel/o_dialog_panel.yy",},}, {"id":{"name":"o_dialog_panel","path":"objects/o_dialog_panel/o_dialog_panel.yy",},},
{"id":{"name":"colToVec4","path":"scripts/colToVec4/colToVec4.yy",},}, {"id":{"name":"colToVec4","path":"scripts/colToVec4/colToVec4.yy",},},
{"id":{"name":"s_node_vfx","path":"sprites/s_node_vfx/s_node_vfx.yy",},}, {"id":{"name":"s_node_vfx","path":"sprites/s_node_vfx/s_node_vfx.yy",},},
{"id":{"name":"fd_rectangle_get_velocity_maccormack_weight","path":"scripts/fd_rectangle_get_velocity_maccormack_weight/fd_rectangle_get_velocity_maccormack_weight.yy",},}, {"id":{"name":"fd_rectangle_get_velocity_maccormack_weight","path":"scripts/fd_rectangle_get_velocity_maccormack_weight/fd_rectangle_get_velocity_maccormack_weight.yy",},},
{"id":{"name":"s_node_mesh_path","path":"sprites/s_node_mesh_path/s_node_mesh_path.yy",},},
{"id":{"name":"sh_fd_advect_material_rgba_8_glsl","path":"shaders/sh_fd_advect_material_rgba_8_glsl/sh_fd_advect_material_rgba_8_glsl.yy",},}, {"id":{"name":"sh_fd_advect_material_rgba_8_glsl","path":"shaders/sh_fd_advect_material_rgba_8_glsl/sh_fd_advect_material_rgba_8_glsl.yy",},},
{"id":{"name":"fd_rectangle_get_material_dissipation_type","path":"scripts/fd_rectangle_get_material_dissipation_type/fd_rectangle_get_material_dissipation_type.yy",},}, {"id":{"name":"fd_rectangle_get_material_dissipation_type","path":"scripts/fd_rectangle_get_material_dissipation_type/fd_rectangle_get_material_dissipation_type.yy",},},
{"id":{"name":"draw_surface_blend","path":"scripts/draw_surface_blend/draw_surface_blend.yy",},}, {"id":{"name":"draw_surface_blend","path":"scripts/draw_surface_blend/draw_surface_blend.yy",},},
@ -733,6 +757,7 @@
{"id":{"name":"s_node_palette","path":"sprites/s_node_palette/s_node_palette.yy",},}, {"id":{"name":"s_node_palette","path":"sprites/s_node_palette/s_node_palette.yy",},},
{"id":{"name":"curve_damping_function","path":"scripts/curve_damping_function/curve_damping_function.yy",},}, {"id":{"name":"curve_damping_function","path":"scripts/curve_damping_function/curve_damping_function.yy",},},
{"id":{"name":"fd_rectangle_get_collision_mask_surface","path":"scripts/fd_rectangle_get_collision_mask_surface/fd_rectangle_get_collision_mask_surface.yy",},}, {"id":{"name":"fd_rectangle_get_collision_mask_surface","path":"scripts/fd_rectangle_get_collision_mask_surface/fd_rectangle_get_collision_mask_surface.yy",},},
{"id":{"name":"s_node_strandSim_length","path":"sprites/s_node_strandSim_length/s_node_strandSim_length.yy",},},
{"id":{"name":"node_VFX_variable","path":"scripts/node_VFX_variable/node_VFX_variable.yy",},}, {"id":{"name":"node_VFX_variable","path":"scripts/node_VFX_variable/node_VFX_variable.yy",},},
{"id":{"name":"node_array_sort","path":"scripts/node_array_sort/node_array_sort.yy",},}, {"id":{"name":"node_array_sort","path":"scripts/node_array_sort/node_array_sort.yy",},},
{"id":{"name":"fd_draw_surface_to_collision_mask_surface","path":"scripts/fd_draw_surface_to_collision_mask_surface/fd_draw_surface_to_collision_mask_surface.yy",},}, {"id":{"name":"fd_draw_surface_to_collision_mask_surface","path":"scripts/fd_draw_surface_to_collision_mask_surface/fd_draw_surface_to_collision_mask_surface.yy",},},
@ -763,6 +788,7 @@
{"id":{"name":"s_node_curve_eval","path":"sprites/s_node_curve_eval/s_node_curve_eval.yy",},}, {"id":{"name":"s_node_curve_eval","path":"sprites/s_node_curve_eval/s_node_curve_eval.yy",},},
{"id":{"name":"s_node_path_reverse","path":"sprites/s_node_path_reverse/s_node_path_reverse.yy",},}, {"id":{"name":"s_node_path_reverse","path":"sprites/s_node_path_reverse/s_node_path_reverse.yy",},},
{"id":{"name":"fd_rectangle_get_pressure_width","path":"scripts/fd_rectangle_get_pressure_width/fd_rectangle_get_pressure_width.yy",},}, {"id":{"name":"fd_rectangle_get_pressure_width","path":"scripts/fd_rectangle_get_pressure_width/fd_rectangle_get_pressure_width.yy",},},
{"id":{"name":"s_node_strandSim_render","path":"sprites/s_node_strandSim_render/s_node_strandSim_render.yy",},},
{"id":{"name":"sh_blend_normal","path":"shaders/sh_blend_normal/sh_blend_normal.yy",},}, {"id":{"name":"sh_blend_normal","path":"shaders/sh_blend_normal/sh_blend_normal.yy",},},
{"id":{"name":"node_feedback_output","path":"scripts/node_feedback_output/node_feedback_output.yy",},}, {"id":{"name":"node_feedback_output","path":"scripts/node_feedback_output/node_feedback_output.yy",},},
{"id":{"name":"node_lua_surface","path":"scripts/node_lua_surface/node_lua_surface.yy",},}, {"id":{"name":"node_lua_surface","path":"scripts/node_lua_surface/node_lua_surface.yy",},},
@ -777,13 +803,16 @@
{"id":{"name":"node_blur_bokeh","path":"scripts/node_blur_bokeh/node_blur_bokeh.yy",},}, {"id":{"name":"node_blur_bokeh","path":"scripts/node_blur_bokeh/node_blur_bokeh.yy",},},
{"id":{"name":"sh_color_remove","path":"shaders/sh_color_remove/sh_color_remove.yy",},}, {"id":{"name":"sh_color_remove","path":"shaders/sh_color_remove/sh_color_remove.yy",},},
{"id":{"name":"o_dialog_migration","path":"objects/o_dialog_migration/o_dialog_migration.yy",},}, {"id":{"name":"o_dialog_migration","path":"objects/o_dialog_migration/o_dialog_migration.yy",},},
{"id":{"name":"s_node_color_mix","path":"sprites/s_node_color_mix/s_node_color_mix.yy",},},
{"id":{"name":"s_node_blur","path":"sprites/s_node_blur/s_node_blur.yy",},}, {"id":{"name":"s_node_blur","path":"sprites/s_node_blur/s_node_blur.yy",},},
{"id":{"name":"textArea","path":"scripts/textArea/textArea.yy",},}, {"id":{"name":"textArea","path":"scripts/textArea/textArea.yy",},},
{"id":{"name":"s_node_gradient_4points","path":"sprites/s_node_gradient_4points/s_node_gradient_4points.yy",},}, {"id":{"name":"s_node_gradient_4points","path":"sprites/s_node_gradient_4points/s_node_gradient_4points.yy",},},
{"id":{"name":"s_node_gradient_out","path":"sprites/s_node_gradient_out/s_node_gradient_out.yy",},}, {"id":{"name":"s_node_gradient_out","path":"sprites/s_node_gradient_out/s_node_gradient_out.yy",},},
{"id":{"name":"s_node_vec3","path":"sprites/s_node_vec3/s_node_vec3.yy",},}, {"id":{"name":"s_node_vec3","path":"sprites/s_node_vec3/s_node_vec3.yy",},},
{"id":{"name":"s_node_strandSim_create","path":"sprites/s_node_strandSim_create/s_node_strandSim_create.yy",},},
{"id":{"name":"node_gradient_shift","path":"scripts/node_gradient_shift/node_gradient_shift.yy",},}, {"id":{"name":"node_gradient_shift","path":"scripts/node_gradient_shift/node_gradient_shift.yy",},},
{"id":{"name":"sh_vertex_normal_pass","path":"shaders/sh_vertex_normal_pass/sh_vertex_normal_pass.yy",},}, {"id":{"name":"sh_vertex_normal_pass","path":"shaders/sh_vertex_normal_pass/sh_vertex_normal_pass.yy",},},
{"id":{"name":"s_node_pack_sprite","path":"sprites/s_node_pack_sprite/s_node_pack_sprite.yy",},},
{"id":{"name":"surface_valid","path":"scripts/surface_valid/surface_valid.yy",},}, {"id":{"name":"surface_valid","path":"scripts/surface_valid/surface_valid.yy",},},
{"id":{"name":"steam_ugc_collection","path":"scripts/steam_ugc_collection/steam_ugc_collection.yy",},}, {"id":{"name":"steam_ugc_collection","path":"scripts/steam_ugc_collection/steam_ugc_collection.yy",},},
{"id":{"name":"sh_blur_zoom","path":"shaders/sh_blur_zoom/sh_blur_zoom.yy",},}, {"id":{"name":"sh_blur_zoom","path":"shaders/sh_blur_zoom/sh_blur_zoom.yy",},},
@ -804,6 +833,7 @@
{"id":{"name":"node_posterize","path":"scripts/node_posterize/node_posterize.yy",},}, {"id":{"name":"node_posterize","path":"scripts/node_posterize/node_posterize.yy",},},
{"id":{"name":"o_dialog_image_array_edit","path":"objects/o_dialog_image_array_edit/o_dialog_image_array_edit.yy",},}, {"id":{"name":"o_dialog_image_array_edit","path":"objects/o_dialog_image_array_edit/o_dialog_image_array_edit.yy",},},
{"id":{"name":"s_ui_base_white","path":"sprites/s_ui_base_white/s_ui_base_white.yy",},}, {"id":{"name":"s_ui_base_white","path":"sprites/s_ui_base_white/s_ui_base_white.yy",},},
{"id":{"name":"node_color_mix","path":"scripts/node_color_mix/node_color_mix.yy",},},
{"id":{"name":"s_node_array_range","path":"sprites/s_node_array_range/s_node_array_range.yy",},}, {"id":{"name":"s_node_array_range","path":"sprites/s_node_array_range/s_node_array_range.yy",},},
{"id":{"name":"sh_fd_advect_material_a_16_glsl","path":"shaders/sh_fd_advect_material_a_16_glsl/sh_fd_advect_material_a_16_glsl.yy",},}, {"id":{"name":"sh_fd_advect_material_a_16_glsl","path":"shaders/sh_fd_advect_material_a_16_glsl/sh_fd_advect_material_a_16_glsl.yy",},},
{"id":{"name":"distribution_function","path":"scripts/distribution_function/distribution_function.yy",},}, {"id":{"name":"distribution_function","path":"scripts/distribution_function/distribution_function.yy",},},
@ -824,8 +854,10 @@
{"id":{"name":"meta_data","path":"scripts/meta_data/meta_data.yy",},}, {"id":{"name":"meta_data","path":"scripts/meta_data/meta_data.yy",},},
{"id":{"name":"node_find_pixel","path":"scripts/node_find_pixel/node_find_pixel.yy",},}, {"id":{"name":"node_find_pixel","path":"scripts/node_find_pixel/node_find_pixel.yy",},},
{"id":{"name":"node_scatter_points","path":"scripts/node_scatter_points/node_scatter_points.yy",},}, {"id":{"name":"node_scatter_points","path":"scripts/node_scatter_points/node_scatter_points.yy",},},
{"id":{"name":"pack_bottom_left","path":"scripts/pack_bottom_left/pack_bottom_left.yy",},},
{"id":{"name":"o_dialog_lua_reference","path":"objects/o_dialog_lua_reference/o_dialog_lua_reference.yy",},}, {"id":{"name":"o_dialog_lua_reference","path":"objects/o_dialog_lua_reference/o_dialog_lua_reference.yy",},},
{"id":{"name":"node_surface_data","path":"scripts/node_surface_data/node_surface_data.yy",},}, {"id":{"name":"node_surface_data","path":"scripts/node_surface_data/node_surface_data.yy",},},
{"id":{"name":"node_strand_gravity","path":"scripts/node_strand_gravity/node_strand_gravity.yy",},},
{"id":{"name":"load_palette","path":"scripts/load_palette/load_palette.yy",},}, {"id":{"name":"load_palette","path":"scripts/load_palette/load_palette.yy",},},
{"id":{"name":"sh_alpha_cutoff","path":"shaders/sh_alpha_cutoff/sh_alpha_cutoff.yy",},}, {"id":{"name":"sh_alpha_cutoff","path":"shaders/sh_alpha_cutoff/sh_alpha_cutoff.yy",},},
{"id":{"name":"luaHighlight","path":"scripts/luaHighlight/luaHighlight.yy",},}, {"id":{"name":"luaHighlight","path":"scripts/luaHighlight/luaHighlight.yy",},},
@ -910,7 +942,9 @@
{"id":{"name":"node_VFX_effect_attract","path":"scripts/node_VFX_effect_attract/node_VFX_effect_attract.yy",},}, {"id":{"name":"node_VFX_effect_attract","path":"scripts/node_VFX_effect_attract/node_VFX_effect_attract.yy",},},
{"id":{"name":"node_fluid_repulse","path":"scripts/node_fluid_repulse/node_fluid_repulse.yy",},}, {"id":{"name":"node_fluid_repulse","path":"scripts/node_fluid_repulse/node_fluid_repulse.yy",},},
{"id":{"name":"s_node_text_splice","path":"sprites/s_node_text_splice/s_node_text_splice.yy",},}, {"id":{"name":"s_node_text_splice","path":"sprites/s_node_text_splice/s_node_text_splice.yy",},},
{"id":{"name":"__atlas","path":"scripts/__atlas/__atlas.yy",},},
{"id":{"name":"node_3d_object_transform","path":"scripts/node_3d_object_transform/node_3d_object_transform.yy",},}, {"id":{"name":"node_3d_object_transform","path":"scripts/node_3d_object_transform/node_3d_object_transform.yy",},},
{"id":{"name":"sh_draw_single_channel","path":"shaders/sh_draw_single_channel/sh_draw_single_channel.yy",},},
{"id":{"name":"draw_sprite_ext_override","path":"scripts/draw_sprite_ext_override/draw_sprite_ext_override.yy",},}, {"id":{"name":"draw_sprite_ext_override","path":"scripts/draw_sprite_ext_override/draw_sprite_ext_override.yy",},},
{"id":{"name":"node_array_add","path":"scripts/node_array_add/node_array_add.yy",},}, {"id":{"name":"node_array_add","path":"scripts/node_array_add/node_array_add.yy",},},
{"id":{"name":"s_node_array_set","path":"sprites/s_node_array_set/s_node_array_set.yy",},}, {"id":{"name":"s_node_array_set","path":"sprites/s_node_array_set/s_node_array_set.yy",},},
@ -918,6 +952,7 @@
{"id":{"name":"__background_get_internal","path":"scripts/__background_get_internal/__background_get_internal.yy",},}, {"id":{"name":"__background_get_internal","path":"scripts/__background_get_internal/__background_get_internal.yy",},},
{"id":{"name":"sh_combine_hsv","path":"shaders/sh_combine_hsv/sh_combine_hsv.yy",},}, {"id":{"name":"sh_combine_hsv","path":"shaders/sh_combine_hsv/sh_combine_hsv.yy",},},
{"id":{"name":"s_node_array_insert","path":"sprites/s_node_array_insert/s_node_array_insert.yy",},}, {"id":{"name":"s_node_array_insert","path":"sprites/s_node_array_insert/s_node_array_insert.yy",},},
{"id":{"name":"nodeValue_drawer","path":"scripts/nodeValue_drawer/nodeValue_drawer.yy",},},
{"id":{"name":"node_noise","path":"scripts/node_noise/node_noise.yy",},}, {"id":{"name":"node_noise","path":"scripts/node_noise/node_noise.yy",},},
{"id":{"name":"mtl_reader","path":"scripts/mtl_reader/mtl_reader.yy",},}, {"id":{"name":"mtl_reader","path":"scripts/mtl_reader/mtl_reader.yy",},},
{"id":{"name":"s_node_3d_array","path":"sprites/s_node_3d_array/s_node_3d_array.yy",},}, {"id":{"name":"s_node_3d_array","path":"sprites/s_node_3d_array/s_node_3d_array.yy",},},
@ -934,6 +969,7 @@
{"id":{"name":"node_boolean","path":"scripts/node_boolean/node_boolean.yy",},}, {"id":{"name":"node_boolean","path":"scripts/node_boolean/node_boolean.yy",},},
{"id":{"name":"node_grid_tri","path":"scripts/node_grid_tri/node_grid_tri.yy",},}, {"id":{"name":"node_grid_tri","path":"scripts/node_grid_tri/node_grid_tri.yy",},},
{"id":{"name":"node_average","path":"scripts/node_average/node_average.yy",},}, {"id":{"name":"node_average","path":"scripts/node_average/node_average.yy",},},
{"id":{"name":"node_mesh_transform","path":"scripts/node_mesh_transform/node_mesh_transform.yy",},},
{"id":{"name":"node_fluid_turbulence","path":"scripts/node_fluid_turbulence/node_fluid_turbulence.yy",},}, {"id":{"name":"node_fluid_turbulence","path":"scripts/node_fluid_turbulence/node_fluid_turbulence.yy",},},
{"id":{"name":"sh_sdf","path":"shaders/sh_sdf/sh_sdf.yy",},}, {"id":{"name":"sh_sdf","path":"shaders/sh_sdf/sh_sdf.yy",},},
{"id":{"name":"slider","path":"scripts/slider/slider.yy",},}, {"id":{"name":"slider","path":"scripts/slider/slider.yy",},},
@ -955,6 +991,7 @@
{"id":{"name":"node_iterator_each_output","path":"scripts/node_iterator_each_output/node_iterator_each_output.yy",},}, {"id":{"name":"node_iterator_each_output","path":"scripts/node_iterator_each_output/node_iterator_each_output.yy",},},
{"id":{"name":"o_dialog_anim_time_scaler","path":"objects/o_dialog_anim_time_scaler/o_dialog_anim_time_scaler.yy",},}, {"id":{"name":"o_dialog_anim_time_scaler","path":"objects/o_dialog_anim_time_scaler/o_dialog_anim_time_scaler.yy",},},
{"id":{"name":"boneObject","path":"scripts/boneObject/boneObject.yy",},}, {"id":{"name":"boneObject","path":"scripts/boneObject/boneObject.yy",},},
{"id":{"name":"s_node_strandSim_render_texture","path":"sprites/s_node_strandSim_render_texture/s_node_strandSim_render_texture.yy",},},
{"id":{"name":"sh_fd_advect_material_a_8_glsl","path":"shaders/sh_fd_advect_material_a_8_glsl/sh_fd_advect_material_a_8_glsl.yy",},}, {"id":{"name":"sh_fd_advect_material_a_8_glsl","path":"shaders/sh_fd_advect_material_a_8_glsl/sh_fd_advect_material_a_8_glsl.yy",},},
{"id":{"name":"node_color_remove","path":"scripts/node_color_remove/node_color_remove.yy",},}, {"id":{"name":"node_color_remove","path":"scripts/node_color_remove/node_color_remove.yy",},},
{"id":{"name":"FileDropper","path":"extensions/FileDropper/FileDropper.yy",},}, {"id":{"name":"FileDropper","path":"extensions/FileDropper/FileDropper.yy",},},
@ -986,6 +1023,7 @@
{"id":{"name":"sh_blend_subtract","path":"shaders/sh_blend_subtract/sh_blend_subtract.yy",},}, {"id":{"name":"sh_blend_subtract","path":"shaders/sh_blend_subtract/sh_blend_subtract.yy",},},
{"id":{"name":"o_dialog_file_name","path":"objects/o_dialog_file_name/o_dialog_file_name.yy",},}, {"id":{"name":"o_dialog_file_name","path":"objects/o_dialog_file_name/o_dialog_file_name.yy",},},
{"id":{"name":"panel_animation","path":"scripts/panel_animation/panel_animation.yy",},}, {"id":{"name":"panel_animation","path":"scripts/panel_animation/panel_animation.yy",},},
{"id":{"name":"node_strand_create","path":"scripts/node_strand_create/node_strand_create.yy",},},
{"id":{"name":"sh_gradient","path":"shaders/sh_gradient/sh_gradient.yy",},}, {"id":{"name":"sh_gradient","path":"shaders/sh_gradient/sh_gradient.yy",},},
{"id":{"name":"node_json_file_read","path":"scripts/node_json_file_read/node_json_file_read.yy",},}, {"id":{"name":"node_json_file_read","path":"scripts/node_json_file_read/node_json_file_read.yy",},},
{"id":{"name":"s_node_array_remove","path":"sprites/s_node_array_remove/s_node_array_remove.yy",},}, {"id":{"name":"s_node_array_remove","path":"sprites/s_node_array_remove/s_node_array_remove.yy",},},
@ -1001,6 +1039,7 @@
{"id":{"name":"s_node_blur_simple","path":"sprites/s_node_blur_simple/s_node_blur_simple.yy",},}, {"id":{"name":"s_node_blur_simple","path":"sprites/s_node_blur_simple/s_node_blur_simple.yy",},},
{"id":{"name":"node_VFX_spawner","path":"scripts/node_VFX_spawner/node_VFX_spawner.yy",},}, {"id":{"name":"node_VFX_spawner","path":"scripts/node_VFX_spawner/node_VFX_spawner.yy",},},
{"id":{"name":"s_node_equation","path":"sprites/s_node_equation/s_node_equation.yy",},}, {"id":{"name":"s_node_equation","path":"sprites/s_node_equation/s_node_equation.yy",},},
{"id":{"name":"_draw_defines","path":"scripts/_draw_defines/_draw_defines.yy",},},
{"id":{"name":"sh_color_replace","path":"shaders/sh_color_replace/sh_color_replace.yy",},}, {"id":{"name":"sh_color_replace","path":"shaders/sh_color_replace/sh_color_replace.yy",},},
{"id":{"name":"rotator","path":"scripts/rotator/rotator.yy",},}, {"id":{"name":"rotator","path":"scripts/rotator/rotator.yy",},},
{"id":{"name":"s_node_edge_detect","path":"sprites/s_node_edge_detect/s_node_edge_detect.yy",},}, {"id":{"name":"s_node_edge_detect","path":"sprites/s_node_edge_detect/s_node_edge_detect.yy",},},
@ -1010,6 +1049,7 @@
{"id":{"name":"draw_overlay","path":"scripts/draw_overlay/draw_overlay.yy",},}, {"id":{"name":"draw_overlay","path":"scripts/draw_overlay/draw_overlay.yy",},},
{"id":{"name":"__background_get","path":"scripts/__background_get/__background_get.yy",},}, {"id":{"name":"__background_get","path":"scripts/__background_get/__background_get.yy",},},
{"id":{"name":"s_node_text_display","path":"sprites/s_node_text_display/s_node_text_display.yy",},}, {"id":{"name":"s_node_text_display","path":"sprites/s_node_text_display/s_node_text_display.yy",},},
{"id":{"name":"node_strand_render_texture","path":"scripts/node_strand_render_texture/node_strand_render_texture.yy",},},
{"id":{"name":"luaRenderer","path":"scripts/luaRenderer/luaRenderer.yy",},}, {"id":{"name":"luaRenderer","path":"scripts/luaRenderer/luaRenderer.yy",},},
{"id":{"name":"node_blur_zoom","path":"scripts/node_blur_zoom/node_blur_zoom.yy",},}, {"id":{"name":"node_blur_zoom","path":"scripts/node_blur_zoom/node_blur_zoom.yy",},},
{"id":{"name":"node_bloom","path":"scripts/node_bloom/node_bloom.yy",},}, {"id":{"name":"node_bloom","path":"scripts/node_bloom/node_bloom.yy",},},
@ -1017,6 +1057,7 @@
{"id":{"name":"sh_blend_overlay","path":"shaders/sh_blend_overlay/sh_blend_overlay.yy",},}, {"id":{"name":"sh_blend_overlay","path":"shaders/sh_blend_overlay/sh_blend_overlay.yy",},},
{"id":{"name":"node_sprite_stack","path":"scripts/node_sprite_stack/node_sprite_stack.yy",},}, {"id":{"name":"node_sprite_stack","path":"scripts/node_sprite_stack/node_sprite_stack.yy",},},
{"id":{"name":"s_node_json_file_read","path":"sprites/s_node_json_file_read/s_node_json_file_read.yy",},}, {"id":{"name":"s_node_json_file_read","path":"sprites/s_node_json_file_read/s_node_json_file_read.yy",},},
{"id":{"name":"__strandSim","path":"scripts/__strandSim/__strandSim.yy",},},
{"id":{"name":"sh_shape","path":"shaders/sh_shape/sh_shape.yy",},}, {"id":{"name":"sh_shape","path":"shaders/sh_shape/sh_shape.yy",},},
{"id":{"name":"draw_line_width2","path":"scripts/draw_line_width2/draw_line_width2.yy",},}, {"id":{"name":"draw_line_width2","path":"scripts/draw_line_width2/draw_line_width2.yy",},},
{"id":{"name":"matrixGrid","path":"scripts/matrixGrid/matrixGrid.yy",},}, {"id":{"name":"matrixGrid","path":"scripts/matrixGrid/matrixGrid.yy",},},
@ -1030,10 +1071,11 @@
{"id":{"name":"node_noise_grid_hex","path":"scripts/node_noise_grid_hex/node_noise_grid_hex.yy",},}, {"id":{"name":"node_noise_grid_hex","path":"scripts/node_noise_grid_hex/node_noise_grid_hex.yy",},},
{"id":{"name":"node_lua_global","path":"scripts/node_lua_global/node_lua_global.yy",},}, {"id":{"name":"node_lua_global","path":"scripts/node_lua_global/node_lua_global.yy",},},
{"id":{"name":"o_dialog_preset","path":"objects/o_dialog_preset/o_dialog_preset.yy",},}, {"id":{"name":"o_dialog_preset","path":"objects/o_dialog_preset/o_dialog_preset.yy",},},
{"id":{"name":"s_node_mesh_transform","path":"sprites/s_node_mesh_transform/s_node_mesh_transform.yy",},},
{"id":{"name":"o_dialog_tunnels","path":"objects/o_dialog_tunnels/o_dialog_tunnels.yy",},}, {"id":{"name":"o_dialog_tunnels","path":"objects/o_dialog_tunnels/o_dialog_tunnels.yy",},},
{"id":{"name":"s_node_erode","path":"sprites/s_node_erode/s_node_erode.yy",},}, {"id":{"name":"s_node_erode","path":"sprites/s_node_erode/s_node_erode.yy",},},
{"id":{"name":"node_particle","path":"scripts/node_particle/node_particle.yy",},}, {"id":{"name":"node_particle","path":"scripts/node_particle/node_particle.yy",},},
{"id":{"name":"level_histogram","path":"scripts/level_histogram/level_histogram.yy",},}, {"id":{"name":"histogram_drawer","path":"scripts/histogram_drawer/histogram_drawer.yy",},},
{"id":{"name":"node_array_range","path":"scripts/node_array_range/node_array_range.yy",},}, {"id":{"name":"node_array_range","path":"scripts/node_array_range/node_array_range.yy",},},
{"id":{"name":"s_node_tunnel_in","path":"sprites/s_node_tunnel_in/s_node_tunnel_in.yy",},}, {"id":{"name":"s_node_tunnel_in","path":"sprites/s_node_tunnel_in/s_node_tunnel_in.yy",},},
{"id":{"name":"o_dialog_graph_grid","path":"objects/o_dialog_graph_grid/o_dialog_graph_grid.yy",},}, {"id":{"name":"o_dialog_graph_grid","path":"objects/o_dialog_graph_grid/o_dialog_graph_grid.yy",},},
@ -1042,11 +1084,13 @@
{"id":{"name":"obj_reader","path":"scripts/obj_reader/obj_reader.yy",},}, {"id":{"name":"obj_reader","path":"scripts/obj_reader/obj_reader.yy",},},
{"id":{"name":"sh_invert","path":"shaders/sh_invert/sh_invert.yy",},}, {"id":{"name":"sh_invert","path":"shaders/sh_invert/sh_invert.yy",},},
{"id":{"name":"preview_overlay_puppet","path":"scripts/preview_overlay_puppet/preview_overlay_puppet.yy",},}, {"id":{"name":"preview_overlay_puppet","path":"scripts/preview_overlay_puppet/preview_overlay_puppet.yy",},},
{"id":{"name":"__mesh","path":"scripts/__mesh/__mesh.yy",},},
{"id":{"name":"s_icon_64","path":"sprites/s_icon_64/s_icon_64.yy",},}, {"id":{"name":"s_icon_64","path":"sprites/s_icon_64/s_icon_64.yy",},},
{"id":{"name":"save_function","path":"scripts/save_function/save_function.yy",},}, {"id":{"name":"save_function","path":"scripts/save_function/save_function.yy",},},
{"id":{"name":"s_node_gradient_replace","path":"sprites/s_node_gradient_replace/s_node_gradient_replace.yy",},}, {"id":{"name":"s_node_gradient_replace","path":"sprites/s_node_gradient_replace/s_node_gradient_replace.yy",},},
{"id":{"name":"node_perlin_smear","path":"scripts/node_perlin_smear/node_perlin_smear.yy",},}, {"id":{"name":"node_perlin_smear","path":"scripts/node_perlin_smear/node_perlin_smear.yy",},},
{"id":{"name":"node_alpha_cutoff","path":"scripts/node_alpha_cutoff/node_alpha_cutoff.yy",},}, {"id":{"name":"node_alpha_cutoff","path":"scripts/node_alpha_cutoff/node_alpha_cutoff.yy",},},
{"id":{"name":"pack_best_fit","path":"scripts/pack_best_fit/pack_best_fit.yy",},},
{"id":{"name":"sh_channel_R","path":"shaders/sh_channel_R/sh_channel_R.yy",},}, {"id":{"name":"sh_channel_R","path":"shaders/sh_channel_R/sh_channel_R.yy",},},
{"id":{"name":"draw_circle_border","path":"scripts/draw_circle_border/draw_circle_border.yy",},}, {"id":{"name":"draw_circle_border","path":"scripts/draw_circle_border/draw_circle_border.yy",},},
{"id":{"name":"s_node_text_file_write","path":"sprites/s_node_text_file_write/s_node_text_file_write.yy",},}, {"id":{"name":"s_node_text_file_write","path":"sprites/s_node_text_file_write/s_node_text_file_write.yy",},},
@ -1054,18 +1098,20 @@
{"id":{"name":"point_rect_overlap","path":"scripts/point_rect_overlap/point_rect_overlap.yy",},}, {"id":{"name":"point_rect_overlap","path":"scripts/point_rect_overlap/point_rect_overlap.yy",},},
{"id":{"name":"s_node_bevel","path":"sprites/s_node_bevel/s_node_bevel.yy",},}, {"id":{"name":"s_node_bevel","path":"sprites/s_node_bevel/s_node_bevel.yy",},},
{"id":{"name":"color_selector","path":"scripts/color_selector/color_selector.yy",},}, {"id":{"name":"color_selector","path":"scripts/color_selector/color_selector.yy",},},
{"id":{"name":"s_node_strandSim_gravity","path":"sprites/s_node_strandSim_gravity/s_node_strandSim_gravity.yy",},},
{"id":{"name":"node_VFX_effect_turbulence","path":"scripts/node_VFX_effect_turbulence/node_VFX_effect_turbulence.yy",},}, {"id":{"name":"node_VFX_effect_turbulence","path":"scripts/node_VFX_effect_turbulence/node_VFX_effect_turbulence.yy",},},
{"id":{"name":"node_ase_file_read","path":"scripts/node_ase_file_read/node_ase_file_read.yy",},}, {"id":{"name":"node_ase_file_read","path":"scripts/node_ase_file_read/node_ase_file_read.yy",},},
{"id":{"name":"s_workshop_frame","path":"sprites/s_workshop_frame/s_workshop_frame.yy",},}, {"id":{"name":"s_workshop_frame","path":"sprites/s_workshop_frame/s_workshop_frame.yy",},},
{"id":{"name":"sh_seperate_shape_counter","path":"shaders/sh_seperate_shape_counter/sh_seperate_shape_counter.yy",},}, {"id":{"name":"sh_seperate_shape_counter","path":"shaders/sh_seperate_shape_counter/sh_seperate_shape_counter.yy",},},
{"id":{"name":"s_node_stack","path":"sprites/s_node_stack/s_node_stack.yy",},}, {"id":{"name":"s_node_stack","path":"sprites/s_node_stack/s_node_stack.yy",},},
{"id":{"name":"s_fade_up","path":"sprites/s_fade_up/s_fade_up.yy",},}, {"id":{"name":"s_fade_up","path":"sprites/s_fade_up/s_fade_up.yy",},},
{"id":{"name":"panel_globalvar","path":"scripts/panel_globalvar/panel_globalvar.yy",},},
{"id":{"name":"node_guide","path":"scripts/node_guide/node_guide.yy",},}, {"id":{"name":"node_guide","path":"scripts/node_guide/node_guide.yy",},},
{"id":{"name":"fd_rectangle_get_velocity_surface","path":"scripts/fd_rectangle_get_velocity_surface/fd_rectangle_get_velocity_surface.yy",},}, {"id":{"name":"fd_rectangle_get_velocity_surface","path":"scripts/fd_rectangle_get_velocity_surface/fd_rectangle_get_velocity_surface.yy",},},
{"id":{"name":"s_node_text_char_get","path":"sprites/s_node_text_char_get/s_node_text_char_get.yy",},}, {"id":{"name":"s_node_text_char_get","path":"sprites/s_node_text_char_get/s_node_text_char_get.yy",},},
{"id":{"name":"fd_rectangle_get_initial_value_pressure","path":"scripts/fd_rectangle_get_initial_value_pressure/fd_rectangle_get_initial_value_pressure.yy",},}, {"id":{"name":"fd_rectangle_get_initial_value_pressure","path":"scripts/fd_rectangle_get_initial_value_pressure/fd_rectangle_get_initial_value_pressure.yy",},},
{"id":{"name":"node_timeline_preview","path":"scripts/node_timeline_preview/node_timeline_preview.yy",},}, {"id":{"name":"node_timeline_preview","path":"scripts/node_timeline_preview/node_timeline_preview.yy",},},
{"id":{"name":"polygon","path":"scripts/polygon/polygon.yy",},}, {"id":{"name":"__polygon","path":"scripts/__polygon/__polygon.yy",},},
{"id":{"name":"o_dialog_fontscrollbox","path":"objects/o_dialog_fontscrollbox/o_dialog_fontscrollbox.yy",},}, {"id":{"name":"o_dialog_fontscrollbox","path":"objects/o_dialog_fontscrollbox/o_dialog_fontscrollbox.yy",},},
{"id":{"name":"s_node_vfx_output","path":"sprites/s_node_vfx_output/s_node_vfx_output.yy",},}, {"id":{"name":"s_node_vfx_output","path":"sprites/s_node_vfx_output/s_node_vfx_output.yy",},},
{"id":{"name":"sh_greyscale","path":"shaders/sh_greyscale/sh_greyscale.yy",},}, {"id":{"name":"sh_greyscale","path":"shaders/sh_greyscale/sh_greyscale.yy",},},
@ -1073,7 +1119,9 @@
{"id":{"name":"node_global","path":"scripts/node_global/node_global.yy",},}, {"id":{"name":"node_global","path":"scripts/node_global/node_global.yy",},},
{"id":{"name":"spr_gameframe_buttons","path":"sprites/spr_gameframe_buttons/spr_gameframe_buttons.yy",},}, {"id":{"name":"spr_gameframe_buttons","path":"sprites/spr_gameframe_buttons/spr_gameframe_buttons.yy",},},
{"id":{"name":"s_node_draw_stack","path":"sprites/s_node_draw_stack/s_node_draw_stack.yy",},}, {"id":{"name":"s_node_draw_stack","path":"sprites/s_node_draw_stack/s_node_draw_stack.yy",},},
{"id":{"name":"delaunay","path":"scripts/delaunay/delaunay.yy",},},
{"id":{"name":"sh_outline","path":"shaders/sh_outline/sh_outline.yy",},}, {"id":{"name":"sh_outline","path":"shaders/sh_outline/sh_outline.yy",},},
{"id":{"name":"s_node_strandSim_break","path":"sprites/s_node_strandSim_break/s_node_strandSim_break.yy",},},
{"id":{"name":"s_node_scatter_point","path":"sprites/s_node_scatter_point/s_node_scatter_point.yy",},}, {"id":{"name":"s_node_scatter_point","path":"sprites/s_node_scatter_point/s_node_scatter_point.yy",},},
{"id":{"name":"node_checkerboard","path":"scripts/node_checkerboard/node_checkerboard.yy",},}, {"id":{"name":"node_checkerboard","path":"scripts/node_checkerboard/node_checkerboard.yy",},},
{"id":{"name":"node_gradient_output","path":"scripts/node_gradient_output/node_gradient_output.yy",},}, {"id":{"name":"node_gradient_output","path":"scripts/node_gradient_output/node_gradient_output.yy",},},
@ -1093,7 +1141,7 @@
{"id":{"name":"node_sequence_to_anim","path":"scripts/node_sequence_to_anim/node_sequence_to_anim.yy",},}, {"id":{"name":"node_sequence_to_anim","path":"scripts/node_sequence_to_anim/node_sequence_to_anim.yy",},},
{"id":{"name":"sh_blend_replace","path":"shaders/sh_blend_replace/sh_blend_replace.yy",},}, {"id":{"name":"sh_blend_replace","path":"shaders/sh_blend_replace/sh_blend_replace.yy",},},
{"id":{"name":"node_rigid_render","path":"scripts/node_rigid_render/node_rigid_render.yy",},}, {"id":{"name":"node_rigid_render","path":"scripts/node_rigid_render/node_rigid_render.yy",},},
{"id":{"name":"node_image_sheet","path":"scripts/node_image_sheet/node_image_sheet.yy",},}, {"id":{"name":"node_image_splice_sheet","path":"scripts/node_image_splice_sheet/node_image_splice_sheet.yy",},},
{"id":{"name":"sh_posterize_palette","path":"shaders/sh_posterize_palette/sh_posterize_palette.yy",},}, {"id":{"name":"sh_posterize_palette","path":"shaders/sh_posterize_palette/sh_posterize_palette.yy",},},
{"id":{"name":"fd_rectangle_set_material_maccormack_weight","path":"scripts/fd_rectangle_set_material_maccormack_weight/fd_rectangle_set_material_maccormack_weight.yy",},}, {"id":{"name":"fd_rectangle_set_material_maccormack_weight","path":"scripts/fd_rectangle_set_material_maccormack_weight/fd_rectangle_set_material_maccormack_weight.yy",},},
{"id":{"name":"collection_data","path":"scripts/collection_data/collection_data.yy",},}, {"id":{"name":"collection_data","path":"scripts/collection_data/collection_data.yy",},},
@ -1105,6 +1153,7 @@
{"id":{"name":"s_node_array_get","path":"sprites/s_node_array_get/s_node_array_get.yy",},}, {"id":{"name":"s_node_array_get","path":"sprites/s_node_array_get/s_node_array_get.yy",},},
{"id":{"name":"o_dialog_load","path":"objects/o_dialog_load/o_dialog_load.yy",},}, {"id":{"name":"o_dialog_load","path":"objects/o_dialog_load/o_dialog_load.yy",},},
{"id":{"name":"s_node_BW","path":"sprites/s_node_BW/s_node_BW.yy",},}, {"id":{"name":"s_node_BW","path":"sprites/s_node_BW/s_node_BW.yy",},},
{"id":{"name":"s_node_strandSim_collide","path":"sprites/s_node_strandSim_collide/s_node_strandSim_collide.yy",},},
{"id":{"name":"sh_fd_turbulence","path":"shaders/sh_fd_turbulence/sh_fd_turbulence.yy",},}, {"id":{"name":"sh_fd_turbulence","path":"shaders/sh_fd_turbulence/sh_fd_turbulence.yy",},},
{"id":{"name":"s_node_compare","path":"sprites/s_node_compare/s_node_compare.yy",},}, {"id":{"name":"s_node_compare","path":"sprites/s_node_compare/s_node_compare.yy",},},
{"id":{"name":"s_node_fluidSim_domain_queue","path":"sprites/s_node_fluidSim_domain_queue/s_node_fluidSim_domain_queue.yy",},}, {"id":{"name":"s_node_fluidSim_domain_queue","path":"sprites/s_node_fluidSim_domain_queue/s_node_fluidSim_domain_queue.yy",},},
@ -1112,6 +1161,7 @@
{"id":{"name":"s_node_vfx_spawn","path":"sprites/s_node_vfx_spawn/s_node_vfx_spawn.yy",},}, {"id":{"name":"s_node_vfx_spawn","path":"sprites/s_node_vfx_spawn/s_node_vfx_spawn.yy",},},
{"id":{"name":"texture_set_repeat","path":"scripts/texture_set_repeat/texture_set_repeat.yy",},}, {"id":{"name":"texture_set_repeat","path":"scripts/texture_set_repeat/texture_set_repeat.yy",},},
{"id":{"name":"fd_rectangle_update_velocity","path":"scripts/fd_rectangle_update_velocity/fd_rectangle_update_velocity.yy",},}, {"id":{"name":"fd_rectangle_update_velocity","path":"scripts/fd_rectangle_update_velocity/fd_rectangle_update_velocity.yy",},},
{"id":{"name":"__bbox","path":"scripts/__bbox/__bbox.yy",},},
{"id":{"name":"node_shadow","path":"scripts/node_shadow/node_shadow.yy",},}, {"id":{"name":"node_shadow","path":"scripts/node_shadow/node_shadow.yy",},},
{"id":{"name":"s_node_color_data","path":"sprites/s_node_color_data/s_node_color_data.yy",},}, {"id":{"name":"s_node_color_data","path":"sprites/s_node_color_data/s_node_color_data.yy",},},
{"id":{"name":"fd_rectangle_set_repeat","path":"scripts/fd_rectangle_set_repeat/fd_rectangle_set_repeat.yy",},}, {"id":{"name":"fd_rectangle_set_repeat","path":"scripts/fd_rectangle_set_repeat/fd_rectangle_set_repeat.yy",},},
@ -1137,6 +1187,7 @@
{"id":{"name":"string_hexadecimal","path":"scripts/string_hexadecimal/string_hexadecimal.yy",},}, {"id":{"name":"string_hexadecimal","path":"scripts/string_hexadecimal/string_hexadecimal.yy",},},
{"id":{"name":"s_node_camera","path":"sprites/s_node_camera/s_node_camera.yy",},}, {"id":{"name":"s_node_camera","path":"sprites/s_node_camera/s_node_camera.yy",},},
{"id":{"name":"sh_find_boundary","path":"shaders/sh_find_boundary/sh_find_boundary.yy",},}, {"id":{"name":"sh_find_boundary","path":"shaders/sh_find_boundary/sh_find_boundary.yy",},},
{"id":{"name":"_node_strand_affector","path":"scripts/_node_strand_affector/_node_strand_affector.yy",},},
{"id":{"name":"sh_vertex_pnt_light","path":"shaders/sh_vertex_pnt_light/sh_vertex_pnt_light.yy",},}, {"id":{"name":"sh_vertex_pnt_light","path":"shaders/sh_vertex_pnt_light/sh_vertex_pnt_light.yy",},},
{"id":{"name":"surfaceBox","path":"scripts/surfaceBox/surfaceBox.yy",},}, {"id":{"name":"surfaceBox","path":"scripts/surfaceBox/surfaceBox.yy",},},
{"id":{"name":"node_gradient_palette","path":"scripts/node_gradient_palette/node_gradient_palette.yy",},}, {"id":{"name":"node_gradient_palette","path":"scripts/node_gradient_palette/node_gradient_palette.yy",},},
@ -1146,10 +1197,12 @@
{"id":{"name":"s_node_array_length","path":"sprites/s_node_array_length/s_node_array_length.yy",},}, {"id":{"name":"s_node_array_length","path":"sprites/s_node_array_length/s_node_array_length.yy",},},
{"id":{"name":"string_splice","path":"scripts/string_splice/string_splice.yy",},}, {"id":{"name":"string_splice","path":"scripts/string_splice/string_splice.yy",},},
{"id":{"name":"s_node_vfx_input","path":"sprites/s_node_vfx_input/s_node_vfx_input.yy",},}, {"id":{"name":"s_node_vfx_input","path":"sprites/s_node_vfx_input/s_node_vfx_input.yy",},},
{"id":{"name":"node_strand_force_apply","path":"scripts/node_strand_force_apply/node_strand_force_apply.yy",},},
{"id":{"name":"s_node_rigidSim","path":"sprites/s_node_rigidSim/s_node_rigidSim.yy",},}, {"id":{"name":"s_node_rigidSim","path":"sprites/s_node_rigidSim/s_node_rigidSim.yy",},},
{"id":{"name":"sh_seperate_shape_ite","path":"shaders/sh_seperate_shape_ite/sh_seperate_shape_ite.yy",},}, {"id":{"name":"sh_seperate_shape_ite","path":"shaders/sh_seperate_shape_ite/sh_seperate_shape_ite.yy",},},
{"id":{"name":"o_main","path":"objects/o_main/o_main.yy",},}, {"id":{"name":"o_main","path":"objects/o_main/o_main.yy",},},
{"id":{"name":"area_function","path":"scripts/area_function/area_function.yy",},}, {"id":{"name":"area_function","path":"scripts/area_function/area_function.yy",},},
{"id":{"name":"node_mesh_to_path","path":"scripts/node_mesh_to_path/node_mesh_to_path.yy",},},
{"id":{"name":"node_fluid_sim","path":"scripts/node_fluid_sim/node_fluid_sim.yy",},}, {"id":{"name":"node_fluid_sim","path":"scripts/node_fluid_sim/node_fluid_sim.yy",},},
{"id":{"name":"sh_convolution","path":"shaders/sh_convolution/sh_convolution.yy",},}, {"id":{"name":"sh_convolution","path":"shaders/sh_convolution/sh_convolution.yy",},},
{"id":{"name":"s_node_array_shift","path":"sprites/s_node_array_shift/s_node_array_shift.yy",},}, {"id":{"name":"s_node_array_shift","path":"sprites/s_node_array_shift/s_node_array_shift.yy",},},
@ -1201,6 +1254,7 @@
{"id":{"name":"fd_rectangle_get_velocity_width","path":"scripts/fd_rectangle_get_velocity_width/fd_rectangle_get_velocity_width.yy",},}, {"id":{"name":"fd_rectangle_get_velocity_width","path":"scripts/fd_rectangle_get_velocity_width/fd_rectangle_get_velocity_width.yy",},},
{"id":{"name":"node_convolution","path":"scripts/node_convolution/node_convolution.yy",},}, {"id":{"name":"node_convolution","path":"scripts/node_convolution/node_convolution.yy",},},
{"id":{"name":"sh_outline_only","path":"shaders/sh_outline_only/sh_outline_only.yy",},}, {"id":{"name":"sh_outline_only","path":"shaders/sh_outline_only/sh_outline_only.yy",},},
{"id":{"name":"lcd_function","path":"scripts/lcd_function/lcd_function.yy",},},
{"id":{"name":"s_node_destray","path":"sprites/s_node_destray/s_node_destray.yy",},}, {"id":{"name":"s_node_destray","path":"sprites/s_node_destray/s_node_destray.yy",},},
{"id":{"name":"node_color_sampler","path":"scripts/node_color_sampler/node_color_sampler.yy",},}, {"id":{"name":"node_color_sampler","path":"scripts/node_color_sampler/node_color_sampler.yy",},},
{"id":{"name":"s_node_fluidSim_update","path":"sprites/s_node_fluidSim_update/s_node_fluidSim_update.yy",},}, {"id":{"name":"s_node_fluidSim_update","path":"sprites/s_node_fluidSim_update/s_node_fluidSim_update.yy",},},
@ -1232,6 +1286,7 @@
{"id":{"name":"addon_key_displayer","path":"objects/addon_key_displayer/addon_key_displayer.yy",},}, {"id":{"name":"addon_key_displayer","path":"objects/addon_key_displayer/addon_key_displayer.yy",},},
{"id":{"name":"s_node_blur_directional","path":"sprites/s_node_blur_directional/s_node_blur_directional.yy",},}, {"id":{"name":"s_node_blur_directional","path":"sprites/s_node_blur_directional/s_node_blur_directional.yy",},},
{"id":{"name":"distance_to_line","path":"scripts/distance_to_line/distance_to_line.yy",},}, {"id":{"name":"distance_to_line","path":"scripts/distance_to_line/distance_to_line.yy",},},
{"id":{"name":"globalvar_drawer","path":"scripts/globalvar_drawer/globalvar_drawer.yy",},},
{"id":{"name":"s_node_average","path":"sprites/s_node_average/s_node_average.yy",},}, {"id":{"name":"s_node_average","path":"sprites/s_node_average/s_node_average.yy",},},
{"id":{"name":"s_node_sprite_sheet","path":"sprites/s_node_sprite_sheet/s_node_sprite_sheet.yy",},}, {"id":{"name":"s_node_sprite_sheet","path":"sprites/s_node_sprite_sheet/s_node_sprite_sheet.yy",},},
{"id":{"name":"s_node_text_length","path":"sprites/s_node_text_length/s_node_text_length.yy",},}, {"id":{"name":"s_node_text_length","path":"sprites/s_node_text_length/s_node_text_length.yy",},},
@ -1243,9 +1298,11 @@
{"id":{"name":"__background_get_element","path":"scripts/__background_get_element/__background_get_element.yy",},}, {"id":{"name":"__background_get_element","path":"scripts/__background_get_element/__background_get_element.yy",},},
{"id":{"name":"node_animate_curve","path":"scripts/node_animate_curve/node_animate_curve.yy",},}, {"id":{"name":"node_animate_curve","path":"scripts/node_animate_curve/node_animate_curve.yy",},},
{"id":{"name":"window_functions","path":"scripts/window_functions/window_functions.yy",},}, {"id":{"name":"window_functions","path":"scripts/window_functions/window_functions.yy",},},
{"id":{"name":"node_mesh_create_path","path":"scripts/node_mesh_create_path/node_mesh_create_path.yy",},},
{"id":{"name":"sh_fd_calculate_pressure_srj_glsl","path":"shaders/sh_fd_calculate_pressure_srj_glsl/sh_fd_calculate_pressure_srj_glsl.yy",},}, {"id":{"name":"sh_fd_calculate_pressure_srj_glsl","path":"shaders/sh_fd_calculate_pressure_srj_glsl/sh_fd_calculate_pressure_srj_glsl.yy",},},
{"id":{"name":"curve_bounce_function","path":"scripts/curve_bounce_function/curve_bounce_function.yy",},}, {"id":{"name":"curve_bounce_function","path":"scripts/curve_bounce_function/curve_bounce_function.yy",},},
{"id":{"name":"fd_rectangle_replace_material_surface","path":"scripts/fd_rectangle_replace_material_surface/fd_rectangle_replace_material_surface.yy",},}, {"id":{"name":"fd_rectangle_replace_material_surface","path":"scripts/fd_rectangle_replace_material_surface/fd_rectangle_replace_material_surface.yy",},},
{"id":{"name":"pack_skyline","path":"scripts/pack_skyline/pack_skyline.yy",},},
{"id":{"name":"fd_x","path":"scripts/fd_x/fd_x.yy",},}, {"id":{"name":"fd_x","path":"scripts/fd_x/fd_x.yy",},},
{"id":{"name":"s_node_number","path":"sprites/s_node_number/s_node_number.yy",},}, {"id":{"name":"s_node_number","path":"sprites/s_node_number/s_node_number.yy",},},
{"id":{"name":"gif_reader","path":"scripts/gif_reader/gif_reader.yy",},}, {"id":{"name":"gif_reader","path":"scripts/gif_reader/gif_reader.yy",},},
@ -1285,7 +1342,7 @@
{"id":{"name":"node_curve","path":"scripts/node_curve/node_curve.yy",},}, {"id":{"name":"node_curve","path":"scripts/node_curve/node_curve.yy",},},
{"id":{"name":"sh_alpha_hash","path":"shaders/sh_alpha_hash/sh_alpha_hash.yy",},}, {"id":{"name":"sh_alpha_hash","path":"shaders/sh_alpha_hash/sh_alpha_hash.yy",},},
{"id":{"name":"sh_blur_alpha","path":"shaders/sh_blur_alpha/sh_blur_alpha.yy",},}, {"id":{"name":"sh_blur_alpha","path":"shaders/sh_blur_alpha/sh_blur_alpha.yy",},},
{"id":{"name":"node_sprite_sheet","path":"scripts/node_sprite_sheet/node_sprite_sheet.yy",},}, {"id":{"name":"node_render_sprite_sheet","path":"scripts/node_render_sprite_sheet/node_render_sprite_sheet.yy",},},
{"id":{"name":"textArrayBox","path":"scripts/textArrayBox/textArrayBox.yy",},}, {"id":{"name":"textArrayBox","path":"scripts/textArrayBox/textArrayBox.yy",},},
{"id":{"name":"value_snap","path":"scripts/value_snap/value_snap.yy",},}, {"id":{"name":"value_snap","path":"scripts/value_snap/value_snap.yy",},},
{"id":{"name":"node_sdf","path":"scripts/node_sdf/node_sdf.yy",},}, {"id":{"name":"node_sdf","path":"scripts/node_sdf/node_sdf.yy",},},
@ -1339,6 +1396,8 @@
{"id":{"name":"node_combine_hsv","path":"scripts/node_combine_hsv/node_combine_hsv.yy",},}, {"id":{"name":"node_combine_hsv","path":"scripts/node_combine_hsv/node_combine_hsv.yy",},},
{"id":{"name":"node_dilate","path":"scripts/node_dilate/node_dilate.yy",},}, {"id":{"name":"node_dilate","path":"scripts/node_dilate/node_dilate.yy",},},
{"id":{"name":"fd_rectangle_get_acceleration_b","path":"scripts/fd_rectangle_get_acceleration_b/fd_rectangle_get_acceleration_b.yy",},}, {"id":{"name":"fd_rectangle_get_acceleration_b","path":"scripts/fd_rectangle_get_acceleration_b/fd_rectangle_get_acceleration_b.yy",},},
{"id":{"name":"surface_draw_functions","path":"scripts/surface_draw_functions/surface_draw_functions.yy",},},
{"id":{"name":"pack_shelf","path":"scripts/pack_shelf/pack_shelf.yy",},},
{"id":{"name":"s_node_path_trim","path":"sprites/s_node_path_trim/s_node_path_trim.yy",},}, {"id":{"name":"s_node_path_trim","path":"sprites/s_node_path_trim/s_node_path_trim.yy",},},
{"id":{"name":"libfilesystem","path":"extensions/libfilesystem/libfilesystem.yy",},}, {"id":{"name":"libfilesystem","path":"extensions/libfilesystem/libfilesystem.yy",},},
{"id":{"name":"node_channels_hsv","path":"scripts/node_channels_hsv/node_channels_hsv.yy",},}, {"id":{"name":"node_channels_hsv","path":"scripts/node_channels_hsv/node_channels_hsv.yy",},},
@ -1353,6 +1412,7 @@
{"id":{"name":"s_kenney","path":"sprites/s_kenney/s_kenney.yy",},}, {"id":{"name":"s_kenney","path":"sprites/s_kenney/s_kenney.yy",},},
{"id":{"name":"testing_script","path":"scripts/testing_script/testing_script.yy",},}, {"id":{"name":"testing_script","path":"scripts/testing_script/testing_script.yy",},},
{"id":{"name":"node_feedback","path":"scripts/node_feedback/node_feedback.yy",},}, {"id":{"name":"node_feedback","path":"scripts/node_feedback/node_feedback.yy",},},
{"id":{"name":"node_strand_update","path":"scripts/node_strand_update/node_strand_update.yy",},},
{"id":{"name":"sh_grid_noise","path":"shaders/sh_grid_noise/sh_grid_noise.yy",},}, {"id":{"name":"sh_grid_noise","path":"shaders/sh_grid_noise/sh_grid_noise.yy",},},
{"id":{"name":"draw_set_blend_mode","path":"scripts/draw_set_blend_mode/draw_set_blend_mode.yy",},}, {"id":{"name":"draw_set_blend_mode","path":"scripts/draw_set_blend_mode/draw_set_blend_mode.yy",},},
{"id":{"name":"gameframe_macros","path":"scripts/gameframe_macros/gameframe_macros.yy",},}, {"id":{"name":"gameframe_macros","path":"scripts/gameframe_macros/gameframe_macros.yy",},},
@ -1360,6 +1420,7 @@
{"id":{"name":"fd_rectangle_get_material_dissipation_value","path":"scripts/fd_rectangle_get_material_dissipation_value/fd_rectangle_get_material_dissipation_value.yy",},}, {"id":{"name":"fd_rectangle_get_material_dissipation_value","path":"scripts/fd_rectangle_get_material_dissipation_value/fd_rectangle_get_material_dissipation_value.yy",},},
{"id":{"name":"panel_graph","path":"scripts/panel_graph/panel_graph.yy",},}, {"id":{"name":"panel_graph","path":"scripts/panel_graph/panel_graph.yy",},},
{"id":{"name":"node_counter","path":"scripts/node_counter/node_counter.yy",},}, {"id":{"name":"node_counter","path":"scripts/node_counter/node_counter.yy",},},
{"id":{"name":"delau_helper","path":"scripts/delau_helper/delau_helper.yy",},},
{"id":{"name":"s_node_shape_polygon","path":"sprites/s_node_shape_polygon/s_node_shape_polygon.yy",},}, {"id":{"name":"s_node_shape_polygon","path":"sprites/s_node_shape_polygon/s_node_shape_polygon.yy",},},
{"id":{"name":"sh_color_picker_hue","path":"shaders/sh_color_picker_hue/sh_color_picker_hue.yy",},}, {"id":{"name":"sh_color_picker_hue","path":"shaders/sh_color_picker_hue/sh_color_picker_hue.yy",},},
{"id":{"name":"node_path_eval","path":"scripts/node_path_eval/node_path_eval.yy",},}, {"id":{"name":"node_path_eval","path":"scripts/node_path_eval/node_path_eval.yy",},},
@ -1395,6 +1456,7 @@
{"id":{"name":"s_node_palette_sort","path":"sprites/s_node_palette_sort/s_node_palette_sort.yy",},}, {"id":{"name":"s_node_palette_sort","path":"sprites/s_node_palette_sort/s_node_palette_sort.yy",},},
{"id":{"name":"node_greyscale","path":"scripts/node_greyscale/node_greyscale.yy",},}, {"id":{"name":"node_greyscale","path":"scripts/node_greyscale/node_greyscale.yy",},},
{"id":{"name":"node_color_adjustment","path":"scripts/node_color_adjustment/node_color_adjustment.yy",},}, {"id":{"name":"node_color_adjustment","path":"scripts/node_color_adjustment/node_color_adjustment.yy",},},
{"id":{"name":"s_node_strandSim_force","path":"sprites/s_node_strandSim_force/s_node_strandSim_force.yy",},},
{"id":{"name":"s_node_array_reverse","path":"sprites/s_node_array_reverse/s_node_array_reverse.yy",},}, {"id":{"name":"s_node_array_reverse","path":"sprites/s_node_array_reverse/s_node_array_reverse.yy",},},
{"id":{"name":"sh_ani_noise","path":"shaders/sh_ani_noise/sh_ani_noise.yy",},}, {"id":{"name":"sh_ani_noise","path":"shaders/sh_ani_noise/sh_ani_noise.yy",},},
{"id":{"name":"rectangle_collision","path":"scripts/rectangle_collision/rectangle_collision.yy",},}, {"id":{"name":"rectangle_collision","path":"scripts/rectangle_collision/rectangle_collision.yy",},},
@ -1425,6 +1487,7 @@
{"id":{"name":"_node_VFX_spawner","path":"scripts/_node_VFX_spawner/_node_VFX_spawner.yy",},}, {"id":{"name":"_node_VFX_spawner","path":"scripts/_node_VFX_spawner/_node_VFX_spawner.yy",},},
{"id":{"name":"sh_channel_B_grey","path":"shaders/sh_channel_B_grey/sh_channel_B_grey.yy",},}, {"id":{"name":"sh_channel_B_grey","path":"shaders/sh_channel_B_grey/sh_channel_B_grey.yy",},},
{"id":{"name":"draw_UI_scale","path":"scripts/draw_UI_scale/draw_UI_scale.yy",},}, {"id":{"name":"draw_UI_scale","path":"scripts/draw_UI_scale/draw_UI_scale.yy",},},
{"id":{"name":"s_node_strandSim_update","path":"sprites/s_node_strandSim_update/s_node_strandSim_update.yy",},},
{"id":{"name":"s_node_RGB_combine","path":"sprites/s_node_RGB_combine/s_node_RGB_combine.yy",},}, {"id":{"name":"s_node_RGB_combine","path":"sprites/s_node_RGB_combine/s_node_RGB_combine.yy",},},
{"id":{"name":"s_node_shadow_cast","path":"sprites/s_node_shadow_cast/s_node_shadow_cast.yy",},}, {"id":{"name":"s_node_shadow_cast","path":"sprites/s_node_shadow_cast/s_node_shadow_cast.yy",},},
{"id":{"name":"path_function","path":"scripts/path_function/path_function.yy",},}, {"id":{"name":"path_function","path":"scripts/path_function/path_function.yy",},},
@ -1463,11 +1526,13 @@
{"id":{"name":"sh_blur_gaussian","path":"shaders/sh_blur_gaussian/sh_blur_gaussian.yy",},}, {"id":{"name":"sh_blur_gaussian","path":"shaders/sh_blur_gaussian/sh_blur_gaussian.yy",},},
{"id":{"name":"node_path_shift","path":"scripts/node_path_shift/node_path_shift.yy",},}, {"id":{"name":"node_path_shift","path":"scripts/node_path_shift/node_path_shift.yy",},},
{"id":{"name":"s_node_3d_cylinder","path":"sprites/s_node_3d_cylinder/s_node_3d_cylinder.yy",},}, {"id":{"name":"s_node_3d_cylinder","path":"sprites/s_node_3d_cylinder/s_node_3d_cylinder.yy",},},
{"id":{"name":"node_strand_break","path":"scripts/node_strand_break/node_strand_break.yy",},},
{"id":{"name":"s_node_vec_split","path":"sprites/s_node_vec_split/s_node_vec_split.yy",},}, {"id":{"name":"s_node_vec_split","path":"sprites/s_node_vec_split/s_node_vec_split.yy",},},
{"id":{"name":"paddingBox","path":"scripts/paddingBox/paddingBox.yy",},}, {"id":{"name":"paddingBox","path":"scripts/paddingBox/paddingBox.yy",},},
{"id":{"name":"fd_rectangle_set_visualization_shader","path":"scripts/fd_rectangle_set_visualization_shader/fd_rectangle_set_visualization_shader.yy",},}, {"id":{"name":"fd_rectangle_set_visualization_shader","path":"scripts/fd_rectangle_set_visualization_shader/fd_rectangle_set_visualization_shader.yy",},},
{"id":{"name":"s_node_ase_layer","path":"sprites/s_node_ase_layer/s_node_ase_layer.yy",},}, {"id":{"name":"s_node_ase_layer","path":"sprites/s_node_ase_layer/s_node_ase_layer.yy",},},
{"id":{"name":"_f_p1","path":"fonts/_f_p1/_f_p1.yy",},}, {"id":{"name":"_f_p1","path":"fonts/_f_p1/_f_p1.yy",},},
{"id":{"name":"tuple_functions","path":"scripts/tuple_functions/tuple_functions.yy",},},
{"id":{"name":"curve_bezier_function","path":"scripts/curve_bezier_function/curve_bezier_function.yy",},}, {"id":{"name":"curve_bezier_function","path":"scripts/curve_bezier_function/curve_bezier_function.yy",},},
{"id":{"name":"sh_blur_simple","path":"shaders/sh_blur_simple/sh_blur_simple.yy",},}, {"id":{"name":"sh_blur_simple","path":"shaders/sh_blur_simple/sh_blur_simple.yy",},},
{"id":{"name":"sh_blend_difference","path":"shaders/sh_blend_difference/sh_blend_difference.yy",},}, {"id":{"name":"sh_blend_difference","path":"shaders/sh_blend_difference/sh_blend_difference.yy",},},
@ -1534,6 +1599,7 @@
{"id":{"name":"fd_rectangle_get_material_surface","path":"scripts/fd_rectangle_get_material_surface/fd_rectangle_get_material_surface.yy",},}, {"id":{"name":"fd_rectangle_get_material_surface","path":"scripts/fd_rectangle_get_material_surface/fd_rectangle_get_material_surface.yy",},},
{"id":{"name":"fd_rectangle_clear","path":"scripts/fd_rectangle_clear/fd_rectangle_clear.yy",},}, {"id":{"name":"fd_rectangle_clear","path":"scripts/fd_rectangle_clear/fd_rectangle_clear.yy",},},
{"id":{"name":"instance_create","path":"scripts/instance_create/instance_create.yy",},}, {"id":{"name":"instance_create","path":"scripts/instance_create/instance_create.yy",},},
{"id":{"name":"__rectangle","path":"scripts/__rectangle/__rectangle.yy",},},
{"id":{"name":"s_node_iterator_index","path":"sprites/s_node_iterator_index/s_node_iterator_index.yy",},}, {"id":{"name":"s_node_iterator_index","path":"sprites/s_node_iterator_index/s_node_iterator_index.yy",},},
{"id":{"name":"node_de_corner","path":"scripts/node_de_corner/node_de_corner.yy",},}, {"id":{"name":"node_de_corner","path":"scripts/node_de_corner/node_de_corner.yy",},},
{"id":{"name":"preferences","path":"scripts/preferences/preferences.yy",},}, {"id":{"name":"preferences","path":"scripts/preferences/preferences.yy",},},
@ -1542,6 +1608,7 @@
{"id":{"name":"s_node_json_file_write","path":"sprites/s_node_json_file_write/s_node_json_file_write.yy",},}, {"id":{"name":"s_node_json_file_write","path":"sprites/s_node_json_file_write/s_node_json_file_write.yy",},},
{"id":{"name":"timer_function","path":"scripts/timer_function/timer_function.yy",},}, {"id":{"name":"timer_function","path":"scripts/timer_function/timer_function.yy",},},
{"id":{"name":"fd_rectangle_get_material_time_step","path":"scripts/fd_rectangle_get_material_time_step/fd_rectangle_get_material_time_step.yy",},}, {"id":{"name":"fd_rectangle_get_material_time_step","path":"scripts/fd_rectangle_get_material_time_step/fd_rectangle_get_material_time_step.yy",},},
{"id":{"name":"node_pack_sprites","path":"scripts/node_pack_sprites/node_pack_sprites.yy",},},
{"id":{"name":"font_data","path":"scripts/font_data/font_data.yy",},}, {"id":{"name":"font_data","path":"scripts/font_data/font_data.yy",},},
{"id":{"name":"animation_curve","path":"scripts/animation_curve/animation_curve.yy",},}, {"id":{"name":"animation_curve","path":"scripts/animation_curve/animation_curve.yy",},},
{"id":{"name":"node_camera","path":"scripts/node_camera/node_camera.yy",},}, {"id":{"name":"node_camera","path":"scripts/node_camera/node_camera.yy",},},
@ -1555,6 +1622,7 @@
{"id":{"name":"__shapes","path":"scripts/__shapes/__shapes.yy",},}, {"id":{"name":"__shapes","path":"scripts/__shapes/__shapes.yy",},},
{"id":{"name":"node_alpha_to_grey","path":"scripts/node_alpha_to_grey/node_alpha_to_grey.yy",},}, {"id":{"name":"node_alpha_to_grey","path":"scripts/node_alpha_to_grey/node_alpha_to_grey.yy",},},
{"id":{"name":"shell_helper","path":"scripts/shell_helper/shell_helper.yy",},}, {"id":{"name":"shell_helper","path":"scripts/shell_helper/shell_helper.yy",},},
{"id":{"name":"node_strand_collision","path":"scripts/node_strand_collision/node_strand_collision.yy",},},
{"id":{"name":"sh_flood_fill_it","path":"shaders/sh_flood_fill_it/sh_flood_fill_it.yy",},}, {"id":{"name":"sh_flood_fill_it","path":"shaders/sh_flood_fill_it/sh_flood_fill_it.yy",},},
{"id":{"name":"draw_corner","path":"scripts/draw_corner/draw_corner.yy",},}, {"id":{"name":"draw_corner","path":"scripts/draw_corner/draw_corner.yy",},},
{"id":{"name":"o_dialog_preference","path":"objects/o_dialog_preference/o_dialog_preference.yy",},}, {"id":{"name":"o_dialog_preference","path":"objects/o_dialog_preference/o_dialog_preference.yy",},},
@ -1570,6 +1638,7 @@
{"id":{"name":"node_iterator_output","path":"scripts/node_iterator_output/node_iterator_output.yy",},}, {"id":{"name":"node_iterator_output","path":"scripts/node_iterator_output/node_iterator_output.yy",},},
{"id":{"name":"debug","path":"scripts/debug/debug.yy",},}, {"id":{"name":"debug","path":"scripts/debug/debug.yy",},},
{"id":{"name":"node_shadow_cast","path":"scripts/node_shadow_cast/node_shadow_cast.yy",},}, {"id":{"name":"node_shadow_cast","path":"scripts/node_shadow_cast/node_shadow_cast.yy",},},
{"id":{"name":"node_strand_render","path":"scripts/node_strand_render/node_strand_render.yy",},},
{"id":{"name":"s_node_3d_obj_combine","path":"sprites/s_node_3d_obj_combine/s_node_3d_obj_combine.yy",},}, {"id":{"name":"s_node_3d_obj_combine","path":"sprites/s_node_3d_obj_combine/s_node_3d_obj_combine.yy",},},
{"id":{"name":"gameframe","path":"scripts/gameframe/gameframe.yy",},}, {"id":{"name":"gameframe","path":"scripts/gameframe/gameframe.yy",},},
{"id":{"name":"o_dialog_assetbox","path":"objects/o_dialog_assetbox/o_dialog_assetbox.yy",},}, {"id":{"name":"o_dialog_assetbox","path":"objects/o_dialog_assetbox/o_dialog_assetbox.yy",},},

Binary file not shown.

View file

@ -79,6 +79,7 @@
"node_blend_simulation": "cyan", "node_blend_simulation": "cyan",
"node_blend_fluid": "blue_dark", "node_blend_fluid": "blue_dark",
"node_blend_canvas": ["white", "orange", 0.5], "node_blend_canvas": ["white", "orange", 0.5],
"node_blend_strand": "orange",
"node_path_overlay_control_line": "blue_grey", "node_path_overlay_control_line": "blue_grey",
"node_wiggler_frame": "blue_grey", "node_wiggler_frame": "blue_grey",
"node_border_file_drop": "cyan", "node_border_file_drop": "cyan",

View file

@ -871,6 +871,13 @@
"yorigin": 16, "yorigin": 16,
"slice": null "slice": null
}, },
"strandSim": {
"path": "./icon/s_strandSim.png",
"subimages": 1,
"xorigin": 16,
"yorigin": 16,
"slice": null
},
"inspector_area": { "inspector_area": {
"path": "./inspector/s_inspector_area_strip2.png", "path": "./inspector/s_inspector_area_strip2.png",
"subimages": 2, "subimages": 2,
@ -1005,28 +1012,28 @@
}, },
"node_junctions_array": { "node_junctions_array": {
"path": "./node/s_node_junctions_array.png", "path": "./node/s_node_junctions_array.png",
"subimages": 17, "subimages": 19,
"xorigin": 16, "xorigin": 16,
"yorigin": 16, "yorigin": 16,
"slice": null "slice": null
}, },
"node_junctions_array_hover": { "node_junctions_array_hover": {
"path": "./node/s_node_junctions_array_hover.png", "path": "./node/s_node_junctions_array_hover.png",
"subimages": 17, "subimages": 19,
"xorigin": 16, "xorigin": 16,
"yorigin": 16, "yorigin": 16,
"slice": null "slice": null
}, },
"node_junctions_single": { "node_junctions_single": {
"path": "./node/s_node_junctions_single.png", "path": "./node/s_node_junctions_single.png",
"subimages": 17, "subimages": 19,
"xorigin": 16, "xorigin": 16,
"yorigin": 16, "yorigin": 16,
"slice": null "slice": null
}, },
"node_junctions_single_hover": { "node_junctions_single_hover": {
"path": "./node/s_node_junctions_single_hover.png", "path": "./node/s_node_junctions_single_hover.png",
"subimages": 17, "subimages": 19,
"xorigin": 16, "xorigin": 16,
"yorigin": 16, "yorigin": 16,
"slice": null "slice": null
@ -1578,6 +1585,13 @@
"yorigin": 24, "yorigin": 24,
"slice": null "slice": null
}, },
"path_tools_transform": {
"path": "./tool/s_path_tools_transform.png",
"subimages": 1,
"xorigin": 24,
"yorigin": 24,
"slice": null
},
"tools_canvas_channel": { "tools_canvas_channel": {
"path": "./tool/s_canvas_channel.png", "path": "./tool/s_canvas_channel.png",
"subimages": 4, "subimages": 4,
@ -1592,6 +1606,41 @@
"yorigin": 24, "yorigin": 24,
"slice": null "slice": null
}, },
"strand_comb": {
"path": "./tool/s_strand_tool_comb.png",
"subimages": 1,
"xorigin": 24,
"yorigin": 24,
"slice": null
},
"strand_cut": {
"path": "./tool/s_strand_tool_cut.png",
"subimages": 1,
"xorigin": 24,
"yorigin": 24,
"slice": null
},
"strand_grab": {
"path": "./tool/s_strand_tool_grab.png",
"subimages": 1,
"xorigin": 24,
"yorigin": 24,
"slice": null
},
"strand_push": {
"path": "./tool/s_strand_tool_push.png",
"subimages": 1,
"xorigin": 24,
"yorigin": 24,
"slice": null
},
"strand_stretch": {
"path": "./tool/s_strand_tool_stretch.png",
"subimages": 1,
"xorigin": 24,
"yorigin": 24,
"slice": null
},
"button": { "button": {
"path": "./widget/s_button_strip3.png", "path": "./widget/s_button_strip3.png",
"subimages": 3, "subimages": 3,
@ -1631,6 +1680,45 @@
"bottom": 7 "bottom": 7
} }
}, },
"button_hide_left": {
"path": "./widget/s_button_hide_left.png",
"subimages": 3,
"xorigin": 0,
"yorigin": 0,
"slice": {
"enabled": true,
"left": 7,
"right": 7,
"top": 7,
"bottom": 7
}
},
"button_hide_middle": {
"path": "./widget/s_button_hide_middle.png",
"subimages": 3,
"xorigin": 0,
"yorigin": 0,
"slice": {
"enabled": true,
"left": 7,
"right": 7,
"top": 7,
"bottom": 7
}
},
"button_hide_right": {
"path": "./widget/s_button_hide_right.png",
"subimages": 3,
"xorigin": 0,
"yorigin": 0,
"slice": {
"enabled": true,
"left": 7,
"right": 7,
"top": 7,
"bottom": 7
}
},
"button_left": { "button_left": {
"path": "./widget/s_button_left_strip3.png", "path": "./widget/s_button_left_strip3.png",
"subimages": 3, "subimages": 3,

File diff suppressed because it is too large Load diff

Binary file not shown.

After

Width:  |  Height:  |  Size: 514 B

File diff suppressed because one or more lines are too long

Binary file not shown.

Before

Width:  |  Height:  |  Size: 7 KiB

After

Width:  |  Height:  |  Size: 7.9 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 5.7 KiB

After

Width:  |  Height:  |  Size: 6.6 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 7.2 KiB

After

Width:  |  Height:  |  Size: 8.1 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 6 KiB

After

Width:  |  Height:  |  Size: 6.9 KiB

File diff suppressed because one or more lines are too long

Binary file not shown.

Before

Width:  |  Height:  |  Size: 818 B

After

Width:  |  Height:  |  Size: 809 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 445 B

After

Width:  |  Height:  |  Size: 441 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 371 B

After

Width:  |  Height:  |  Size: 364 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 315 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 580 B

After

Width:  |  Height:  |  Size: 576 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 328 B

After

Width:  |  Height:  |  Size: 324 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 528 B

After

Width:  |  Height:  |  Size: 522 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 574 B

After

Width:  |  Height:  |  Size: 567 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 555 B

After

Width:  |  Height:  |  Size: 548 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 555 B

After

Width:  |  Height:  |  Size: 548 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 771 B

After

Width:  |  Height:  |  Size: 775 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 883 B

After

Width:  |  Height:  |  Size: 871 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 870 B

After

Width:  |  Height:  |  Size: 854 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 484 B

After

Width:  |  Height:  |  Size: 497 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.2 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 473 B

After

Width:  |  Height:  |  Size: 467 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.4 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 864 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.1 KiB

File diff suppressed because one or more lines are too long

Binary file not shown.

After

Width:  |  Height:  |  Size: 246 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 152 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 250 B

View file

@ -26,6 +26,7 @@
#endregion #endregion
#region windows #region windows
mouse_active = false;
draggable = true; draggable = true;
dialog_dragging = false; dialog_dragging = false;
dialog_drag_sx = 0; dialog_drag_sx = 0;
@ -34,6 +35,7 @@
dialog_drag_my = 0; dialog_drag_my = 0;
function doDrag() { function doDrag() {
mouse_active = true;
if(!draggable) return; if(!draggable) return;
if(dialog_dragging) { if(dialog_dragging) {
@ -44,8 +46,9 @@
dialog_dragging = false; dialog_dragging = false;
} }
if(sFOCUS && mouse_press(mb_left)) {
if(point_in_rectangle(mouse_mx, mouse_my, dialog_x, dialog_y, dialog_x + dialog_w, dialog_y + ui(title_height))) { if(point_in_rectangle(mouse_mx, mouse_my, dialog_x, dialog_y, dialog_x + dialog_w, dialog_y + ui(title_height))) {
mouse_active = false;
if(mouse_press(mb_left, sFOCUS)) {
dialog_dragging = true; dialog_dragging = true;
dialog_drag_sx = dialog_x; dialog_drag_sx = dialog_x;
dialog_drag_sy = dialog_y; dialog_drag_sy = dialog_y;
@ -87,6 +90,7 @@
if(sHOVER && distance_to_line(mouse_mx, mouse_my, dialog_x + dialog_w, dialog_y, if(sHOVER && distance_to_line(mouse_mx, mouse_my, dialog_x + dialog_w, dialog_y,
dialog_x + dialog_w, dialog_y + dialog_h) < 12) { dialog_x + dialog_w, dialog_y + dialog_h) < 12) {
mouse_active = false;
CURSOR = cr_size_we; CURSOR = cr_size_we;
if(mouse_press(mb_left, sFOCUS)) { if(mouse_press(mb_left, sFOCUS)) {
dialog_resizing |= 1 << 0; dialog_resizing |= 1 << 0;
@ -99,6 +103,7 @@
if(sHOVER && distance_to_line(mouse_mx, mouse_my, dialog_x, dialog_y + dialog_h, if(sHOVER && distance_to_line(mouse_mx, mouse_my, dialog_x, dialog_y + dialog_h,
dialog_x + dialog_w, dialog_y + dialog_h) < 12) { dialog_x + dialog_w, dialog_y + dialog_h) < 12) {
mouse_active = false;
if(CURSOR == cr_size_we) if(CURSOR == cr_size_we)
CURSOR = cr_size_nwse; CURSOR = cr_size_nwse;
else else

View file

@ -8,8 +8,6 @@ event_inherited();
node = noone; node = noone;
destroy_on_click_out = true; destroy_on_click_out = true;
anchor = ANCHOR.left | ANCHOR.top;
sep_dragging = -1; sep_dragging = -1;
sep_editing = -1; sep_editing = -1;

View file

@ -17,7 +17,7 @@ if !ready exit;
content.y = cy; content.y = cy;
content.onStepBegin(); content.onStepBegin();
content.pFOCUS = sFOCUS; content.pFOCUS = sFOCUS && mouse_active;
content.pHOVER = sHOVER; content.pHOVER = sHOVER;
panel = surface_verify(panel, dialog_w - content.showHeader * padding * 2, panel = surface_verify(panel, dialog_w - content.showHeader * padding * 2,
@ -26,7 +26,7 @@ if !ready exit;
resetMask(); resetMask();
surface_set_target(panel); surface_set_target(panel);
draw_clear_alpha(0, 0); DRAW_CLEAR
content.drawContent(panel); content.drawContent(panel);
gpu_set_blendmode(bm_subtract); gpu_set_blendmode(bm_subtract);

View file

@ -204,55 +204,6 @@ event_inherited();
#region //NODE #region //NODE
pref_node = ds_list_create(); pref_node = ds_list_create();
ds_list_add(pref_node, "Particle");
ds_list_add(pref_node, [
get_text("pref_max_particles", "Max particles"),
"part_max_amount",
new textBox(TEXTBOX_INPUT.number, function(str) {
PREF_MAP[? "part_max_amount"] = real(str);
PREF_SAVE();
})
]);
ds_list_add(pref_node, "Separate shape");
ds_list_add(pref_node, [
get_text("pref_max_shapes", "Max shapes"),
"shape_separation_max",
new textBox(TEXTBOX_INPUT.number, function(str) {
PREF_MAP[? "shape_separation_max"] = real(str);
PREF_SAVE();
})
]);
ds_list_add(pref_node, "Levels");
ds_list_add(pref_node, [
get_text("pref_histogram_resolution", "Histogram resolution"),
"level_resolution",
new textBox(TEXTBOX_INPUT.number, function(str) {
PREF_MAP[? "level_resolution"] = real(str);
PREF_SAVE();
})
]);
ds_list_add(pref_node, [
get_text("pref_maximum_sampling", "Maximum sampling"),
"level_max_sampling",
new textBox(TEXTBOX_INPUT.number, function(str) {
PREF_MAP[? "level_max_sampling"] = real(str);
PREF_SAVE();
})
]);
ds_list_add(pref_node, "Physics");
ds_list_add(pref_node, [
get_text("pref_verlet_iteration", "Verlet iteration"),
"verlet_iteration",
new textBox(TEXTBOX_INPUT.number, function(str) {
PREF_MAP[? "verlet_iteration"] = real(str);
PREF_SAVE();
})
]);
ds_list_add(pref_node, [ ds_list_add(pref_node, [
get_text("pref_gravity", "Gravity"), get_text("pref_gravity", "Gravity"),
"physics_gravity", "physics_gravity",

View file

@ -41,7 +41,7 @@ if(node_target == noone) {
var sx = dx + pw / 2 - (sw * scale) / 2 + panx; var sx = dx + pw / 2 - (sw * scale) / 2 + panx;
var sy = dy + ph / 2 - (sh * scale) / 2 + pany; var sy = dy + ph / 2 - (sh * scale) / 2 + pany;
draw_surface_ext(s, sx, sy, scale, scale, 0, c_white, 1); draw_surface_ext_safe(s, sx, sy, scale, scale, 0, c_white, 1);
draw_set_color(COLORS._main_icon); draw_set_color(COLORS._main_icon);
draw_rectangle(sx, sy, sx + sw * scale, sy + sh * scale, true); draw_rectangle(sx, sy, sx + sw * scale, sy + sh * scale, true);
@ -53,7 +53,7 @@ if(node_target == noone) {
dx += (sw + 2) * scale; dx += (sw + 2) * scale;
} }
surface_reset_target(); surface_reset_target();
draw_surface(content_surface, px, py); draw_surface_safe(content_surface, px, py);
if(panning) { if(panning) {
panx = pan_sx + (mouse_mx - pan_mx); panx = pan_sx + (mouse_mx - pan_mx);

View file

@ -116,7 +116,7 @@
if(!is_array(path)) path = [ path ]; if(!is_array(path)) path = [ path ];
if(array_length(path) == 0) return; if(array_length(path) == 0) return;
var type = "image"; var type = "others";
for( var i = 0; i < array_length(path); i++ ) { for( var i = 0; i < array_length(path); i++ ) {
var p = path[i]; var p = path[i];
if(directory_exists(p)) continue; if(directory_exists(p)) continue;
@ -126,9 +126,7 @@
case ".png" : case ".png" :
case ".jpg" : case ".jpg" :
case ".jpeg" : case ".jpeg" :
break; type = "image";
default:
type = "others";
break; break;
} }
} }

View file

@ -36,7 +36,7 @@
draw_tooltip_surface(content); draw_tooltip_surface(content);
break; break;
case VALUE_TYPE.rigid : case VALUE_TYPE.rigid :
draw_tooltip_text("[" + get_text("tooltip_rigid_object", "Rigidbody Object") + "id: " + string(content[$ "object"]) + "]"); draw_tooltip_text("[" + get_text("tooltip_rigid_object", "Rigidbody Object") + " (id: " + string(content[$ "object"]) + ")(]");
break; break;
case VALUE_TYPE.particle : case VALUE_TYPE.particle :
var txt = "[" + var txt = "[" +
@ -49,7 +49,19 @@
draw_tooltip_text("[" + get_text("tooltip_path_object", "Path Object") + "]"); draw_tooltip_text("[" + get_text("tooltip_path_object", "Path Object") + "]");
break; break;
case VALUE_TYPE.fdomain : case VALUE_TYPE.fdomain :
draw_tooltip_text("[" + get_text("tooltip_fluid_object", "Fluid Domain Object") + "id: " + string(content) + "]"); draw_tooltip_text("[" + get_text("tooltip_fluid_object", "Fluid Domain Object") + " (id: " + string(content) + ")]");
break;
case VALUE_TYPE.strands :
var txt = get_text("tooltip_strand_object", "Strands Object");
if(is_struct(content))
txt += " (strands: " + string(array_length(content.hairs)) + ")";
draw_tooltip_text("[" + txt + "]");
break;
case VALUE_TYPE.mesh :
var txt = get_text("tooltip_mesh_object", "Mesh Object");
if(is_struct(content))
txt += " (triangles: " + string(array_length(content.triangles)) + ")";
draw_tooltip_text("[" + txt + "]");
break; break;
} }
} else } else

View file

@ -65,7 +65,7 @@
if(ANIMATOR.is_playing || ANIMATOR.rendering) { if(ANIMATOR.is_playing || ANIMATOR.rendering) {
if(ANIMATOR.frame_progress) if(ANIMATOR.frame_progress)
Render(); Render(true);
ANIMATOR.frame_progress = false; ANIMATOR.frame_progress = false;
} else { } else {
if(UPDATE & RENDER_TYPE.full) { if(UPDATE & RENDER_TYPE.full) {

View file

@ -14,7 +14,7 @@
"option_windows_description_info": "Pixel Composer", "option_windows_description_info": "Pixel Composer",
"option_windows_disable_sandbox": true, "option_windows_disable_sandbox": true,
"option_windows_display_cursor": true, "option_windows_display_cursor": true,
"option_windows_display_name": "Pixel Composer 1.13.8", "option_windows_display_name": "Pixel Composer 1.14.0",
"option_windows_enable_steam": false, "option_windows_enable_steam": false,
"option_windows_executable_name": "PixelComposer.exe", "option_windows_executable_name": "PixelComposer.exe",
"option_windows_icon": "icons/icon.ico", "option_windows_icon": "icons/icon.ico",
@ -33,6 +33,6 @@
"option_windows_steam_use_alternative_launcher": false, "option_windows_steam_use_alternative_launcher": false,
"option_windows_texture_page": "2048x2048", "option_windows_texture_page": "2048x2048",
"option_windows_use_splash": false, "option_windows_use_splash": false,
"option_windows_version": "1.13.8.0", "option_windows_version": "1.14.0.0",
"option_windows_vsync": false, "option_windows_vsync": false,
} }

View file

@ -3,17 +3,21 @@ function __lua_noti(txt) {
} }
function __lua_draw_surface_general(surface, xx, yy, xs = 1, ys = 1, rot = 0, color = c_white, alpha = 1) { function __lua_draw_surface_general(surface, xx, yy, xs = 1, ys = 1, rot = 0, color = c_white, alpha = 1) {
draw_surface_ext(surface, xx, yy, xs, ys, rot, color, alpha); if(!is_surface(surface)) return;
draw_surface_ext_safe(surface, xx, yy, xs, ys, rot, color, alpha);
} }
function __lua_draw_surface_transform(surface, xx, yy, xs = 1, ys = 1, rot = 0) { function __lua_draw_surface_transform(surface, xx, yy, xs = 1, ys = 1, rot = 0) {
if(!is_surface(surface)) return;
if(argument_count == 5) ys = argument[4]; if(argument_count == 5) ys = argument[4];
draw_surface_ext(surface, xx, yy, xs, ys, rot, c_white, 1); draw_surface_ext_safe(surface, xx, yy, xs, ys, rot, c_white, 1);
} }
function __lua_draw_surface_colored(surface, xx, yy, color = c_white, alpha = 1) { function __lua_draw_surface_colored(surface, xx, yy, color = c_white, alpha = 1) {
draw_surface_ext(surface, xx, yy, 1, 1, 0, color, alpha); if(!is_surface(surface)) return;
draw_surface_ext_safe(surface, xx, yy, 1, 1, 0, color, alpha);
} }
function __lua_draw_surface(surface, xx, yy) { function __lua_draw_surface(surface, xx, yy) {
draw_surface(surface, xx, yy); if(!is_surface(surface)) return;
draw_surface_safe(surface, xx, yy);
} }
function __lua_draw_rectangle(x0, y0, x1, y1) { function __lua_draw_rectangle(x0, y0, x1, y1) {
draw_rectangle(x0, y0, x1, y1, false); draw_rectangle(x0, y0, x1, y1, false);
@ -65,6 +69,7 @@ function __lua_get_color(_x, _y) {
return surface_getpixel_ext(surf, _x, _y); return surface_getpixel_ext(surf, _x, _y);
} }
function __lua_get_color_surface(surface, _x, _y) { function __lua_get_color_surface(surface, _x, _y) {
if(!is_surface(surface)) return;
return surface_getpixel_ext(surface, _x, _y); return surface_getpixel_ext(surface, _x, _y);
} }

View file

@ -265,7 +265,7 @@ enum CAMERA_PROJ {
gpu_set_ztestenable(true); gpu_set_ztestenable(true);
surface_set_target(_outSurf); surface_set_target(_outSurf);
draw_clear_alpha(0, 0); DRAW_CLEAR
var shader = sh_vertex_pnt_light; var shader = sh_vertex_pnt_light;
if(_pass == "diff") shader = sh_vertex_pnt_light; if(_pass == "diff") shader = sh_vertex_pnt_light;

View file

@ -186,7 +186,7 @@ function __part(_node) constructor {
var cc = (col == -1)? c_white : col.eval(lifeRat); var cc = (col == -1)? c_white : col.eval(lifeRat);
if(blend != c_white) cc = colorMultiply(blend, cc); if(blend != c_white) cc = colorMultiply(blend, cc);
alp_draw = alp * eval_curve_x(alp_fade, lifeRat); alp_draw = alp * eval_curve_x(alp_fade, lifeRat);
draw_surface_ext(ss, _xx, _yy, scx, scy, rot, cc, alp_draw); draw_surface_ext_safe(ss, _xx, _yy, scx, scy, rot, cc, alp_draw);
} }
static getPivot = function() { static getPivot = function() {

View file

@ -0,0 +1,10 @@
function spriteAtlasData(x = 0, y = 0, w = 1, h = 1, surface = noone, index = 0) constructor {
self.surface = surface;
self.index = index;
self.x = x;
self.y = y;
self.w = w;
self.h = h;
static clone = function() { return new spriteAtlasData(x, y, w, h, surface, index); }
}

View file

@ -0,0 +1,11 @@
{
"resourceType": "GMScript",
"resourceVersion": "1.0",
"name": "__atlas",
"isCompatibility": false,
"isDnD": false,
"parent": {
"name": "geometry",
"path": "folders/functions/geometry.yy",
},
}

31
scripts/__bbox/__bbox.gml Normal file
View file

@ -0,0 +1,31 @@
function BoundingBox(minx = noone, miny = noone, maxx = noone, maxy = noone) constructor {
self.minx = minx;
self.miny = miny;
self.maxx = maxx;
self.maxy = maxy;
self.width = 0;
self.height = 0;
static addPoint = function(px, py) {
minx = minx == noone? px : min(minx, px);
miny = miny == noone? py : min(miny, py);
maxx = maxx == noone? px : max(maxx, px);
maxy = maxy == noone? py : max(maxy, py);
width = maxx - minx;
height = maxy - miny;
}
static lerpTo = function(bbox, rat) {
var b = new BoundingBox(
lerp( minx, bbox.minx, rat ),
lerp( miny, bbox.miny, rat ),
lerp( maxx, bbox.maxx, rat ),
lerp( maxy, bbox.maxy, rat )
);
return b;
}
static clone = function() { return new BoundingBox(minx, miny, maxx, maxy); }
}

11
scripts/__bbox/__bbox.yy Normal file
View file

@ -0,0 +1,11 @@
{
"resourceType": "GMScript",
"resourceVersion": "1.0",
"name": "__bbox",
"isCompatibility": false,
"isDnD": false,
"parent": {
"name": "geometry",
"path": "folders/functions/geometry.yy",
},
}

116
scripts/__mesh/__mesh.gml Normal file
View file

@ -0,0 +1,116 @@
function Mesh() constructor {
triangles = [];
static getRandomPoint = function(seed) {
random_set_seed(seed);
if(array_length(triangles) == 0) return [ 0, 0 ];
var tri = triangles[irandom(array_length(triangles) - 1)];
var p0 = tri[0];
var p1 = tri[1];
var p2 = tri[2];
var a1 = random1D(seed); seed++;
var a2 = random1D(seed); seed++;
var _x = (1 - sqrt(a1)) * p0.x + (sqrt(a1) * (1 - a2)) * p1.x + (sqrt(a1) * a2) * p2.x;
var _y = (1 - sqrt(a1)) * p0.y + (sqrt(a1) * (1 - a2)) * p1.y + (sqrt(a1) * a2) * p2.y;
return new Point( _x, _y );
}
static draw = function(_x, _y, _s) {
for( var i = 0; i < array_length(triangles); i++ ) {
var t = triangles[i];
draw_line(_x + t[0].x * _s, _y + t[0].y * _s, _x + t[1].x * _s, _y + t[1].y * _s);
draw_line(_x + t[1].x * _s, _y + t[1].y * _s, _x + t[2].x * _s, _y + t[2].y * _s);
draw_line(_x + t[0].x * _s, _y + t[0].y * _s, _x + t[2].x * _s, _y + t[2].y * _s);
}
}
static pointIn = function(_x, _y) {
for( var i = 0; i < array_length(triangles); i++ ) {
var t = triangles[i];
if(point_in_triangle(_x, _y, t[0].x, t[0].y, t[1].x, t[1].y, t[2].x, t[2].y))
return true;
}
return false;
}
static mergePath = function() {
if(array_length(triangles) == 0) return [];
var segments = [];
var pointsPairs = ds_map_create();
for( var i = 0; i < array_length(triangles); i++ ) {
var t = triangles[i];
for( var j = 0; j < 3; j++ ) {
var p0 = t[(j + 0) % 3];
var p1 = t[(j + 1) % 3];
var overlap = false;
var ind = -1;
var amo = array_length(segments);
for( var k = 0; k < amo; k ++ ) {
if( (segments[k][0].equal(p0) && segments[k][1].equal(p1)) ||
(segments[k][0].equal(p1) && segments[k][1].equal(p0)) ) {
overlap = true;
ind = k;
break;
}
}
if(overlap) array_delete(segments, ind, 1);
else array_push(segments, [ p0, p1 ]);
}
}
for( var i = 0; i < array_length(segments); i++ ) {
var s0 = string(segments[i][0]);
var s1 = string(segments[i][1]);
if(!ds_map_exists(pointsPairs, s0)) pointsPairs[? s0] = [];
if(!ds_map_exists(pointsPairs, s1)) pointsPairs[? s1] = [];
array_push(pointsPairs[? s0], segments[i][1]);
array_push(pointsPairs[? s1], segments[i][0]);
}
var path = [ segments[0][0], segments[0][1] ];
for( var i = 0; i < array_length(segments); i++ ) {
var end_point = path[array_length(path) - 1];
var next_point = array_pop(pointsPairs[? string(end_point) ]);
array_remove(pointsPairs[? string(next_point)], end_point);
array_push(path, next_point);
}
ds_map_destroy(pointsPairs);
return path;
}
static clone = function() {
var msh = new Mesh();
for( var i = 0; i < array_length(triangles); i++ ) {
msh.triangles[i] = [
triangles[i][0].clone(),
triangles[i][1].clone(),
triangles[i][2].clone(),
];
}
return msh;
}
static serialize = function() { return ""; }
static deserialize = function(s) { return self; }
}

11
scripts/__mesh/__mesh.yy Normal file
View file

@ -0,0 +1,11 @@
{
"resourceType": "GMScript",
"resourceVersion": "1.0",
"name": "__mesh",
"isCompatibility": false,
"isDnD": false,
"parent": {
"name": "geometry",
"path": "folders/functions/geometry.yy",
},
}

103
scripts/__path/__path.gml Normal file
View file

@ -0,0 +1,103 @@
function Path() constructor {
lengthTotal = 0;
lengths = [];
lengthAccs = [];
boundary = new BoundingBox();
loop = false;
static getBoundary = function() { return boundary; }
static getAccuLength = function() { return lengthAccs; }
static getSegmentLength = function() { return lengths; }
static getLength = function() { return lengthTotal; }
static getSegmentCount = function() { return 1; }
static getLineCount = function() { return 1; }
static getTangentRatio = function(_rat) { return 0; }
static getPointDistance = function(_seg) { return new Point(0, 0); }
static getPointSegment = function(_seg) { return new Point(0, 0); }
static getPointRatio = function(_rat) { return new Point(0, 0); }
}
function PathSegment() : Path() constructor {
segments = [];
static getBoundary = function() {
if(getSegmentCount() == 0) return new BoundingBox( 0, 0, 0, 0 );
var minx = segments[0].x, maxx = segments[0].x;
var miny = segments[0].y, maxy = segments[0].y;
for( var i = 0; i < array_length(segments); i++ ) {
var s = segments[i];
minx = min(minx, s.x);
maxx = max(maxx, s.x);
miny = min(miny, s.y);
maxy = max(maxy, s.y);
}
return new BoundingBox( minx, miny, maxx, maxy );
}
static getSegmentCount = function() { return array_length(segments); }
static getLineCount = function() { return 1; }
static setSegment = function(segment) {
self.segments = segment;
lengths = [];
lengthAccs = [];
lengthTotal = 0;
var op, np;
for( var i = 0; i < array_length(segment); i++ ) {
np = segment[i];
if(i) {
lengths[i] = point_distance(op.x, op.y, np.x, np.y);
lengthTotal += lengths[i];
lengthAccs[i] = lengthTotal;
}
op = np;
}
}
static getPointDistance = function(_dist) {
for( var i = 1; i < array_length(lengths); i += 1 ) {
if(_dist <= lengths[i]) {
var rat = _dist / lengths[i];
return segments[i - 1].lerpTo(segments[i], rat);
}
_dist -= lengths[i];
}
return new Point(0, 0);
}
static getPointSegment = function(_seg) {
var fr = (floor(_seg)) % getSegmentCount();
var to = (fr + 1) % getSegmentCount();
var st = frac(_seg);
return segments[fr].lerpTo(to, st);
}
static getPointRatio = function(_rat) {
return getPointSegment(frac(_rat) * lengthTotal);
}
static getTangentRatio = function(_rat) {
_rat = frac(_rat);
var l = _rat * lengthTotal;
for( var i = 1; i < array_length(lengths); i += 1 ) {
if(l <= lengths[i]) {
var rat = l / lengths[i];
return segments[i - 1].directionTo(segments[i]);
}
l -= lengths[i];
}
return 0;
}
}

11
scripts/__path/__path.yy Normal file
View file

@ -0,0 +1,11 @@
{
"resourceType": "GMScript",
"resourceVersion": "1.0",
"name": "__path",
"isCompatibility": false,
"isDnD": false,
"parent": {
"name": "geometry",
"path": "folders/functions/geometry.yy",
},
}

View file

@ -0,0 +1,22 @@
function Point(x = 0, y = 0) constructor {
if(is_array(x)) {
self.x = x[0];
self.y = x[1];
} else {
self.x = x;
self.y = y;
}
u = 0;
v = 0;
static add = function(x, y) { self.x += x; self.y += y; return self; }
static addPoint = function(p) { self.x += p.x; self.y += p.y; return self; }
static lerpTo = function(p, rat) { return new Point( lerp(x, p.x, rat), lerp(y, p.y, rat) ); }
static directionTo = function(p) { return point_direction(x, y, p.x, p.y); }
static distanceTo = function(p) { return point_distance(x, y, p.x, p.y); }
static equal = function(p) { return x == p.x && y == p.y; }
static clone = function(){ return new Point(x, y); }
static toArray = function() { return [ x, y ]; }
}

View file

@ -0,0 +1,11 @@
{
"resourceType": "GMScript",
"resourceVersion": "1.0",
"name": "__point",
"isCompatibility": false,
"isDnD": false,
"parent": {
"name": "geometry",
"path": "folders/functions/geometry.yy",
},
}

View file

@ -3,12 +3,12 @@ function polygon_simplify(points, tolerance = 4) {
var len = array_length(points); var len = array_length(points);
for( var i = 0; i < len; i++ ) { for( var i = 0; i < len; i++ ) {
var _px0 = points[i][0]; var _px0 = points[i].x;
var _py0 = points[i][1]; var _py0 = points[i].y;
var _px1 = points[safe_mod(i + 1, len)][0]; var _px1 = points[safe_mod(i + 1, len)].x;
var _py1 = points[safe_mod(i + 1, len)][1]; var _py1 = points[safe_mod(i + 1, len)].y;
var _px2 = points[safe_mod(i + 2, len)][0]; var _px2 = points[safe_mod(i + 2, len)].x;
var _py2 = points[safe_mod(i + 2, len)][1]; var _py2 = points[safe_mod(i + 2, len)].y;
var dir0 = point_direction(_px0, _py0, _px1, _py1); var dir0 = point_direction(_px0, _py0, _px1, _py1);
var dir1 = point_direction(_px1, _py1, _px2, _py2); var dir1 = point_direction(_px1, _py1, _px2, _py2);
@ -34,7 +34,7 @@ function polygon_points_classify(points) {
var maxindex = 0; var maxindex = 0;
for( var i = 0; i < len; i++ ) { for( var i = 0; i < len; i++ ) {
var _x = points[i][0]; var _x = points[i].x;
if(_x > maxx) { if(_x > maxx) {
maxx = _x; maxx = _x;
maxindex = i; maxindex = i;
@ -48,12 +48,12 @@ function polygon_points_classify(points) {
for( var i = 0; i < len; i++ ) { for( var i = 0; i < len; i++ ) {
var index = safe_mod(startindex + i, len); var index = safe_mod(startindex + i, len);
var _px0 = points[index][0]; var _px0 = points[index].x;
var _py0 = points[index][1]; var _py0 = points[index].y;
var _px1 = points[safe_mod(index + 1, len)][0]; var _px1 = points[safe_mod(index + 1, len)].x;
var _py1 = points[safe_mod(index + 1, len)][1]; var _py1 = points[safe_mod(index + 1, len)].y;
var _px2 = points[safe_mod(index + 2, len)][0]; var _px2 = points[safe_mod(index + 2, len)].x;
var _py2 = points[safe_mod(index + 2, len)][1]; var _py2 = points[safe_mod(index + 2, len)].y;
var side = cross_product(_px0, _py0, _px1, _py1, _px2, _py2); var side = cross_product(_px0, _py0, _px1, _py1, _px2, _py2);
if(_side != 0 && sign(_side) != sign(side)) if(_side != 0 && sign(_side) != sign(side))
@ -122,7 +122,7 @@ function polygon_triangulate(points, tolerance = 4) {
if(ind == c2) continue; if(ind == c2) continue;
var p = points[ind]; var p = points[ind];
if(point_in_triangle(p[0], p[1], p0[0], p0[1], p1[0], p1[1], p2[0], p2[1])) { if(point_in_triangle(p.x, p.y, p0.x, p0.y, p1.x, p1.y, p2.x, p2.y)) {
isEar = false; isEar = false;
break; break;
} }
@ -143,7 +143,7 @@ function polygon_triangulate(points, tolerance = 4) {
var p1b = points[pointInd[c1b]]; var p1b = points[pointInd[c1b]];
var p1a = points[pointInd[c1a]]; var p1a = points[pointInd[c1a]];
var side = cross_product(p1b[0], p1b[1], p1[0], p1[1], p1a[0], p1a[1]); var side = cross_product(p1b.x, p1b.y, p1.x, p1.y, p1a.x, p1a.y);
if(sign(side) == checkSide) { if(sign(side) == checkSide) {
array_remove(reflected, c1); array_remove(reflected, c1);
array_push(convexes, c1); array_push(convexes, c1);
@ -158,7 +158,7 @@ function polygon_triangulate(points, tolerance = 4) {
var p2b = points[pointInd[c2b]]; var p2b = points[pointInd[c2b]];
var p2a = points[pointInd[c2a]]; var p2a = points[pointInd[c2a]];
var side = cross_product(p2b[0], p2b[1], p2[0], p2[1], p2a[0], p2a[1]); var side = cross_product(p2b.x, p2b.y, p2.x, p2.y, p2a.x, p2a.y);
if(sign(side) == checkSide) { if(sign(side) == checkSide) {
array_remove(reflected, c2); array_remove(reflected, c2);
array_push(convexes, c2); array_push(convexes, c2);
@ -183,3 +183,23 @@ function polygon_triangulate(points, tolerance = 4) {
return triangles; return triangles;
} }
function polygon_triangulate_convex_fan(points) {
var triangles = [];
var amo = array_length(points);
var cx = 0;
var cy = 0;
for( var i = 0; i < amo; i++ ) {
cx += points[i].x;
cy += points[i].y;
}
cx /= amo;
cy /= amo;
var pc = new Point(cx, cy);
for( var i = 0; i < amo; i++ ) {
array_push(triangles, [ points[i], points[(i + 1) % amo], pc ]);
}
return triangles;
}

View file

@ -0,0 +1,11 @@
{
"resourceType": "GMScript",
"resourceVersion": "1.0",
"name": "__polygon",
"isCompatibility": false,
"isDnD": false,
"parent": {
"name": "geometry",
"path": "folders/functions/geometry.yy",
},
}

View file

@ -0,0 +1,14 @@
function Rectangle(x, y, w, h) constructor {
self.x = x;
self.y = y;
self.w = w;
self.h = h;
static hashOrigin = function() { return "x" + string(x) + "y" + string(y); }
static clone = function() { return new Rectangle(x, y, w, h); }
}
function rectangleOverlap(rect1, rect2) {
return rect1.x < rect2.x + rect2.w && rect1.x + rect1.w > rect2.x &&
rect1.y < rect2.y + rect2.h && rect1.y + rect1.h > rect2.y;
}

View file

@ -0,0 +1,11 @@
{
"resourceType": "GMScript",
"resourceVersion": "1.0",
"name": "__rectangle",
"isCompatibility": false,
"isDnD": false,
"parent": {
"name": "geometry",
"path": "folders/functions/geometry.yy",
},
}

View file

@ -8,26 +8,48 @@
function SHAPE_rectangle(_sca) { function SHAPE_rectangle(_sca) {
var triangles = [ var triangles = [
[[-_sca[0], -_sca[1]], [ _sca[0], -_sca[1]], [-_sca[0], _sca[1]]], [ new Point(-_sca[0], -_sca[1]), new Point( _sca[0], -_sca[1]), new Point(-_sca[0], _sca[1]) ],
[[ _sca[0], -_sca[1]], [-_sca[0], _sca[1]], [ _sca[0], _sca[1]]], [ new Point( _sca[0], -_sca[1]), new Point(-_sca[0], _sca[1]), new Point( _sca[0], _sca[1]) ],
];
var segment = [ new Point(-_sca[0], -_sca[1]), new Point( _sca[0], -_sca[1]),
new Point( _sca[0], _sca[1]), new Point(-_sca[0], _sca[1]),
new Point(-_sca[0], -_sca[1]) ];
return [
[{ type: SHAPE_TYPE.triangles, triangles: triangles }],
segment
]; ];
return [{ type: SHAPE_TYPE.triangles, triangles: triangles }];
} }
function SHAPE_circle(_sca, data = {}) { function SHAPE_circle(_sca, data = {}) {
var prec = max(3, data.side); var prec = max(3, data.side);
var points = []; var triangles = [];
var ang = 360 / prec;
var segment = [];
for( var i = 0; i < prec; i++ ) for( var i = 0; i < prec; i++ ) {
array_push(points, [ lengthdir_x(0.5, i / prec * 360) * _sca[0] * 2, lengthdir_y(0.5, i / prec * 360) * _sca[1] * 2 ]); var x0 = lengthdir_x(0.5, (i + 0) * ang) * _sca[0] * 2;
var y0 = lengthdir_y(0.5, (i + 0) * ang) * _sca[1] * 2;
var x1 = lengthdir_x(0.5, (i + 1) * ang) * _sca[0] * 2;
var y1 = lengthdir_y(0.5, (i + 1) * ang) * _sca[1] * 2;
return [{ type: SHAPE_TYPE.points, points: points }]; array_push(triangles, [ new Point(0, 0), new Point(x0, y0), new Point(x1, y1) ]);
if(i == 0) array_push(segment, new Point(x0, y0));
array_push(segment, new Point(x1, y1));
}
return [
[{ type: SHAPE_TYPE.triangles, triangles: triangles }],
segment
];
} }
function SHAPE_star(_sca, data = {}) { function SHAPE_star(_sca, data = {}) {
var prec = max(3, data.side); var prec = max(3, data.side);
var inner = data.inner; var inner = data.inner;
var triangles = []; var triangles = [];
var segment = [];
for( var i = 0; i < prec; i++ ) { for( var i = 0; i < prec; i++ ) {
var otx = lengthdir_x(0.5, i / prec * 360) * _sca[0] * 2; var otx = lengthdir_x(0.5, i / prec * 360) * _sca[0] * 2;
@ -35,16 +57,23 @@
var inx = lengthdir_x(inner / 2, (i + 0.5) / prec * 360) * _sca[0] * 2; var inx = lengthdir_x(inner / 2, (i + 0.5) / prec * 360) * _sca[0] * 2;
var iny = lengthdir_y(inner / 2, (i + 0.5) / prec * 360) * _sca[1] * 2; var iny = lengthdir_y(inner / 2, (i + 0.5) / prec * 360) * _sca[1] * 2;
array_push(triangles, [ new Point(0, 0), new Point(otx, oty), new Point(inx, iny) ]);
array_push(triangles, [ [0, 0], [otx, oty], [inx, iny] ]); var pi0 = new Point(inx, iny);
var inx = lengthdir_x(inner / 2, (i - 0.5) / prec * 360) * _sca[0] * 2; var inx = lengthdir_x(inner / 2, (i - 0.5) / prec * 360) * _sca[0] * 2;
var iny = lengthdir_y(inner / 2, (i - 0.5) / prec * 360) * _sca[1] * 2; var iny = lengthdir_y(inner / 2, (i - 0.5) / prec * 360) * _sca[1] * 2;
array_push(triangles, [ new Point(0, 0), new Point(otx, oty), new Point(inx, iny) ]);
array_push(triangles, [ [0, 0], [otx, oty], [inx, iny] ]); array_push(segment, new Point(inx, iny));
array_push(segment, new Point(otx, oty));
array_push(segment, pi0);
} }
return [{ type: SHAPE_TYPE.triangles, triangles: triangles }]; return [
[{ type: SHAPE_TYPE.triangles, triangles: triangles }],
segment
];
} }
function SHAPE_capsule(_sca, data = {}) { function SHAPE_capsule(_sca, data = {}) {
@ -52,10 +81,12 @@
var prec = max(2, data.side); var prec = max(2, data.side);
var hh = _sca[1] * rad; var hh = _sca[1] * rad;
var shapes = []; var shapes = [];
var segment = [];
array_push(segment, new Point(-_sca[0] + _sca[1], _sca[1]), new Point( _sca[0] - hh, hh));
var triangles = [ var triangles = [
[[-_sca[0] + _sca[1], -_sca[1]], [ _sca[0] - hh, -hh], [-_sca[0] + _sca[1], _sca[1]]], [ new Point(-_sca[0] + _sca[1], -_sca[1]), new Point( _sca[0] - hh, -hh), new Point(-_sca[0] + _sca[1], _sca[1]) ],
[[ _sca[0] - hh, -hh], [-_sca[0] + _sca[1], _sca[1]], [ _sca[0] - hh, hh]], [ new Point( _sca[0] - hh, -hh), new Point(-_sca[0] + _sca[1], _sca[1]), new Point( _sca[0] - hh, hh) ],
]; ];
shapes[0] = { type: SHAPE_TYPE.triangles, triangles: triangles }; shapes[0] = { type: SHAPE_TYPE.triangles, triangles: triangles };
@ -68,40 +99,57 @@
nx = cx + lengthdir_x(_sca[1], na); nx = cx + lengthdir_x(_sca[1], na);
ny = cy + lengthdir_y(_sca[1], na); ny = cy + lengthdir_y(_sca[1], na);
if(i) array_push(triangles, [[cx, cy], [ox, oy], [nx, ny]]); if(i) {
array_push(triangles, [ new Point(cx, cy), new Point(ox, oy), new Point(nx, ny) ]);
array_push(segment, new Point(ox, oy));
}
array_push(segment, new Point(nx, ny));
oa = na; oa = na;
ox = nx; ox = nx;
oy = ny; oy = ny;
} }
array_push(segment, new Point(-_sca[0] + _sca[1], -_sca[1]), new Point( _sca[0] - hh, -hh));
shapes[1] = { type: SHAPE_TYPE.triangles, triangles: triangles }; shapes[1] = { type: SHAPE_TYPE.triangles, triangles: triangles };
var triangles = []; var triangles = [];
var cx = _sca[0] - hh; var cx = _sca[0] - hh;
var cy = 0; var cy = 0;
var ox, oy, nx, ny, oa, na; var ox, oy, nx, ny, oa, na;
var _seg = [];
for( var i = 0; i <= prec; i++ ) { for( var i = 0; i <= prec; i++ ) {
na = lerp(-90, 90, i / prec); na = lerp(-90, 90, i / prec);
nx = cx + lengthdir_x(hh, na); nx = cx + lengthdir_x(hh, na);
ny = cy + lengthdir_y(hh, na); ny = cy + lengthdir_y(hh, na);
if(i) array_push(triangles, [[cx, cy], [ox, oy], [nx, ny]]); if(i) {
array_push(triangles, [ new Point(cx, cy), new Point(ox, oy), new Point(nx, ny) ]);
array_push(_seg, new Point(ox, oy));
}
array_push(_seg, new Point(nx, ny));
oa = na; oa = na;
ox = nx; ox = nx;
oy = ny; oy = ny;
} }
for( var i = 0; i < array_length(_seg); i++ )
array_push(segment, _seg[array_length(_seg) - i - 1]);
shapes[2] = { type: SHAPE_TYPE.triangles, triangles: triangles }; shapes[2] = { type: SHAPE_TYPE.triangles, triangles: triangles };
return shapes; return [
shapes,
segment
];
} }
function SHAPE_ring(_sca, data = {}) { function SHAPE_ring(_sca, data = {}) {
var prec = max(3, data.side); var prec = max(3, data.side);
var inner = data.inner; var inner = data.inner;
var triangles = []; var triangles = [];
var segment = [];
for( var i = 0; i < prec; i++ ) { for( var i = 0; i < prec; i++ ) {
var ix0 = lengthdir_x(0.5 * inner, i / prec * 360) * _sca[0] * 2; var ix0 = lengthdir_x(0.5 * inner, i / prec * 360) * _sca[0] * 2;
@ -116,11 +164,18 @@
var nx1 = lengthdir_x(0.5, (i + 1) / prec * 360) * _sca[0] * 2; var nx1 = lengthdir_x(0.5, (i + 1) / prec * 360) * _sca[0] * 2;
var ny1 = lengthdir_y(0.5, (i + 1) / prec * 360) * _sca[1] * 2; var ny1 = lengthdir_y(0.5, (i + 1) / prec * 360) * _sca[1] * 2;
array_push(triangles, [[ix0, iy0], [nx0, ny0], [nx1, ny1]]); array_push(triangles, [ new Point(ix0, iy0), new Point(nx0, ny0), new Point(nx1, ny1) ]);
array_push(triangles, [[ix0, iy0], [nx1, ny1], [ix1, iy1]]); array_push(triangles, [ new Point(ix0, iy0), new Point(nx1, ny1), new Point(ix1, iy1) ]);
if(i == 0)
array_push(segment, new Point(nx0, ny0));
array_push(segment, new Point(nx1, ny1));
} }
return [{ type: SHAPE_TYPE.triangles, triangles: triangles }]; return [
[{ type: SHAPE_TYPE.triangles, triangles: triangles }],
segment
];
} }
function SHAPE_gear(_sca, data = {}) { function SHAPE_gear(_sca, data = {}) {
@ -132,6 +187,7 @@
var body = 0.5 * (1 - teethH); var body = 0.5 * (1 - teethH);
var teth = 0.5 * teethH; var teth = 0.5 * teethH;
var triangles = []; var triangles = [];
var segment = [];
for( var i = 0; i < prec; i++ ) { for( var i = 0; i < prec; i++ ) {
var ix0 = lengthdir_x(body * inner, i / prec * 360) * _sca[0] * 2; var ix0 = lengthdir_x(body * inner, i / prec * 360) * _sca[0] * 2;
@ -146,8 +202,11 @@
var nx1 = lengthdir_x(body, (i + 1) / prec * 360) * _sca[0] * 2; var nx1 = lengthdir_x(body, (i + 1) / prec * 360) * _sca[0] * 2;
var ny1 = lengthdir_y(body, (i + 1) / prec * 360) * _sca[1] * 2; var ny1 = lengthdir_y(body, (i + 1) / prec * 360) * _sca[1] * 2;
array_push(triangles, [[ix0, iy0], [nx0, ny0], [nx1, ny1]]); array_push(triangles, [ new Point(ix0, iy0), new Point(nx0, ny0), new Point(nx1, ny1) ]);
array_push(triangles, [[ix0, iy0], [nx1, ny1], [ix1, iy1]]); array_push(triangles, [ new Point(ix0, iy0), new Point(nx1, ny1), new Point(ix1, iy1) ]);
if(i == 0)
array_push(segment, new Point(nx0, ny0));
if(i % 2) { if(i % 2) {
var tx0 = nx0 + lengthdir_x(teth, (i + 0.5 - teethT) / prec * 360) * _sca[0] * 2; var tx0 = nx0 + lengthdir_x(teth, (i + 0.5 - teethT) / prec * 360) * _sca[0] * 2;
@ -156,30 +215,62 @@
var tx1 = nx1 + lengthdir_x(teth, (i + 0.5 + teethT) / prec * 360) * _sca[0] * 2; var tx1 = nx1 + lengthdir_x(teth, (i + 0.5 + teethT) / prec * 360) * _sca[0] * 2;
var ty1 = ny1 + lengthdir_y(teth, (i + 0.5 + teethT) / prec * 360) * _sca[1] * 2; var ty1 = ny1 + lengthdir_y(teth, (i + 0.5 + teethT) / prec * 360) * _sca[1] * 2;
array_push(triangles, [[tx0, ty0], [nx0, ny0], [nx1, ny1]]); array_push(triangles, [ new Point(tx0, ty0), new Point(nx0, ny0), new Point(nx1, ny1) ]);
array_push(triangles, [[tx0, ty0], [nx1, ny1], [tx1, ty1]]); array_push(triangles, [ new Point(tx0, ty0), new Point(nx1, ny1), new Point(tx1, ty1) ]);
}
array_push(segment, new Point(tx0, ty0));
array_push(segment, new Point(tx1, ty1));
} }
return [{ type: SHAPE_TYPE.triangles, triangles: triangles }]; array_push(segment, new Point(nx1, ny1));
}
return [
[{ type: SHAPE_TYPE.triangles, triangles: triangles }],
segment
];
} }
function SHAPE_cross(_sca, data = {}) { function SHAPE_cross(_sca, data = {}) {
var inner = data.inner; var inner = data.inner;
var triangles = []; var triangles = [];
var segment = [];
var side = min(_sca[0], _sca[1]) * inner; var side = min(_sca[0], _sca[1]) * inner;
array_push(triangles, array_push(triangles,
[[-side, -_sca[1]], [ side, -_sca[1]], [-side, _sca[1]]], [ new Point(-side, -side), new Point( side, -side), new Point(-side, side) ],
[[ side, -_sca[1]], [-side, _sca[1]], [ side, _sca[1]]], [ new Point( side, -side), new Point(-side, side), new Point( side, side) ],
); );
array_push(triangles, array_push(triangles, //top
[[-_sca[0], -side], [ _sca[0], -side], [-_sca[0], side]], [ new Point(-side, -side), new Point( side, -side), new Point(-side, -_sca[1]) ],
[[ _sca[0], -side], [-_sca[0], side], [ _sca[0], side]], [ new Point( side, -side), new Point(-side, -_sca[1]), new Point( side, -_sca[1]) ],
); );
return [{ type: SHAPE_TYPE.triangles, triangles: triangles }]; array_push(triangles, //bottom
[ new Point(-side, _sca[1]), new Point( side, _sca[1]), new Point(-side, side) ],
[ new Point( side, _sca[1]), new Point(-side, side), new Point( side, side) ],
);
array_push(triangles, //left
[ new Point( -side, -side), new Point(-_sca[0], -side), new Point(-side, side) ],
[ new Point(-_sca[0], -side), new Point(-side, side), new Point(-_sca[0], side) ],
);
array_push(triangles, //right
[ new Point(_sca[0], -side), new Point( side, -side), new Point(_sca[0], side) ],
[ new Point( side, -side), new Point(_sca[0], side), new Point( side, side) ],
);
array_push(segment, new Point(-side, -side), new Point(-side, -_sca[1]), new Point( side, -_sca[1]), new Point(side, -side) );
array_push(segment, new Point(_sca[0], -side), new Point(_sca[0], side), new Point( side, side));
array_push(segment, new Point(side, _sca[1]), new Point(-side, _sca[1]), new Point(-side, side));
array_push(segment, new Point(-_sca[0], side), new Point(-_sca[0], -side), new Point(-side, -side));
return [
[{ type: SHAPE_TYPE.triangles, triangles: triangles }],
segment
];
} }
function SHAPE_arc(_sca, data = {}) { function SHAPE_arc(_sca, data = {}) {
@ -188,11 +279,20 @@
var radRan = data.radRan; var radRan = data.radRan;
var cap = data.cap; var cap = data.cap;
var triangles = []; var triangles = [];
var segment = [];
var oa, na; var oa, na;
var sgArcI = [], sgArcO = [];
for( var i = 0; i <= prec; i++ ) { for( var i = 0; i <= prec; i++ ) {
na = lerp(radRan[0], radRan[1], i / prec); na = lerp(radRan[0], radRan[1], i / prec);
var ix1 = lengthdir_x(0.5 * inner, na) * _sca[0] * 2;
var iy1 = lengthdir_y(0.5 * inner, na) * _sca[1] * 2;
var nx1 = lengthdir_x(0.5, na) * _sca[0] * 2;
var ny1 = lengthdir_y(0.5, na) * _sca[1] * 2;
if(i) { if(i) {
var ix0 = lengthdir_x(0.5 * inner, oa) * _sca[0] * 2; var ix0 = lengthdir_x(0.5 * inner, oa) * _sca[0] * 2;
var iy0 = lengthdir_y(0.5 * inner, oa) * _sca[1] * 2; var iy0 = lengthdir_y(0.5 * inner, oa) * _sca[1] * 2;
@ -200,16 +300,13 @@
var nx0 = lengthdir_x(0.5, oa) * _sca[0] * 2; var nx0 = lengthdir_x(0.5, oa) * _sca[0] * 2;
var ny0 = lengthdir_y(0.5, oa) * _sca[1] * 2; var ny0 = lengthdir_y(0.5, oa) * _sca[1] * 2;
var ix1 = lengthdir_x(0.5 * inner, na) * _sca[0] * 2; array_push(triangles, [ new Point(ix0, iy0), new Point(nx0, ny0), new Point(nx1, ny1) ]);
var iy1 = lengthdir_y(0.5 * inner, na) * _sca[1] * 2; array_push(triangles, [ new Point(ix0, iy0), new Point(nx1, ny1), new Point(ix1, iy1) ]);
var nx1 = lengthdir_x(0.5, na) * _sca[0] * 2;
var ny1 = lengthdir_y(0.5, na) * _sca[1] * 2;
array_push(triangles, [[ix0, iy0], [nx0, ny0], [nx1, ny1]]);
array_push(triangles, [[ix0, iy0], [nx1, ny1], [ix1, iy1]]);
} }
array_push(sgArcI, new Point(ix1, iy1));
array_push(sgArcO, new Point(nx1, ny1));
oa = na; oa = na;
} }
@ -217,13 +314,17 @@
var cx = lengthdir_x(0.5 * (inner + 1) / 2, radRan[0]) * _sca[0] * 2; var cx = lengthdir_x(0.5 * (inner + 1) / 2, radRan[0]) * _sca[0] * 2;
var cy = lengthdir_y(0.5 * (inner + 1) / 2, radRan[0]) * _sca[1] * 2; var cy = lengthdir_y(0.5 * (inner + 1) / 2, radRan[0]) * _sca[1] * 2;
var ox, oy, nx, ny, oa, na; var ox, oy, nx, ny, oa, na;
var sgCapI = [], sgCapO = [];
prec = max(ceil(prec / 2), 2);
for( var i = 0; i <= prec; i++ ) { for( var i = 0; i <= prec; i++ ) {
na = radRan[0] - 180 * i / prec; na = radRan[0] - 180 * i / prec;
nx = cx + lengthdir_x((1 - inner) / 2, na) * _sca[0]; nx = cx + lengthdir_x((1 - inner) / 2, na) * _sca[0];
ny = cy + lengthdir_y((1 - inner) / 2, na) * _sca[1]; ny = cy + lengthdir_y((1 - inner) / 2, na) * _sca[1];
if(i) array_push(triangles, [[cx, cy], [ox, oy], [nx, ny]]); if(i) array_push(triangles, [ new Point(cx, cy), new Point(ox, oy), new Point(nx, ny) ]);
array_push(sgCapI, new Point(nx, ny));
oa = na; oa = na;
ox = nx; ox = nx;
@ -239,15 +340,30 @@
nx = cx + lengthdir_x((1 - inner) / 2, na) * _sca[0]; nx = cx + lengthdir_x((1 - inner) / 2, na) * _sca[0];
ny = cy + lengthdir_y((1 - inner) / 2, na) * _sca[1]; ny = cy + lengthdir_y((1 - inner) / 2, na) * _sca[1];
if(i) array_push(triangles, [[cx, cy], [ox, oy], [nx, ny]]); if(i) array_push(triangles, [ new Point(cx, cy), new Point(ox, oy), new Point(nx, ny) ]);
array_push(sgCapO, new Point(nx, ny));
oa = na; oa = na;
ox = nx; ox = nx;
oy = ny; oy = ny;
} }
array_append(segment, sgArcI);
array_append(segment, array_reverse(sgCapO));
array_append(segment, array_reverse(sgArcO));
array_append(segment, sgCapI);
} else {
array_append(segment, sgArcI);
array_append(segment, array_reverse(sgArcO));
array_push(segment, sgArcI[0].clone());
} }
return [{ type: SHAPE_TYPE.triangles, triangles: triangles }]; return [
[{ type: SHAPE_TYPE.triangles, triangles: triangles }],
segment
];
} }
#endregion #endregion

View file

@ -5,7 +5,7 @@
"isCompatibility": false, "isCompatibility": false,
"isDnD": false, "isDnD": false,
"parent": { "parent": {
"name": "draw", "name": "geometry",
"path": "folders/functions/draw.yy", "path": "folders/functions/geometry.yy",
}, },
} }

View file

@ -0,0 +1,460 @@
function StrandPoint(x, y) constructor {
self.x = x;
self.y = y;
px = x;
py = y;
ppx = x;
ppy = y;
dx = 0;
dy = 0;
ikx = noone;
iky = noone;
air_resist = 0.5;
static set = function(x ,y) {
self.x = x;
self.y = y;
}
static motionDelta = function() {
dx = x - px;
dy = y - py;
px = x;
py = y;
}
static motionPropagate = function(timeStep = 1) {
x += dx / timeStep;
y += dy / timeStep;
}
static clone = function() { return new StrandPoint(x, y); }
}
function Strand(sx = 0, sy = 0, amount = 5, length = 8, direct = 0, curlFreq = 4, curlSize = 8) constructor {
points = [];
id = irandom_range(10000, 99999);
self.length = array_create(amount, length);
self.direct = direct;
curl_freq = curlFreq;
curl_size = curlSize;
tension = 0.8;
spring = 0.1;
angularTension = 0.1;
rootStrength = -1;
rootForce = 0;
free = false;
var _sx = sx;
var _sy = sy;
for( var i = 0; i < amount; i++ ) {
points[i] = new StrandPoint(sx, sy);
sx += lengthdir_x(self.length[i], direct);
sy += lengthdir_y(self.length[i], direct);
}
setOrigin(_sx, _sy);
for( var i = 1; i < array_length(points); i++ )
restAngle[i] = 0;
restAngle[0] = direct;
static motionDelta = function() {
rootForce = 0;
for( var i = !free; i < array_length(points); i++ )
points[i].motionDelta();
}
static motionPropagate = function(timeStep) {
for( var i = !free; i < array_length(points); i++ )
points[i].motionPropagate(timeStep);
}
static chainConstrain = function() {
for( var i = 1; i < array_length(points); i++ ) {
var p0 = points[i - 1];
var p1 = points[i - 0];
var dir = point_direction(p0.x, p0.y, p1.x, p1.y);
var dis = point_distance(p0.x, p0.y, p1.x, p1.y);
if(dis < 1) continue;
var len = lerp(dis, length[i], tension);
if(free) {
var dx = lengthdir_x(dis - len, dir) / 2;
var dy = lengthdir_y(dis - len, dir) / 2;
p0.x += dx;
p0.y += dy;
p1.x -= dx;
p1.y -= dy;
} else {
if(i == 1) rootForce += len;
p1.x = p0.x + lengthdir_x(len, dir);
p1.y = p0.y + lengthdir_y(len, dir);
}
}
var oa = restAngle[0], na;
for( var i = 1; i < array_length(points); i++ ) {
var p0 = points[i - 1];
var p1 = points[i - 0];
var pdir = point_direction(p0.px, p0.py, p1.px, p1.py);
var dir = point_direction(p0.x, p0.y, p1.x, p1.y);
var dis = point_distance(p0.x, p0.y, p1.x, p1.y);
var dst = oa + restAngle[i];
var adf = angle_difference(dst, dir);
if(dis < 1) continue;
var delt = adf * power(angularTension, 2) * power(1 - i / array_length(points), 2);
na = dir + delt;
var adlt = angle_difference(pdir, na);
var delt = adlt * power(1 - spring, 2);
na += delt;
var tx = p0.x + lengthdir_x(dis, na);
var ty = p0.y + lengthdir_y(dis, na);
p1.x = tx;
p1.y = ty;
oa = na;
}
}
static springConstrain = function() {
var spng = array_length(points) / curl_freq;
if(spng <= 0) return;
for( var i = spng; i < array_length(points); i++ ) {
var p0 = points[i - spng];
var p1 = points[i];
var dir = point_direction(p0.x, p0.y, p1.x, p1.y);
var dis = point_distance(p0.x, p0.y, p1.x, p1.y);
if(dis < 1) continue;
var len = lerp(dis, length[i] * curl_size * spng, spring);
p1.x = p0.x + lengthdir_x(len, dir);
p1.y = p0.y + lengthdir_y(len, dir);
}
}
static setOrigin = function(x, y) {
if(array_length(points) < 1) return;
if(free) return;
points[0].set(x, y);
}
static step = function(timeStep = 1, iteration = 4, detach = true) {
motionDelta();
repeat(timeStep) {
motionPropagate(timeStep);
repeat(iteration) {
chainConstrain();
springConstrain();
}
}
if(detach && rootStrength > -1 && rootForce > rootStrength)
free = true;
}
static freeze = function(fix = false) {
var a = restAngle[0];
for( var i = 1; i < array_length(points); i++ ) {
var p0 = points[i - 1];
var p1 = points[i - 0];
var dir = point_direction(p0.x, p0.y, p1.x, p1.y);
var dis = point_distance(p0.x, p0.y, p1.x, p1.y);
if(!fix) length[i] = dis;
restAngle[i] = angle_difference(dir, a);
a = dir;
}
}
static store = function() {
var op, np;
for( var i = 0; i < array_length(points); i++ ) {
np = points[i];
if(i) {
np.storeAngle = point_direction(op.x, op.y, np.x, np.y);
np.storeDistance = point_distance(op.x, op.y, np.x, np.y);
}
op = np;
}
}
static draw = function(_x, _y, _s, drawAngle = false, baked = false) {
if(drawAngle) {
draw_set_color(c_red);
var aa = 0;
var ox, oy, nx, ny;
for( var i = 0; i < array_length(points); i++ ) {
aa += restAngle[i];
if(i) {
nx = ox + lengthdir_x(length[i], aa);
ny = oy + lengthdir_y(length[i], aa);
draw_line(_x + ox * _s, _y + oy * _s, _x + nx * _s, _y + ny * _s);
} else {
nx = points[i].x;
ny = points[i].y;
}
ox = nx;
oy = ny;
}
}
//draw_set_color(c_lime);
//var ox, oy, nx, ny;
//for( var i = 0; i < array_length(points); i++ ) {
// nx = points[i].px;
// ny = points[i].py;
// nx = _x + nx * _s;
// ny = _y + ny * _s;
// if(i) draw_line(ox, oy, nx, ny);
// ox = nx;
// oy = ny;
//}
draw_set_color(baked? c_aqua : c_blue);
var ox, oy, nx, ny;
for( var i = 0; i < array_length(points); i++ ) {
nx = points[i].x;
ny = points[i].y;
nx = _x + nx * _s;
ny = _y + ny * _s;
if(i) draw_line(ox, oy, nx, ny);
ox = nx;
oy = ny;
}
for( var i = 0; i < array_length(points); i++ ) {
nx = points[i].x;
ny = points[i].y;
nx = _x + nx * _s;
ny = _y + ny * _s;
draw_circle(nx, ny, 3, false);
}
}
static set = function(sx = points[0].x, sy = points[0].y) {
var ox, oy, aa = 0;
for( var i = 0; i < array_length(points); i++ ) {
aa += restAngle[i];
if(i) {
points[i].x = ox + lengthdir_x(length[i], aa);
points[i].y = oy + lengthdir_y(length[i], aa);
} else {
points[i].x = sx;
points[i].y = sy;
}
ox = points[i].x;
oy = points[i].y;
}
for( var i = 0; i < array_length(points); i++ ) {
points[i].px = points[i].x;
points[i].py = points[i].y;
}
}
static FABRIK = function(iter = 4) {
var op, np;
var amo = array_length(points);
var sx = points[0].x;
var sy = points[0].y;
var changed = false;
for( var i = 0; i < amo; i++ ) {
var p = points[i];
if(p.ikx == noone) continue;
if(p.iky == noone) continue;
if(p.x != p.ikx && p.y != p.iky)
changed = true;
p.x = p.ikx;
p.y = p.iky;
}
repeat(iter) {
for( var i = 0; i < amo; i++ ) {
np = points[amo - 1 - i];
if(i) {
var dir = point_direction(op.x, op.y, np.x, np.y);
var dis = length[amo - 1 - i];
np.x = op.x + lengthdir_x(dis, dir);
np.y = op.y + lengthdir_y(dis, dir);
}
op = np;
}
for( var i = 0; i < amo; i++ ) {
np = points[i];
if(i) {
var dir = point_direction(op.x, op.y, np.x, np.y);
var dis = length[i];
np.x = op.x + lengthdir_x(dis, dir);
np.y = op.y + lengthdir_y(dis, dir);
} else {
np.x = sx;
np.y = sy;
}
op = np;
}
}
for( var i = 0; i < amo; i++ ) {
p.ikx = noone;
p.iky = noone;
}
}
static clone = function() {
set();
var s = new Strand(points[0].x, points[0].y, array_length(points), length[0], direct, curl_freq, curl_size);
for( var i = 0; i < array_length(points); i++ )
s.points[i] = points[i].clone();
s.restAngle = array_clone(restAngle);
s.length = array_clone(length);
return s;
}
static serialize = function() {
return {
points: points,
restAngle: restAngle,
length: length,
};
}
static deserialize = function(s) {
points = s.points;
restAngle = s.restAngle;
length = s.length;
return self;
}
}
function StrandMesh() constructor {
hairs = [];
loop = false;
mesh = noone;
static step = function(iteration = 4) {
for( var i = 0; i < array_length(hairs); i++ )
hairs[i].step(iteration);
}
static draw = function(_x, _y, _s, drawAngle = false, baked = false) {
for( var i = 0; i < array_length(hairs); i++ )
hairs[i].draw(_x, _y, _s, drawAngle, baked);
}
static store = function(_x, _y, _s, drawAngle = false, baked = false) {
for( var i = 0; i < array_length(hairs); i++ )
hairs[i].store();
}
static freeze = function(fixLength = false) {
for( var i = 0; i < array_length(hairs); i++ )
hairs[i].freeze(fixLength);
}
static getPointRatio = function(rat, ind = 0) {
if(array_length(hairs) == 0) return new Point();
var h = array_safe_get(hairs, ind);
var sg = rat * (array_length(h.points) - 1);
var fr = frac(sg);
var p0 = array_safe_get(h.points, floor(sg));
var p1 = array_safe_get(h.points, floor(sg) + 1);
return new Point(lerp(p0.x, p1.x, fr), lerp(p0.y, p1.y, fr));
}
static getLineCount = function() {
return array_length(hairs);
}
static set = function() {
for( var i = 0; i < array_length(hairs); i++ )
hairs[i].set();
return self;
}
static clone = function() {
var s = new StrandMesh();
s.loop = loop;
s.mesh = mesh;
for( var i = 0; i < array_length(hairs); i++ )
s.hairs[i] = hairs[i].clone();
return s;
}
static serialize = function() {
var _h = [];
for( var i = 0; i < array_length(hairs); i++ )
_h[i] = hairs[i].serialize();
return json_stringify(_h);
}
static deserialize = function(s) {
var j = json_parse(s);
for( var i = 0; i < array_length(j); i++ )
hairs[i] = new Strand().deserialize(j[i]);
return self;
}
}

View file

@ -0,0 +1,11 @@
{
"resourceType": "GMScript",
"resourceVersion": "1.0",
"name": "__strandSim",
"isCompatibility": false,
"isDnD": false,
"parent": {
"name": "strandSim",
"path": "folders/nodes/data/strandSim.yy",
},
}

View file

@ -0,0 +1,14 @@
#region enums
#endregion
#region macro
#macro BLEND_NORMAL gpu_set_blendmode(bm_normal)
#macro BLEND_ADD gpu_set_blendmode(bm_add)
#macro BLEND_OVERRIDE gpu_set_blendmode_ext(bm_one, bm_zero)
#macro BLEND_ALPHA gpu_set_blendmode_ext_sepalpha(bm_one, bm_inv_src_alpha, bm_one, bm_one)
#macro BLEND_ALPHA_MULP gpu_set_blendmode_ext_sepalpha(bm_src_alpha, bm_inv_src_alpha, bm_one, bm_one)
#macro DRAW_CLEAR draw_clear_alpha(0, 0)
#endregion

View file

@ -1,7 +1,7 @@
{ {
"resourceType": "GMScript", "resourceType": "GMScript",
"resourceVersion": "1.0", "resourceVersion": "1.0",
"name": "polygon", "name": "_draw_defines",
"isCompatibility": false, "isCompatibility": false,
"isDnD": false, "isDnD": false,
"parent": { "parent": {

View file

@ -102,7 +102,11 @@ function Node_VFX_Spawner_Base(_x, _y, _group = noone) : Node(_x, _y, _group) co
["Render", true], 21 ["Render", true], 21
]; ];
parts = array_create(PREF_MAP[? "part_max_amount"]); attributes[? "part_amount"] = 512;
array_push(attributeEditors, ["Maximum particles", "part_amount",
new textBox(TEXTBOX_INPUT.number, function(val) { attributes[? "part_amount"] = val; }) ]);
parts = array_create(attributes[? "part_amount"]);
parts_runner = 0; parts_runner = 0;
seed = 0; seed = 0;
@ -112,7 +116,7 @@ function Node_VFX_Spawner_Base(_x, _y, _group = noone) : Node(_x, _y, _group) co
current_data = []; current_data = [];
for(var i = 0; i < PREF_MAP[? "part_max_amount"]; i++) for(var i = 0; i < attributes[? "part_amount"]; i++)
parts[i] = new __part(self); parts[i] = new __part(self);
static spawn = function(_time = ANIMATOR.current_frame, _pos = -1) { static spawn = function(_time = ANIMATOR.current_frame, _pos = -1) {
@ -250,10 +254,10 @@ function Node_VFX_Spawner_Base(_x, _y, _group = noone) : Node(_x, _y, _group) co
part.setPhysic(_vx, _vy, _acc, _grav, _wigg); part.setPhysic(_vx, _vy, _acc, _grav, _wigg);
part.setTransform(_scx, _scy, _scale_time, _rot, _rot_spd, _follow); part.setTransform(_scx, _scy, _scale_time, _rot, _rot_spd, _follow);
part.setDraw(_color, _bld, _alp, _fade); part.setDraw(_color, _bld, _alp, _fade);
spawn_index = safe_mod(spawn_index + 1, PREF_MAP[? "part_max_amount"]); spawn_index = safe_mod(spawn_index + 1, attributes[? "part_amount"]);
onSpawn(_time, part); onSpawn(_time, part);
parts_runner = safe_mod(parts_runner + 1, PREF_MAP[? "part_max_amount"]); parts_runner = safe_mod(parts_runner + 1, attributes[? "part_amount"]);
} }
} }
@ -284,7 +288,7 @@ function Node_VFX_Spawner_Base(_x, _y, _group = noone) : Node(_x, _y, _group) co
} }
function checkPartPool() { function checkPartPool() {
var _part_amo = PREF_MAP[? "part_max_amount"]; var _part_amo = attributes[? "part_amount"];
var _curr_amo = array_length(parts); var _curr_amo = array_length(parts);
if(_part_amo > _curr_amo) { if(_part_amo > _curr_amo) {

View file

@ -0,0 +1,163 @@
#macro STRAND_EFFECTOR_PRE \
var _str = inputs[| 0].getValue(); \
var _typ = inputs[| 1].getValue(); \
var _pos = inputs[| 2].getValue(); \
var _ran = inputs[| 3].getValue(); \
var _dir = inputs[| 4].getValue(); \
var _fal = inputs[| 5].getValue(); var fal = _ran * _fal; \
\
if(_str == noone) return; \
var __str = _str; \
if(!is_array(_str)) __str = [ _str ]; \
\
for( var k = 0; k < array_length(__str); k++ ) \
for( var i = 0; i < array_length(__str[k].hairs); i++ ) { \
var h = __str[k].hairs[i]; \
\
for( var j = 1; j < array_length(h.points); j++ ) { \
var pnt = h.points[j]; \
var mulp = 1, dis; \
\
if(_typ == 0) \
dis = point_distance(_pos[0], _pos[1], pnt.x, pnt.y); \
else if (_typ == 1) \
dis = distance_to_line_infinite(pnt.x, pnt.y, _pos[0], _pos[1], _pos1[0], _pos1[1]); \
\
if(dis > _ran + fal) continue; \
if(dis < _ran - fal) \
mulp = 1; \
else \
mulp = (dis - (_ran - fal)) / (fal * 2);
#macro STRAND_EFFECTOR_POST \
} \
} \
outputs[| 0].setValue(_str);
function _Node_Strand_Affector(_x, _y, _group = noone) : Node(_x, _y, _group) constructor {
name = "Affector";
color = COLORS.node_blend_strand;
icon = THEME.strandSim;
w = 96;
inputs[| 0] = nodeValue("Strand", self, JUNCTION_CONNECT.input, VALUE_TYPE.strands, noone)
.setVisible(true, true);
inputs[| 1] = nodeValue("Shape", self, JUNCTION_CONNECT.input, VALUE_TYPE.integer, 0)
.setDisplay(VALUE_DISPLAY.enum_scroll, [ "Point", "Band" ]);
inputs[| 2] = nodeValue("Position", self, JUNCTION_CONNECT.input, VALUE_TYPE.float, [ 0, 0 ])
.setDisplay(VALUE_DISPLAY.vector);
inputs[| 3] = nodeValue("Range", self, JUNCTION_CONNECT.input, VALUE_TYPE.float, 4);
inputs[| 4] = nodeValue("Direction", self, JUNCTION_CONNECT.input, VALUE_TYPE.integer, 0)
.setDisplay(VALUE_DISPLAY.rotation);
inputs[| 5] = nodeValue("Falloff", self, JUNCTION_CONNECT.input, VALUE_TYPE.float, 0.2)
.setDisplay(VALUE_DISPLAY.slider, [ 0, 1, 0.01 ]);
outputs[| 0] = nodeValue("Strand", self, JUNCTION_CONNECT.output, VALUE_TYPE.strands, noone);
input_fix_len = ds_list_size(inputs);
input_display_list = [ 0,
["Shape", false], 1, 2, 3, 4, 5,
];
static drawOverlay = function(active, _x, _y, _s, _mx, _my, _snx, _sny) {
var _typ = inputs[| 1].getValue();
var _pos = inputs[| 2].getValue();
var _ran = inputs[| 3].getValue();
var _dir = inputs[| 4].getValue();
var _fal = inputs[| 5].getValue();
var px = _x + _pos[0] * _s;
var py = _y + _pos[1] * _s;
_ran *= _s;
var fal = _fal * _ran;
draw_set_color(COLORS._main_accent);
if(_typ == 0) {
draw_circle(px, py, _ran, true);
var x0 = px - (_ran + fal);
var y0 = py - (_ran + fal);
var x1 = px + (_ran + fal);
var y1 = py + (_ran + fal);
draw_ellipse_dash(x0, y0, x1, y1);
var x0 = px - (_ran - fal);
var y0 = py - (_ran - fal);
var x1 = px + (_ran - fal);
var y1 = py + (_ran - fal);
draw_ellipse_dash(x0, y0, x1, y1);
} else if(_typ == 1) {
_dir += 90;
var _px = px + lengthdir_x(_ran, _dir); var _py = py + lengthdir_y(_ran, _dir);
var px0 = _px + lengthdir_x(1000, _dir - 90); var py0 = _py + lengthdir_y(1000, _dir - 90);
var px1 = _px + lengthdir_x(1000, _dir + 90); var py1 = _py + lengthdir_y(1000, _dir + 90);
draw_line(px0, py0, px1, py1);
var _px = px - lengthdir_x(_ran, _dir); var _py = py - lengthdir_y(_ran, _dir);
var px0 = _px + lengthdir_x(1000, _dir - 90); var py0 = _py + lengthdir_y(1000, _dir - 90);
var px1 = _px + lengthdir_x(1000, _dir + 90); var py1 = _py + lengthdir_y(1000, _dir + 90);
draw_line(px0, py0, px1, py1);
//
var _px = px + lengthdir_x(_ran - fal, _dir); var _py = py + lengthdir_y(_ran - fal, _dir);
var px0 = _px + lengthdir_x(1000, _dir - 90); var py0 = _py + lengthdir_y(1000, _dir - 90);
var px1 = _px + lengthdir_x(1000, _dir + 90); var py1 = _py + lengthdir_y(1000, _dir + 90);
draw_line_dashed(px0, py0, px1, py1);
var _px = px + lengthdir_x(_ran + fal, _dir); var _py = py + lengthdir_y(_ran + fal, _dir);
var px0 = _px + lengthdir_x(1000, _dir - 90); var py0 = _py + lengthdir_y(1000, _dir - 90);
var px1 = _px + lengthdir_x(1000, _dir + 90); var py1 = _py + lengthdir_y(1000, _dir + 90);
draw_line_dashed(px0, py0, px1, py1);
//
var _px = px - lengthdir_x(_ran - fal, _dir); var _py = py - lengthdir_y(_ran - fal, _dir);
var px0 = _px + lengthdir_x(1000, _dir - 90); var py0 = _py + lengthdir_y(1000, _dir - 90);
var px1 = _px + lengthdir_x(1000, _dir + 90); var py1 = _py + lengthdir_y(1000, _dir + 90);
draw_line_dashed(px0, py0, px1, py1);
var _px = px - lengthdir_x(_ran + fal, _dir); var _py = py - lengthdir_y(_ran + fal, _dir);
var px0 = _px + lengthdir_x(1000, _dir - 90); var py0 = _py + lengthdir_y(1000, _dir - 90);
var px1 = _px + lengthdir_x(1000, _dir + 90); var py1 = _py + lengthdir_y(1000, _dir + 90);
draw_line_dashed(px0, py0, px1, py1);
}
active &= inputs[| 2].drawOverlay(active, _x, _y, _s, _mx, _my, _snx, _sny);
active &= inputs[| 4].drawOverlay(active, px, py, _s, _mx, _my, _snx, _sny);
active &= inputs[| 3].drawOverlay(active, px, py, _s, _mx, _my, _snx, _sny, 0, 1, THEME.anchor_scale_hori);
}
static update = function(frame = ANIMATOR.current_frame) {
var _typ = inputs[| 1].getValue();
inputs[| 4].setVisible(_typ == 1);
STRAND_EFFECTOR_PRE
// add effect (pnt, mulp)
STRAND_EFFECTOR_POST
}
static onDrawNode = function(xx, yy, _mx, _my, _s, _hover, _focus) {
var bbox = drawGetBbox(xx, yy, _s);
draw_sprite_fit(s_node_strandSim_force, 0, bbox.xc, bbox.yc, bbox.w, bbox.h);
}
}

View file

@ -0,0 +1,11 @@
{
"resourceType": "GMScript",
"resourceVersion": "1.0",
"name": "_node_strand_affector",
"isCompatibility": false,
"isDnD": false,
"parent": {
"name": "strandSim",
"path": "folders/nodes/data/strandSim.yy",
},
}

View file

@ -9,6 +9,13 @@ enum AREA_MODE {
two_point, two_point,
} }
enum AREA_INDEX {
center_x,
center_y,
half_w,
half_h
}
function areaBox(_onModify, _unit = noone) : widget() constructor { function areaBox(_onModify, _unit = noone) : widget() constructor {
onModify = _onModify; onModify = _onModify;
unit = _unit; unit = _unit;

View file

@ -12,8 +12,9 @@ function surface_apply_gaussian(surface, size, bg = false, bg_c = c_white, sampl
static uni_ovr = shader_get_uniform(sh_blur_gaussian, "overrideColor"); static uni_ovr = shader_get_uniform(sh_blur_gaussian, "overrideColor");
static uni_ovc = shader_get_uniform(sh_blur_gaussian, "overColor"); static uni_ovc = shader_get_uniform(sh_blur_gaussian, "overColor");
__blur_hori = surface_verify(__blur_hori, surface_get_width(surface), surface_get_height(surface)); var format = surface_get_format(surface)
__blur_vert = surface_verify(__blur_vert, surface_get_width(surface), surface_get_height(surface)); __blur_hori = surface_verify(__blur_hori, surface_get_width(surface), surface_get_height(surface), format);
__blur_vert = surface_verify(__blur_vert, surface_get_width(surface), surface_get_height(surface), format);
#region kernel generation #region kernel generation
size = max(1, round(size)); size = max(1, round(size));

View file

@ -9,6 +9,7 @@ function buttonClass(_onClick, _icon = noone) : widget() constructor {
text = ""; text = "";
tooltip = ""; tooltip = "";
blend = c_white;
onClick = _onClick; onClick = _onClick;
@ -40,18 +41,20 @@ function buttonClass(_onClick, _icon = noone) : widget() constructor {
w = _w; w = _w;
h = _h; h = _h;
var b = colorMultiply(self.blend, blend);
var click = false; var click = false;
if(hover && point_in_rectangle(_m[0], _m[1], _x, _y, _x + _w, _y + _h)) { if(hover && point_in_rectangle(_m[0], _m[1], _x, _y, _x + _w, _y + _h)) {
draw_sprite_stretched_ext(spr, 1, _x, _y, _w, _h, blend, 1); draw_sprite_stretched_ext(spr, 1, _x, _y, _w, _h, b, 1);
if(mouse_press(mb_left, active)) { if(mouse_press(mb_left, active)) {
trigger(); trigger();
click = true; click = true;
} }
if(mouse_click(mb_left, active)) if(mouse_click(mb_left, active))
draw_sprite_stretched_ext(spr, 2, _x, _y, _w, _h, blend, 1); draw_sprite_stretched_ext(spr, 2, _x, _y, _w, _h, b, 1);
if(tooltip != "") TOOLTIP = tooltip; if(tooltip != "") TOOLTIP = tooltip;
} else { } else {
draw_sprite_stretched_ext(spr, 0, _x, _y, _w, _h, blend, 1); draw_sprite_stretched_ext(spr, 0, _x, _y, _w, _h, b, 1);
if(mouse_press(mb_left)) deactivate(); if(mouse_press(mb_left)) deactivate();
} }

View file

@ -6,6 +6,9 @@ function buttonGroupClass(_data, _onClick) : widget() constructor {
data = _data; data = _data;
onClick = _onClick; onClick = _onClick;
display_button = false; display_button = false;
buttonSpr = [ THEME.button_left, THEME.button_middle, THEME.button_right ];
font = f_p0;
fColor = COLORS._main_text;
current_selecting = 0; current_selecting = 0;
@ -61,7 +64,7 @@ function buttonGroupClass(_data, _onClick) : widget() constructor {
buttons[i].active = active; buttons[i].active = active;
var bx = _x + ww * i; var bx = _x + ww * i;
var spr = i == 0 ? THEME.button_left : (i == amo - 1? THEME.button_right : THEME.button_middle); var spr = i == 0 ? buttonSpr[0] : (i == amo - 1? buttonSpr[2] : buttonSpr[1]);
if(_selecting == i) if(_selecting == i)
draw_sprite_stretched(spr, 2, bx, _y, ww, _h); draw_sprite_stretched(spr, 2, bx, _y, ww, _h);
@ -69,7 +72,7 @@ function buttonGroupClass(_data, _onClick) : widget() constructor {
onClick(i); onClick(i);
if(is_string(data[i])) { if(is_string(data[i])) {
draw_set_text(f_p0, fa_center, fa_center, COLORS._main_text); draw_set_text(font, fa_center, fa_center, fColor);
draw_text(bx + ww / 2, _y + _h / 2, data[i]); draw_text(bx + ww / 2, _y + _h / 2, data[i]);
} else if(sprite_exists(data[i])) { } else if(sprite_exists(data[i])) {
draw_sprite_ui_uniform(data[i], i, bx + ww / 2, _y + _h / 2); draw_sprite_ui_uniform(data[i], i, bx + ww / 2, _y + _h / 2);

View file

@ -5,7 +5,7 @@
"isCompatibility": false, "isCompatibility": false,
"isDnD": false, "isDnD": false,
"parent": { "parent": {
"name": "sprites", "name": "scritps",
"path": "folders/sprites.yy", "path": "folders/main/scritps.yy",
}, },
} }

View file

@ -103,7 +103,7 @@ function curveBox(_onModify) : widget() constructor {
var msy = _m[1] - _y; var msy = _m[1] - _y;
surface_set_target(curve_surface); surface_set_target(curve_surface);
draw_clear_alpha(0, 0); DRAW_CLEAR
draw_set_color(COLORS.widget_curve_line); draw_set_color(COLORS.widget_curve_line);
draw_set_alpha(0.75); draw_set_alpha(0.75);
var y0 = _h - _h * (0 - miny) / (maxy - miny); var y0 = _h - _h * (0 - miny) / (maxy - miny);

View file

@ -0,0 +1,112 @@
function _find_polygon_edges(triangles) {
var polygon = [];
for (var i = 0; i < array_length(triangles); i++) {
var triangle = triangles[i];
for (var j = 0; j < 3; j++) {
var edge_start = triangle[j];
var edge_end = triangle[(j + 1) % 3];
var shared = false;
for (var k = 0; k < array_length(triangles); k++) {
if(k == i) continue;
if (_shares_edge(triangles[k], edge_start, edge_end)) {
shared = true;
break;
}
}
if (!shared) {
array_push(polygon, edge_start);
array_push(polygon, edge_end);
}
}
}
return polygon;
}
function _shares_vertex(triangle1, triangle2) {
for (var i = 0; i < 3; i++)
for (var j = 0; j < 3; j++) {
if (triangle1[i].equal(triangle2[j]))
return true;
}
return false;
}
function _shares_edge(triangle, edge_start, edge_end) {
var count = 0;
for (var i = 0; i < 3; i++) {
if (triangle[i].equal(edge_start) || triangle[i].equal(edge_end))
count++;
}
return count == 2;
}
function _create_super_triangle(points) {
var min_x = points[0].x, max_x = min_x, min_y = points[0].y, max_y = min_y;
for (var i = 1; i < array_length(points); i++) {
var point = points[i];
min_x = min(min_x, point.x);
max_x = max(max_x, point.x);
min_y = min(min_y, point.y);
max_y = max(max_y, point.y);
}
var dx = max_x - min_x, dy = max_y - min_y;
var d_max = max(dx, dy);
var center_x = (min_x + max_x) / 2, center_y = (min_y + max_y) / 2;
return [
new Point(center_x - 2 * d_max, center_y - d_max),
new Point(center_x, center_y + 2 * d_max),
new Point(center_x + 2 * d_max, center_y - d_max)
];
}
function _triangle_is_ccw(triangle) {
var a = triangle[0], b = triangle[1], c = triangle[2];
return ((b.x - a.x) * (c.y - a.y) - (c.x - a.x) * (b.y - a.y)) > 0;
}
function _point_in_circumcircle(point, triangle) {
var a = triangle[0], b = triangle[1], c = triangle[2];
if(!_triangle_is_ccw(triangle)) {
b = triangle[2];
c = triangle[1];
}
// Calculate the determinant
var ax = a.x - point.x, ay = a.y - point.y;
var bx = b.x - point.x, by = b.y - point.y;
var cx = c.x - point.x, cy = c.y - point.y;
var det = (ax * ax + ay * ay) * (bx * cy - cx * by)
- (bx * bx + by * by) * (ax * cy - cx * ay)
+ (cx * cx + cy * cy) * (ax * by - bx * ay);
return det > 0;
}
function array_remove_triangles(arr, target) {
for (var i = array_length(arr) - 1; i >= 0; i--) {
var triangle = arr[i];
var match_count = 0;
for (var j = 0; j < 3; j++)
for (var k = 0; k < 3; k++) {
if (triangle[j].equal(target[k])) {
match_count += 1;
break;
}
}
if (match_count == 3)
array_delete(arr, i, 1);
}
}

View file

@ -0,0 +1,11 @@
{
"resourceType": "GMScript",
"resourceVersion": "1.0",
"name": "delau_helper",
"isCompatibility": false,
"isDnD": false,
"parent": {
"name": "delaunay",
"path": "folders/functions/delaunay.yy",
},
}

View file

@ -0,0 +1,46 @@
function delaunay_triangulation(points) {
if(array_length(points) < 3) return [];
var super_triangle = _create_super_triangle(points);
var triangles = [];
array_push(triangles, super_triangle);
for (var i = 0; i < array_length(points); i++) {
//show_debug_message("=====")
var _point = points[i];
var bad_triangles = [];
for (var j = 0; j < array_length(triangles); j++) {
var _triangle = triangles[j];
if (_point_in_circumcircle(_point, _triangle))
array_push(bad_triangles, _triangle);
}
//show_debug_message("Bad triangles: " + string(bad_triangles));
var polygon = _find_polygon_edges(bad_triangles);
//show_debug_message("Polygon hole: " + string(polygon));
//show_debug_message("Triangle before remove: " + string(array_length(triangles)));
for (var j = 0; j < array_length(bad_triangles); j++)
array_remove_triangles(triangles, bad_triangles[j]);
//show_debug_message("Triangle after remove: " + string(array_length(triangles)));
for (var j = 0; j < array_length(polygon); j += 2) {
var new_triangle = [_point, polygon[j], polygon[j + 1]];
array_push(triangles, new_triangle);
}
//show_debug_message("Triangle after patch hole: " + string(array_length(triangles)));
}
for (var i = array_length(triangles) - 1; i >= 0; i--) {
var _triangle = triangles[i];
if (_shares_vertex(super_triangle, _triangle))
array_delete(triangles, i, 1);
}
return triangles;
}

View file

@ -0,0 +1,11 @@
{
"resourceType": "GMScript",
"resourceVersion": "1.0",
"name": "delaunay",
"isCompatibility": false,
"isDnD": false,
"parent": {
"name": "delaunay",
"path": "folders/functions/delaunay.yy",
},
}

View file

@ -29,7 +29,7 @@ function get_points_from_dist(distMap, amount, seed = 0, attempt = 8) {
var surf = surface_create_valid(amount, 1); var surf = surface_create_valid(amount, 1);
surface_set_target(surf); surface_set_target(surf);
draw_clear_alpha(0, 0); DRAW_CLEAR
BLEND_OVERRIDE; BLEND_OVERRIDE;
shader_set(sh_sample_points); shader_set(sh_sample_points);
shader_set_uniform_f(shader_get_uniform(sh_sample_points, "dimension"), shader_set_uniform_f(shader_get_uniform(sh_sample_points, "dimension"),
@ -37,7 +37,7 @@ function get_points_from_dist(distMap, amount, seed = 0, attempt = 8) {
shader_set_uniform_i(shader_get_uniform(sh_sample_points, "attempt"), attempt); shader_set_uniform_i(shader_get_uniform(sh_sample_points, "attempt"), attempt);
shader_set_uniform_f(shader_get_uniform(sh_sample_points, "seed"), seed); shader_set_uniform_f(shader_get_uniform(sh_sample_points, "seed"), seed);
draw_surface_stretched(distMap, 0, 0, amount, 1); draw_surface_stretched_safe(distMap, 0, 0, amount, 1);
shader_reset(); shader_reset();
BLEND_NORMAL; BLEND_NORMAL;
surface_reset_target(); surface_reset_target();

View file

@ -65,3 +65,7 @@ function draw_ellipse_dash(x0, y0, x1, y1, th = 1, dash = 8) {
oy = ny; oy = ny;
} }
} }
function draw_circle_dash(_x, _y, rad, th = 1, dash = 8) {
draw_ellipse_dash(_x - rad, _y - rad, _x + rad, _y + rad, th, dash);
}

View file

@ -92,7 +92,7 @@ function draw_tooltip_surface_array(surf) {
var cx = mx + ui(8) + j * nn + nn / 2; var cx = mx + ui(8) + j * nn + nn / 2;
var cy = my + ui(8) + i * nn + nn / 2; var cy = my + ui(8) + i * nn + nn / 2;
draw_surface_ext(surf[ind], cx - sw * ss / 2, cy - sh * ss / 2, ss, ss, 0, c_white, 1); draw_surface_ext_safe(surf[ind], cx - sw * ss / 2, cy - sh * ss / 2, ss, ss, 0, c_white, 1);
draw_set_color(COLORS._main_icon); draw_set_color(COLORS._main_icon);
draw_rectangle(cx - sw * ss / 2, cy - sh * ss / 2, cx + sw * ss / 2 - 1, cy + sh * ss / 2 - 1, true); draw_rectangle(cx - sw * ss / 2, cy - sh * ss / 2, cx + sw * ss / 2 - 1, cy + sh * ss / 2 - 1, true);
} }

View file

@ -13,7 +13,7 @@ FONT_SPRITES = ds_map_create();
var s = surface_create(ww, hh); var s = surface_create(ww, hh);
surface_set_target(s); surface_set_target(s);
draw_clear_alpha(0, 0); DRAW_CLEAR
draw_text(0, 0, name); draw_text(0, 0, name);
surface_reset_target(); surface_reset_target();

View file

@ -1095,7 +1095,7 @@ function gameframe_std_Std_stringify(_value) {
if (is_struct(_value)) { if (is_struct(_value)) {
var _e = _value[$"__enum__"]; var _e = _value[$"__enum__"];
if (_e == undefined) return string(_value); if (_e == undefined) return string(_value);
var _ects = _e.constructors; var _ects = _e._constructor;
if (_ects != undefined) { if (_ects != undefined) {
_i = _value.__enumIndex__; _i = _value.__enumIndex__;
if (_i >= 0 && _i < array_length(_ects)) _s = _ects[_i]; else _s = "?"; if (_i >= 0 && _i < array_length(_ects)) _s = _ects[_i]; else _s = "?";

View file

@ -637,7 +637,7 @@ function gif_std_enum_getIndex() {
if (is_struct(_value)) { if (is_struct(_value)) {
var _e = variable_struct_get(_value, "__enum__"); var _e = variable_struct_get(_value, "__enum__");
if (_e == undefined) return string(_value); if (_e == undefined) return string(_value);
var _ects = _e.constructors; var _ects = _e._constructor;
if (_ects != undefined) { if (_ects != undefined) {
_i = _value.__enumIndex__; _i = _value.__enumIndex__;
if (_i >= 0 && _i < array_length(_ects)) _s = _ects[_i]; else _s = "?"; if (_i >= 0 && _i < array_length(_ects)) _s = _ects[_i]; else _s = "?";
@ -911,8 +911,8 @@ function gif_std_enum_getIndex() {
#endregion #endregion
#region gif_std.haxe.enum #region gif_std.haxe.enum
function gif_std_haxe_enum(_id, _name, _constructors) constructor { function gif_std_haxe_enum(_id, _name, _constructor) constructor {
static constructors = undefined; static _constructor = undefined;
static marker = undefined; static marker = undefined;
static index = undefined; static index = undefined;
static name = undefined; static name = undefined;
@ -920,7 +920,7 @@ function gif_std_enum_getIndex() {
self.marker = gif_std_haxe_type_markerValue; self.marker = gif_std_haxe_type_markerValue;
self.index = _id; self.index = _id;
self.name = _name; self.name = _name;
self.constructors = _constructors; self._constructor = _constructor;
static __class__ = "enum"; static __class__ = "enum";
} }
mt_gif_std_haxe_enum.i_constructor = gif_std_haxe_enum; mt_gif_std_haxe_enum.i_constructor = gif_std_haxe_enum;

View file

@ -31,9 +31,9 @@
COLOR_KEYS = []; COLOR_KEYS = [];
globalvar VERSION, SAVEFILE_VERSION, VERSION_STRING; globalvar VERSION, SAVEFILE_VERSION, VERSION_STRING;
VERSION = 1138; VERSION = 1140;
SAVEFILE_VERSION = 1380; SAVEFILE_VERSION = 1400;
VERSION_STRING = "1.13.8"; VERSION_STRING = "1.14.0";
globalvar NODES, NODE_MAP, APPEND_MAP, HOTKEYS, HOTKEY_CONTEXT, NODE_INSTANCES; globalvar NODES, NODE_MAP, APPEND_MAP, HOTKEYS, HOTKEY_CONTEXT, NODE_INSTANCES;
@ -117,15 +117,6 @@
#macro c_ui_white $ffffff #macro c_ui_white $ffffff
#endregion #endregion
#region functions
#macro BLEND_NORMAL gpu_set_blendmode(bm_normal)
#macro BLEND_ADD gpu_set_blendmode(bm_add)
#macro BLEND_OVERRIDE gpu_set_blendmode_ext(bm_one, bm_zero)
#macro BLEND_ALPHA gpu_set_blendmode_ext_sepalpha(bm_one, bm_inv_src_alpha, bm_one, bm_one)
#macro BLEND_ALPHA_MULP gpu_set_blendmode_ext_sepalpha(bm_src_alpha, bm_inv_src_alpha, bm_one, bm_one)
#endregion
#macro printlog if(log) show_debug_message #macro printlog if(log) show_debug_message
#macro RETURN_ON_REST if(!ANIMATOR.is_playing || !ANIMATOR.frame_progress) return; #macro RETURN_ON_REST if(!ANIMATOR.is_playing || !ANIMATOR.frame_progress) return;

View file

@ -0,0 +1,69 @@
function globalvar_viewer_init() {
var_editing = false;
}
function globalvar_viewer_draw(xx, yy, ww, _m, focus, hover, _scrollPane, rx, ry) {
var hh = 0;
var lb_h = line_height(f_p0) + ui(8);
var padd = ui(8);
if(var_editing) {
var del = noone;
if(ds_list_size(GLOBAL.inputs)) {
yy += ui(8);
hh += ui(8);
}
var wd_x = xx;
var wd_w = ww;
for( var j = 0; j < ds_list_size(GLOBAL.inputs); j++ ) {
var _inpu = GLOBAL.inputs[| j];
var _edit = _inpu.editor;
var wd_h = ui(32);
if(j) {
draw_set_color(merge_color(c_black, COLORS.panel_toolbar_separator, 0.75));
draw_line_round(wd_x + ui(8), yy, wd_x + wd_w - ui(16), yy, 4);
yy += ui(10);
hh += ui(10);
}
_edit.tb_name.setActiveFocus(focus, hover);
_edit.sc_type.setActiveFocus(focus, hover);
_edit.sc_disp.setActiveFocus(focus, hover);
_edit.tb_name.draw(wd_x, yy, wd_w - wd_h - ui(4), wd_h, _inpu.name, _m, TEXTBOX_INPUT.text);
if(buttonInstant(THEME.button_hide, wd_x + wd_w - wd_h, yy + ui(2), wd_h, wd_h, _m, focus, hover,, THEME.icon_delete,, COLORS._main_value_negative) == 2)
del = j;
yy += wd_h + ui(8);
hh += wd_h + ui(8);
_edit.sc_type.draw(wd_x, yy, wd_w / 2 - ui(2), wd_h, _edit.val_type_name[_edit.type_index], _m, rx, ry);
_edit.sc_disp.draw(wd_x + wd_w / 2 + ui(2), yy, wd_w / 2 - ui(2), wd_h, _edit.sc_disp.data_list[_edit.disp_index], _m, rx, ry);
yy += wd_h + ui(4);
hh += wd_h + ui(4);
var wd_h = _inpu.editor.draw(wd_x, yy, wd_w, _m, focus, hover);
yy += wd_h + ui(4);
hh += wd_h + ui(4);
}
if(del != noone)
ds_list_delete(GLOBAL.inputs, del);
} else {
for( var j = 0; j < ds_list_size(GLOBAL.inputs); j++ ) {
var widg = drawWidget(xx, yy, ww, _m, GLOBAL.inputs[| j], true, focus, hover, _scrollPane, rx, ry);
var widH = widg[0];
var mbRight = widg[1];
yy += lb_h + widH + padd;
hh += lb_h + widH + padd;
}
}
return hh;
}

View file

@ -0,0 +1,11 @@
{
"resourceType": "GMScript",
"resourceVersion": "1.0",
"name": "globalvar_drawer",
"isCompatibility": false,
"isDnD": false,
"parent": {
"name": "components",
"path": "folders/panels/inspectors/components.yy",
},
}

View file

@ -1,6 +1,14 @@
function histogramInit() { function histogramInit() {
attributes[? "preview_resolution"] = 64;
array_push(attributeEditors, ["Preview resolution", "preview_resolution",
new textBox(TEXTBOX_INPUT.number, function(val) { attributes[? "preview_resolution"] = val; })]);
attributes[? "preview_sample"] = 32;
array_push(attributeEditors, ["Preview sample", "preview_sample",
new textBox(TEXTBOX_INPUT.number, function(val) { attributes[? "preview_sample"] = val; })]);
for( var i = 0; i < 4; i++ ) { for( var i = 0; i < 4; i++ ) {
hist[i] = array_create(PREF_MAP[? "level_resolution"] + 1); hist[i] = array_create(attributes[? "preview_resolution"] + 1);
histShow[i] = true; histShow[i] = true;
} }
histMax = 0; histMax = 0;
@ -42,7 +50,7 @@ function histogramDraw(_x, _y, _w, _h) {
} }
function histogramUpdate(surface) { function histogramUpdate(surface) {
if(array_length(hist[0]) != PREF_MAP[? "level_resolution"] + 1) if(array_length(hist[0]) != attributes[? "preview_resolution"] + 1)
histogramInit(); histogramInit();
if(!is_surface(surface)) return; if(!is_surface(surface)) return;
@ -50,8 +58,8 @@ function histogramUpdate(surface) {
histMax = 0; histMax = 0;
var sw = surface_get_width(surface); var sw = surface_get_width(surface);
var sh = surface_get_height(surface); var sh = surface_get_height(surface);
var stw = max(1, sw / PREF_MAP[? "level_max_sampling"]); var stw = max(1, sw / attributes[? "preview_sample"]);
var sth = max(1, sh / PREF_MAP[? "level_max_sampling"]); var sth = max(1, sh / attributes[? "preview_sample"]);
for( var j = 0; j < 4; j++ ) for( var j = 0; j < 4; j++ )
for( var i = 0; i < array_length(hist[0]); i++ ) { for( var i = 0; i < array_length(hist[0]); i++ ) {
@ -65,9 +73,9 @@ function histogramUpdate(surface) {
for( var j = 0; j < sh; j += sth ) { for( var j = 0; j < sh; j += sth ) {
var col = buffer_get_color(surface_buffer, i, j, sw, sh); var col = buffer_get_color(surface_buffer, i, j, sw, sh);
var colA = []; var colA = [];
colA[0] = round(color_get_red(col) / 256 * PREF_MAP[? "level_resolution"]); colA[0] = round(color_get_red(col) / 256 * attributes[? "preview_resolution"]);
colA[1] = round(color_get_green(col) / 256 * PREF_MAP[? "level_resolution"]); colA[1] = round(color_get_green(col) / 256 * attributes[? "preview_resolution"]);
colA[2] = round(color_get_blue(col) / 256 * PREF_MAP[? "level_resolution"]); colA[2] = round(color_get_blue(col) / 256 * attributes[? "preview_resolution"]);
colA[3] = round((colA[0] + colA[1] + colA[2]) / 3); colA[3] = round((colA[0] + colA[1] + colA[2]) / 3);
for( var k = 0; k < 4; k++ ) { for( var k = 0; k < 4; k++ ) {

View file

@ -0,0 +1,11 @@
{
"resourceType": "GMScript",
"resourceVersion": "1.0",
"name": "histogram_drawer",
"isCompatibility": false,
"isDnD": false,
"parent": {
"name": "components",
"path": "folders/panels/inspectors/components.yy",
},
}

View file

@ -0,0 +1,12 @@
function gcd(num1, num2) {
var a = abs(num1);
var b = abs(num2);
while (b != 0) {
var temp = b;
b = a % b;
a = temp;
}
return a;
}

View file

@ -0,0 +1,11 @@
{
"resourceType": "GMScript",
"resourceVersion": "1.0",
"name": "lcd_function",
"isCompatibility": false,
"isDnD": false,
"parent": {
"name": "value",
"path": "folders/functions/value.yy",
},
}

View file

@ -1,7 +1,8 @@
function mask_apply(original, edited, mask, mix = 1) { function mask_apply(original, edited, mask, mix = 1) {
if(!is_surface(mask) && mix == 1) return edited; if(!is_surface(mask) && mix == 1) return edited;
var _s = surface_create_size(original); var _f = surface_get_format(edited);
var _s = surface_create_size(original, _f);
surface_set_target(_s); surface_set_target(_s);
shader_set(sh_mask); shader_set(sh_mask);

View file

@ -0,0 +1,326 @@
function drawWidgetInit() {
anim_toggling = false;
anim_hold = noone;
visi_hold = noone;
min_w = ui(160);
lineBreak = true;
}
function drawWidget(xx, yy, ww, _m, jun, global_var = true, _hover, _focus, _scrollPane, rx, ry) {
var con_w = ww - ui(4);
var xc = xx + ww / 2;
var lb_h = line_height(f_p0) + ui(8);
var lb_y = yy + lb_h / 2;
var butx = xx;
if(jun.connect_type == JUNCTION_CONNECT.input && jun.isAnimable() && !jun.global_use && !global_var) {
var index = jun.value_from == noone? jun.animator.is_anim : 2;
draw_sprite_ui_uniform(THEME.animate_clock, index, butx, lb_y, 1,, 0.8);
if(_hover && point_in_circle(_m[0], _m[1], butx, lb_y, ui(10))) {
if(anim_hold != noone)
jun.animator.is_anim = anim_hold;
draw_sprite_ui_uniform(THEME.animate_clock, index, butx, lb_y, 1,, 1);
TOOLTIP = jun.value_from == noone? get_text("panel_inspector_toggle_anim", "Toggle animation") : get_text("panel_inspector_remove_link", "Remove link");
if(mouse_press(mb_left, _focus)) {
if(jun.value_from != noone)
jun.removeFrom();
else {
recordAction(ACTION_TYPE.var_modify, jun.animator, [ jun.animator.is_anim, "is_anim", jun.name + " animation" ]);
jun.animator.is_anim = !jun.animator.is_anim;
anim_hold = jun.animator.is_anim;
}
PANEL_ANIMATION.updatePropertyList();
}
}
}
if(anim_hold != noone && mouse_release(mb_left))
anim_hold = noone;
butx += ui(20);
if(!global_var) {
if(jun.global_use) {
draw_sprite_ui_uniform(THEME.node_use_global, GLOBAL.inputGetable(jun, jun.global_key)? 0 : 2, butx, lb_y, 1,, 0.8);
} else {
index = jun.visible;
draw_sprite_ui_uniform(THEME.junc_visible, index, butx, lb_y, 1,, 0.8);
if(_hover && point_in_circle(_m[0], _m[1], butx, lb_y, ui(10))) {
if(visi_hold != noone)
jun.visible = visi_hold;
draw_sprite_ui_uniform(THEME.junc_visible, index, butx, lb_y, 1,, 1);
TOOLTIP = get_text("visibility", "Visibility");
if(mouse_press(mb_left, _focus)) {
jun.visible = !jun.visible;
visi_hold = jun.visible;
}
}
}
} else
draw_sprite_ui_uniform(THEME.node_use_global, 0, butx, lb_y, 1,, 0.8);
if(visi_hold != noone && mouse_release(mb_left))
visi_hold = noone;
var cc = COLORS._main_text;
if(jun.global_use)
cc = GLOBAL.inputGetable(jun, jun.global_key)? COLORS._main_value_positive : COLORS._main_value_negative;
draw_set_text(f_p0, fa_left, fa_center, cc);
draw_text_over(xx + ui(40), lb_y - ui(2), jun.name);
var lb_w = string_width(jun.name) + ui(32);
#region tooltip
if(jun.tooltip != "") {
var tx = xx + ui(40) + string_width(jun.name) + ui(16);
var ty = lb_y - ui(1);
if(point_in_circle(_m[0], _m[1], tx, ty, ui(10))) {
if(is_string(jun.tooltip))
TOOLTIP = jun.tooltip;
else if(mouse_click(mb_left, _focus))
dialogCall(jun.tooltip);
draw_sprite_ui(THEME.info, 0, tx, ty,,,, COLORS._main_icon_light, 1);
} else
draw_sprite_ui(THEME.info, 0, tx, ty,,,, COLORS._main_icon_light, 0.75);
}
#endregion
#region anim
if(jun.connect_type == JUNCTION_CONNECT.input && lineBreak && jun.animator.is_anim && !global_var) {
var bx = xx + ww - ui(12);
var by = lb_y;
if(buttonInstant(THEME.button_hide, bx - ui(12), by - ui(12), ui(24), ui(24), _m, _focus, _hover, "", THEME.prop_keyframe, 2) == 2) {
for(var j = 0; j < ds_list_size(jun.animator.values); j++) {
var _key = jun.animator.values[| j];
if(_key.time > ANIMATOR.current_frame) {
ANIMATOR.setFrame(_key.time);
break;
}
}
}
bx -= ui(26);
var cc = COLORS.panel_animation_keyframe_unselected;
var kfFocus = false;
for(var j = 0; j < ds_list_size(jun.animator.values); j++) {
if(jun.animator.values[| j].time == ANIMATOR.current_frame) {
cc = COLORS.panel_animation_keyframe_selected;
kfFocus = true;
break;
}
}
if(buttonInstant(THEME.button_hide, bx - ui(12), by - ui(12), ui(24), ui(24), _m, _focus, _hover, kfFocus? get_text("panel_inspector_remove_key", "Remove keyframe") :
get_text("panel_inspector_add_key", "Add keyframe"), THEME.prop_keyframe, 1, cc) == 2) {
var _add = false;
for(var j = 0; j < ds_list_size(jun.animator.values); j++) {
var _key = jun.animator.values[| j];
if(_key.time == ANIMATOR.current_frame) {
if(ds_list_size(jun.animator.values) > 1)
ds_list_delete(jun.animator.values, j);
_add = true;
break;
} else if(_key.time > ANIMATOR.current_frame) {
ds_list_insert(jun.animator.values, j, new valueKey(ANIMATOR.current_frame, jun.showValue(), jun.animator));
_add = true;
break;
}
}
if(!_add) ds_list_add(jun.animator.values, new valueKey(ANIMATOR.current_frame, jun.showValue(), jun.animator));
}
bx -= ui(26);
if(buttonInstant(THEME.button_hide, bx - ui(12), by - ui(12), ui(24), ui(24), _m, _focus, _hover, "", THEME.prop_keyframe, 0) == 2) {
var _t = -1;
for(var j = 0; j < ds_list_size(jun.animator.values); j++) {
var _key = jun.animator.values[| j];
if(_key.time < ANIMATOR.current_frame)
_t = _key.time;
}
if(_t > -1) ANIMATOR.setFrame(_t);
}
var lhf = lb_h / 2 - 4;
draw_set_color(COLORS.panel_inspector_key_separator);
draw_line(bx - ui(20), by - lhf, bx - ui(20), by + lhf);
draw_set_color(COLORS.panel_inspector_key_separator);
draw_line(bx - ui(20), by - lhf, bx - ui(20), by + lhf);
bx -= ui(26 + 12);
if(buttonInstant(THEME.button_hide, bx - ui(12), by - ui(12), ui(24), ui(24), _m, _focus, _hover, get_text("panel_animation_looping_mode", "Looping mode") + " " + ON_END_NAME[jun.on_end], THEME.prop_on_end, jun.on_end) == 2)
jun.on_end = safe_mod(jun.on_end + 1, sprite_get_number(THEME.prop_on_end));
}
#endregion
#region use global
if(jun.connect_type == JUNCTION_CONNECT.input && lineBreak && !jun.animator.is_anim && !global_var) {
var bx = xx + ww - ui(12);
var by = lb_y;
var ic_b = jun.global_use? c_white : COLORS._main_icon;
if(buttonInstant(THEME.button_hide, bx - ui(12), by - ui(12), ui(24), ui(24), _m, _focus, _hover, "Use global variable", THEME.node_use_global, jun.global_use, ic_b) == 2)
jun.global_use = !jun.global_use;
}
#endregion
var _hsy = yy + lb_h;
var padd = ui(8);
var labelWidth = max(lb_w, min(ui(80) + ww * 0.2, ui(200)));
var editBoxX = xx + !lineBreak * labelWidth;
var editBoxY = lineBreak? _hsy : yy;
var editBoxW = (xx + ww) - editBoxX;
var editBoxH = lineBreak? TEXTBOX_HEIGHT : lb_h;
var widH = lineBreak? editBoxH : 0;
var mbRight = true;
if(jun.global_use) {
jun.global_edit.boxColor = GLOBAL.inputGetable(jun, jun.global_key)? COLORS._main_value_positive : COLORS._main_value_negative;
jun.global_edit.setActiveFocus(_focus, _hover);
jun.global_edit.setInteract(jun.value_from == noone);
if(_focus) jun.global_edit.register(_scrollPane);
var wd_h = jun.global_edit.draw(editBoxX, editBoxY, editBoxW, editBoxH, jun.global_key, _m);
widH = lineBreak? wd_h : 0;
} else if(jun.editWidget) {
jun.editWidget.setActiveFocus(_focus, _hover);
if(jun.connect_type == JUNCTION_CONNECT.input) {
jun.editWidget.setInteract(jun.value_from == noone);
if(_focus) jun.editWidget.register(_scrollPane);
} else {
jun.editWidget.setInteract(false);
}
switch(jun.display_type) {
case VALUE_DISPLAY.button :
jun.editWidget.draw(editBoxX, editBoxY, editBoxW, editBoxH, _m);
break;
default :
switch(jun.type) {
case VALUE_TYPE.integer :
case VALUE_TYPE.float :
switch(jun.display_type) {
case VALUE_DISPLAY._default :
case VALUE_DISPLAY.range :
case VALUE_DISPLAY.vector :
jun.editWidget.draw(editBoxX, editBoxY, editBoxW, editBoxH, jun.showValue(), _m);
break;
case VALUE_DISPLAY.vector_range :
var ebH = jun.editWidget.draw(editBoxX, editBoxY, editBoxW, editBoxH, jun.showValue(), _m);
widH = lineBreak? ebH : ebH - lb_h;
break;
case VALUE_DISPLAY.enum_scroll :
jun.editWidget.draw(editBoxX, editBoxY, editBoxW, editBoxH, array_safe_get(jun.display_data, jun.showValue()), _m, rx, ry);
break;
case VALUE_DISPLAY.enum_button :
jun.editWidget.draw(editBoxX, editBoxY, editBoxW, editBoxH, jun.showValue(), _m, rx, ry);
break;
case VALUE_DISPLAY.padding :
jun.editWidget.draw(xc, _hsy + ui(32), jun.showValue(), _m);
widH = ui(192);
break;
case VALUE_DISPLAY.rotation :
case VALUE_DISPLAY.rotation_range :
jun.editWidget.draw(xc, _hsy, jun.showValue(), _m);
widH = ui(96);
break;
case VALUE_DISPLAY.slider :
case VALUE_DISPLAY.slider_range :
jun.editWidget.draw(editBoxX, editBoxY, editBoxW, editBoxH, jun.showValue(), _m);
break;
case VALUE_DISPLAY.area :
jun.editWidget.draw(xc, _hsy + ui(40), jun.showValue(), jun.extra_data, _m);
widH = ui(204);
break;
case VALUE_DISPLAY.puppet_control :
widH = jun.editWidget.draw(editBoxX, editBoxY, editBoxW, jun.showValue(), _m, rx, ry);
break;
case VALUE_DISPLAY.kernel :
var ebH = jun.editWidget.draw(editBoxX, editBoxY, editBoxW, editBoxH, jun.showValue(), _m);
widH = lineBreak? ebH : ebH - lb_h;
break;
}
break;
case VALUE_TYPE.boolean :
editBoxX = lineBreak? editBoxX : (labelWidth + con_w) / 2;
jun.editWidget.draw(editBoxX, editBoxY, jun.showValue(), _m, editBoxH);
break;
case VALUE_TYPE.color :
switch(jun.display_type) {
case VALUE_DISPLAY.gradient :
jun.editWidget.draw(editBoxX, editBoxY, editBoxW, editBoxH, jun.showValue(), _m);
break;
default :
jun.editWidget.draw(editBoxX, editBoxY, editBoxW, editBoxH, jun.showValue(), _m);
break;
}
break;
case VALUE_TYPE.path :
switch(jun.display_type) {
case VALUE_DISPLAY.path_load :
case VALUE_DISPLAY.path_save :
case VALUE_DISPLAY.path_array :
jun.editWidget.draw(editBoxX, editBoxY, editBoxW, editBoxH, jun.showValue(), _m);
break;
case VALUE_DISPLAY.path_font :
var val = jun.showValue();
if(file_exists(val))
val = filename_name(val);
jun.editWidget.draw(editBoxX, editBoxY, editBoxW, editBoxH, val, _m, rx, ry);
break;
}
break;
case VALUE_TYPE.surface :
editBoxH = ui(96);
jun.editWidget.draw(editBoxX, editBoxY, editBoxW, editBoxH, jun.showValue(), _m, rx, ry);
widH = lineBreak? editBoxH : editBoxH - lb_h;
break;
case VALUE_TYPE.curve :
editBoxH = ui(160);
jun.editWidget.draw(ui(32), _hsy, ww - ui(16), editBoxH, jun.showValue(), _m);
if(point_in_rectangle(_m[0], _m[1], ui(32), _hsy, ui(32) + ww - ui(16), _hsy + editBoxH))
mbRight = false;
widH = editBoxH;
break;
case VALUE_TYPE.text :
var _hh = 0;
switch(instanceof(jun.editWidget)) {
case "textBox":
_hh = jun.editWidget.draw(editBoxX, editBoxY, editBoxW, editBoxH, jun.showValue(), _m, jun.display_type);
break;
case "textArea":
_hh = jun.editWidget.draw(ui(16), _hsy, ww, editBoxH, jun.showValue(), _m, jun.display_type);
break;
case "textArrayBox":
_hh = jun.editWidget.draw(ui(16), editBoxY, editBoxW, editBoxH, _m, rx, ry);
break;
}
widH = _hh;
break;
}
}
} else if(jun.display_type == VALUE_DISPLAY.label) {
draw_set_text(f_p1, fa_left, fa_top, COLORS._main_text_sub);
draw_text_over(xx + ui(16), _hsy, jun.display_data);
widH = string_height(jun.display_data);
} else
widH = 0;
//draw_set_color(c_white);
//draw_rectangle(xx, yy, xx + ww, yy + widH, true);
//draw_set_color(c_red);
//draw_line(xx + ww / 2, yy, xx + ww / 2, yy + widH);
return [ widH, mbRight ];
}

View file

@ -0,0 +1,11 @@
{
"resourceType": "GMScript",
"resourceVersion": "1.0",
"name": "nodeValue_drawer",
"isCompatibility": false,
"isDnD": false,
"parent": {
"name": "components",
"path": "folders/panels/inspectors/components.yy",
},
}

View file

@ -69,6 +69,8 @@ function Node_2D_light(_x, _y, _group = noone) : Node_Processor(_x, _y, _group)
["Render", false], 11, 10 ["Render", false], 11, 10
]; ];
attribute_surface_depth();
static drawOverlay = function(active, _x, _y, _s, _mx, _my, _snx, _sny) { static drawOverlay = function(active, _x, _y, _s, _mx, _my, _snx, _sny) {
var _shape = inputs[| 1].getValue(); var _shape = inputs[| 1].getValue();
@ -148,7 +150,7 @@ function Node_2D_light(_x, _y, _group = noone) : Node_Processor(_x, _y, _group)
surface_set_target(_outSurf); surface_set_target(_outSurf);
if(_output_index == 0) { if(_output_index == 0) {
draw_clear_alpha(0, 0); DRAW_CLEAR
draw_surface_safe(_data[0], 0, 0); draw_surface_safe(_data[0], 0, 0);
} else } else
draw_clear_alpha(c_black, 1); draw_clear_alpha(c_black, 1);

Some files were not shown because too many files have changed in this diff Show more