diff --git a/PixelComposer.resource_order b/PixelComposer.resource_order index fc15588f9..b6cc0573b 100644 --- a/PixelComposer.resource_order +++ b/PixelComposer.resource_order @@ -134,15 +134,15 @@ {"name":"misc","order":50,"path":"folders/shader/misc.yy",}, {"name":"shape seperator","order":35,"path":"folders/shader/shape seperator.yy",}, {"name":"sprites","order":20,"path":"folders/shader/sprites.yy",}, + {"name":"surface replace","order":53,"path":"folders/shader/surface replace.yy",}, {"name":"transition","order":52,"path":"folders/shader/transition.yy",}, {"name":"warp","order":41,"path":"folders/shader/warp.yy",}, {"name":"sprites","order":12,"path":"folders/sprites.yy",}, {"name":"gameframe","order":2,"path":"folders/sprites/gameframe.yy",}, {"name":"widgets","order":5,"path":"folders/widgets.yy",}, - {"name":"surface replace","order":53,"path":"folders/shader/surface replace.yy",}, ], "ResourceOrderSettings": [ - {"name":"s_node_corner","order":14,"path":"sprites/s_node_corner/s_node_corner.yy",}, + {"name":"s_node_corner","order":16,"path":"sprites/s_node_corner/s_node_corner.yy",}, {"name":"sh_cell_noise_crystal","order":23,"path":"shaders/sh_cell_noise_crystal/sh_cell_noise_crystal.yy",}, {"name":"panel_function","order":2,"path":"scripts/panel_function/panel_function.yy",}, {"name":"node_time_remap","order":3,"path":"scripts/node_time_remap/node_time_remap.yy",}, @@ -154,7 +154,7 @@ {"name":"node_csv_file_write","order":13,"path":"scripts/node_csv_file_write/node_csv_file_write.yy",}, {"name":"surface_functions","order":5,"path":"scripts/surface_functions/surface_functions.yy",}, {"name":"sh_fd_add_velocity_glsl","order":1,"path":"shaders/sh_fd_add_velocity_glsl/sh_fd_add_velocity_glsl.yy",}, - {"name":"s_node_normal","order":28,"path":"sprites/s_node_normal/s_node_normal.yy",}, + {"name":"s_node_normal","order":30,"path":"sprites/s_node_normal/s_node_normal.yy",}, {"name":"buffer_function","order":3,"path":"scripts/buffer_function/buffer_function.yy",}, {"name":"node_pixel_sort","order":12,"path":"scripts/node_pixel_sort/node_pixel_sort.yy",}, {"name":"sh_dither","order":28,"path":"shaders/sh_dither/sh_dither.yy",}, @@ -165,7 +165,7 @@ {"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":"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":7,"path":"sprites/s_node_blend/s_node_blend.yy",}, {"name":"node_wrap_perspective","order":15,"path":"scripts/node_wrap_perspective/node_wrap_perspective.yy",}, {"name":"s_node_rigidSim_object_spawner","order":5,"path":"sprites/s_node_rigidSim_object_spawner/s_node_rigidSim_object_spawner.yy",}, {"name":"draw_text_function","order":11,"path":"scripts/draw_text_function/draw_text_function.yy",}, @@ -210,8 +210,8 @@ {"name":"sh_fd_visualize_velocity_glsl","order":19,"path":"shaders/sh_fd_visualize_velocity_glsl/sh_fd_visualize_velocity_glsl.yy",}, {"name":"fd_rectangle_set_material_time_step","order":8,"path":"scripts/fd_rectangle_set_material_time_step/fd_rectangle_set_material_time_step.yy",}, {"name":"s_node_path_sample","order":3,"path":"sprites/s_node_path_sample/s_node_path_sample.yy",}, - {"name":"s_node_colorize","order":13,"path":"sprites/s_node_colorize/s_node_colorize.yy",}, - {"name":"s_node_sepearte_shape","order":33,"path":"sprites/s_node_sepearte_shape/s_node_sepearte_shape.yy",}, + {"name":"s_node_colorize","order":15,"path":"sprites/s_node_colorize/s_node_colorize.yy",}, + {"name":"s_node_sepearte_shape","order":35,"path":"sprites/s_node_sepearte_shape/s_node_sepearte_shape.yy",}, {"name":"s_node_text_join","order":5,"path":"sprites/s_node_text_join/s_node_text_join.yy",}, {"name":"s_node_polar","order":5,"path":"sprites/s_node_polar/s_node_polar.yy",}, {"name":"draw_set_blend_mode_ext","order":2,"path":"scripts/draw_set_blend_mode_ext/draw_set_blend_mode_ext.yy",}, @@ -222,13 +222,13 @@ {"name":"fd_rectangle_set_collision_mask_sprite","order":1,"path":"scripts/fd_rectangle_set_collision_mask_sprite/fd_rectangle_set_collision_mask_sprite.yy",}, {"name":"sh_flip","order":7,"path":"shaders/sh_flip/sh_flip.yy",}, {"name":"libdlgmodule","order":3,"path":"extensions/libdlgmodule/libdlgmodule.yy",}, - {"name":"s_node_alpha_grey","order":2,"path":"sprites/s_node_alpha_grey/s_node_alpha_grey.yy",}, + {"name":"s_node_alpha_grey","order":4,"path":"sprites/s_node_alpha_grey/s_node_alpha_grey.yy",}, {"name":"fd_rectangle_set_pressure_iteration_type","order":10,"path":"scripts/fd_rectangle_set_pressure_iteration_type/fd_rectangle_set_pressure_iteration_type.yy",}, {"name":"_f_h1","order":11,"path":"fonts/_f_h1/_f_h1.yy",}, {"name":"_f_h2","order":12,"path":"fonts/_f_h2/_f_h2.yy",}, - {"name":"s_node_level","order":26,"path":"sprites/s_node_level/s_node_level.yy",}, + {"name":"s_node_level","order":28,"path":"sprites/s_node_level/s_node_level.yy",}, {"name":"node_scatter","order":3,"path":"scripts/node_scatter/node_scatter.yy",}, - {"name":"s_node_bloom","order":6,"path":"sprites/s_node_bloom/s_node_bloom.yy",}, + {"name":"s_node_bloom","order":8,"path":"sprites/s_node_bloom/s_node_bloom.yy",}, {"name":"s_node_flip","order":12,"path":"sprites/s_node_flip/s_node_flip.yy",}, {"name":"s_node_gradient_data","order":17,"path":"sprites/s_node_gradient_data/s_node_gradient_data.yy",}, {"name":"s_node_vfx_render","order":1,"path":"sprites/s_node_vfx_render/s_node_vfx_render.yy",}, @@ -271,7 +271,7 @@ {"name":"node_stripe","order":11,"path":"scripts/node_stripe/node_stripe.yy",}, {"name":"sh_texture_atlas","order":39,"path":"shaders/sh_texture_atlas/sh_texture_atlas.yy",}, {"name":"s_node_fluidSim_domain","order":6,"path":"sprites/s_node_fluidSim_domain/s_node_fluidSim_domain.yy",}, - {"name":"s_node_displace","order":18,"path":"sprites/s_node_displace/s_node_displace.yy",}, + {"name":"s_node_displace","order":20,"path":"sprites/s_node_displace/s_node_displace.yy",}, {"name":"sh_polar","order":1,"path":"shaders/sh_polar/sh_polar.yy",}, {"name":"s_node_warp_mesh","order":10,"path":"sprites/s_node_warp_mesh/s_node_warp_mesh.yy",}, {"name":"sh_pixel_cloud","order":13,"path":"shaders/sh_pixel_cloud/sh_pixel_cloud.yy",}, @@ -289,7 +289,8 @@ {"name":"sh_fd_subtract_pressure_gradient_glsl","order":12,"path":"shaders/sh_fd_subtract_pressure_gradient_glsl/sh_fd_subtract_pressure_gradient_glsl.yy",}, {"name":"s_node_color_adjust","order":2,"path":"sprites/s_node_color_adjust/s_node_color_adjust.yy",}, {"name":"sh_channel_B","order":1,"path":"shaders/sh_channel_B/sh_channel_B.yy",}, - {"name":"s_node_trail","order":38,"path":"sprites/s_node_trail/s_node_trail.yy",}, + {"name":"s_node_2d_light","order":2,"path":"sprites/s_node_2d_light/s_node_2d_light.yy",}, + {"name":"s_node_trail","order":40,"path":"sprites/s_node_trail/s_node_trail.yy",}, {"name":"fd_rectangle_update_view","order":5,"path":"scripts/fd_rectangle_update_view/fd_rectangle_update_view.yy",}, {"name":"s_node_rigidSim_renderer","order":1,"path":"sprites/s_node_rigidSim_renderer/s_node_rigidSim_renderer.yy",}, {"name":"__init_background","order":4,"path":"scripts/__init_background/__init_background.yy",}, @@ -301,22 +302,22 @@ {"name":"sh_noise_grid_tri","order":25,"path":"shaders/sh_noise_grid_tri/sh_noise_grid_tri.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_dithering","order":19,"path":"sprites/s_node_dithering/s_node_dithering.yy",}, + {"name":"s_node_dithering","order":21,"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":"node_compare","order":16,"path":"scripts/node_compare/node_compare.yy",}, {"name":"node_iterator_each_size","order":3,"path":"scripts/node_iterator_each_size/node_iterator_each_size.yy",}, - {"name":"s_node_HSV_combine","order":42,"path":"sprites/s_node_HSV_combine/s_node_HSV_combine.yy",}, + {"name":"s_node_HSV_combine","order":44,"path":"sprites/s_node_HSV_combine/s_node_HSV_combine.yy",}, {"name":"o_dialog_release_note","order":8,"path":"objects/o_dialog_release_note/o_dialog_release_note.yy",}, {"name":"sh_fd_advect_material_rgba_16_glsl","order":4,"path":"shaders/sh_fd_advect_material_rgba_16_glsl/sh_fd_advect_material_rgba_16_glsl.yy",}, {"name":"panel_inspector","order":1,"path":"scripts/panel_inspector/panel_inspector.yy",}, {"name":"node_padding","order":9,"path":"scripts/node_padding/node_padding.yy",}, {"name":"node_VFX_group","order":4,"path":"scripts/node_VFX_group/node_VFX_group.yy",}, {"name":"s_node_vfx_attract","order":8,"path":"sprites/s_node_vfx_attract/s_node_vfx_attract.yy",}, - {"name":"s_node_pixel_cloud","order":30,"path":"sprites/s_node_pixel_cloud/s_node_pixel_cloud.yy",}, + {"name":"s_node_pixel_cloud","order":32,"path":"sprites/s_node_pixel_cloud/s_node_pixel_cloud.yy",}, {"name":"node_noise_grid","order":8,"path":"scripts/node_noise_grid/node_noise_grid.yy",}, {"name":"node_palette_sort","order":9,"path":"scripts/node_palette_sort/node_palette_sort.yy",}, {"name":"node_path_wave","order":7,"path":"scripts/node_path_wave/node_path_wave.yy",}, - {"name":"s_node_HSV","order":44,"path":"sprites/s_node_HSV/s_node_HSV.yy",}, + {"name":"s_node_HSV","order":46,"path":"sprites/s_node_HSV/s_node_HSV.yy",}, {"name":"s_node_3d_cone","order":9,"path":"sprites/s_node_3d_cone/s_node_3d_cone.yy",}, {"name":"s_node_compose","order":1,"path":"sprites/s_node_compose/s_node_compose.yy",}, {"name":"s_node_switch","order":20,"path":"sprites/s_node_switch/s_node_switch.yy",}, @@ -358,12 +359,13 @@ {"name":"preview_overlay_vector","order":2,"path":"scripts/preview_overlay_vector/preview_overlay_vector.yy",}, {"name":"sh_gradient_display","order":18,"path":"shaders/sh_gradient_display/sh_gradient_display.yy",}, {"name":"node_json_file_write","order":12,"path":"scripts/node_json_file_write/node_json_file_write.yy",}, - {"name":"s_node_chromatic_abarration","order":12,"path":"sprites/s_node_chromatic_abarration/s_node_chromatic_abarration.yy",}, + {"name":"s_node_chromatic_abarration","order":14,"path":"sprites/s_node_chromatic_abarration/s_node_chromatic_abarration.yy",}, {"name":"node_blur_directional","order":2,"path":"scripts/node_blur_directional/node_blur_directional.yy",}, {"name":"s_node_group","order":4,"path":"sprites/s_node_group/s_node_group.yy",}, {"name":"spr_gameframe_caption","order":2,"path":"sprites/spr_gameframe_caption/spr_gameframe_caption.yy",}, {"name":"o_dialog_splash","order":9,"path":"objects/o_dialog_splash/o_dialog_splash.yy",}, {"name":"json_file","order":4,"path":"scripts/json_file/json_file.yy",}, + {"name":"s_node_curve_edit","order":1,"path":"sprites/s_node_curve_edit/s_node_curve_edit.yy",}, {"name":"textBox","order":17,"path":"scripts/textBox/textBox.yy",}, {"name":"pathArrayBox","order":27,"path":"scripts/pathArrayBox/pathArrayBox.yy",}, {"name":"node_statistic","order":7,"path":"scripts/node_statistic/node_statistic.yy",}, @@ -378,7 +380,7 @@ {"name":"panel_tunnels","order":1,"path":"scripts/panel_tunnels/panel_tunnels.yy",}, {"name":"node_processor","order":8,"path":"scripts/node_processor/node_processor.yy",}, {"name":"animation_controller","order":1,"path":"scripts/animation_controller/animation_controller.yy",}, - {"name":"s_node_shadow","order":34,"path":"sprites/s_node_shadow/s_node_shadow.yy",}, + {"name":"s_node_shadow","order":36,"path":"sprites/s_node_shadow/s_node_shadow.yy",}, {"name":"s_node_grid_hex_noise","order":21,"path":"sprites/s_node_grid_hex_noise/s_node_grid_hex_noise.yy",}, {"name":"s_node_logic_opr","order":2,"path":"sprites/s_node_logic_opr/s_node_logic_opr.yy",}, {"name":"sh_zigzag","order":11,"path":"shaders/sh_zigzag/sh_zigzag.yy",}, @@ -386,7 +388,7 @@ {"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":"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":9,"path":"sprites/s_node_blur/s_node_blur.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_out","order":9,"path":"sprites/s_node_gradient_out/s_node_gradient_out.yy",}, @@ -400,7 +402,7 @@ {"name":"node_VFX_renderer","order":3,"path":"scripts/node_VFX_renderer/node_VFX_renderer.yy",}, {"name":"fd_draw_sprite_to_collision_mask_surface","order":1,"path":"scripts/fd_draw_sprite_to_collision_mask_surface/fd_draw_sprite_to_collision_mask_surface.yy",}, {"name":"node_fluid_render","order":2,"path":"scripts/node_fluid_render/node_fluid_render.yy",}, - {"name":"s_node_invert","order":25,"path":"sprites/s_node_invert/s_node_invert.yy",}, + {"name":"s_node_invert","order":27,"path":"sprites/s_node_invert/s_node_invert.yy",}, {"name":"draw_text_delimiter","order":14,"path":"scripts/draw_text_delimiter/draw_text_delimiter.yy",}, {"name":"s_node_path_anchor","order":13,"path":"sprites/s_node_path_anchor/s_node_path_anchor.yy",}, {"name":"node_array_get","order":10,"path":"scripts/node_array_get/node_array_get.yy",}, @@ -456,7 +458,7 @@ {"name":"string_function","order":6,"path":"scripts/string_function/string_function.yy",}, {"name":"o_dialog_palette","order":2,"path":"objects/o_dialog_palette/o_dialog_palette.yy",}, {"name":"sh_blend_hue","order":17,"path":"shaders/sh_blend_hue/sh_blend_hue.yy",}, - {"name":"s_node_threshold","order":45,"path":"sprites/s_node_threshold/s_node_threshold.yy",}, + {"name":"s_node_threshold","order":47,"path":"sprites/s_node_threshold/s_node_threshold.yy",}, {"name":"sh_draw_normal","order":12,"path":"shaders/sh_draw_normal/sh_draw_normal.yy",}, {"name":"preview_overlay_rotation","order":1,"path":"scripts/preview_overlay_rotation/preview_overlay_rotation.yy",}, {"name":"node_registry","order":5,"path":"scripts/node_registry/node_registry.yy",}, @@ -493,7 +495,7 @@ {"name":"s_node_lua_global","order":19,"path":"sprites/s_node_lua_global/s_node_lua_global.yy",}, {"name":"sh_grey_alpha","order":14,"path":"shaders/sh_grey_alpha/sh_grey_alpha.yy",}, {"name":"sh_normal","order":1,"path":"shaders/sh_normal/sh_normal.yy",}, - {"name":"s_node_time_map","order":37,"path":"sprites/s_node_time_map/s_node_time_map.yy",}, + {"name":"s_node_time_map","order":39,"path":"sprites/s_node_time_map/s_node_time_map.yy",}, {"name":"node_crop","order":7,"path":"scripts/node_crop/node_crop.yy",}, {"name":"fd_rectangle_get_material_maccormack_weight","order":11,"path":"scripts/fd_rectangle_get_material_maccormack_weight/fd_rectangle_get_material_maccormack_weight.yy",}, {"name":"s_node_lua_compute","order":17,"path":"sprites/s_node_lua_compute/s_node_lua_compute.yy",}, @@ -508,7 +510,7 @@ {"name":"fd_rectangle_set_initial_value_pressure","order":3,"path":"scripts/fd_rectangle_set_initial_value_pressure/fd_rectangle_set_initial_value_pressure.yy",}, {"name":"o_dialog_drag_folder","order":2,"path":"objects/o_dialog_drag_folder/o_dialog_drag_folder.yy",}, {"name":"node_VFX_effect_repel","order":9,"path":"scripts/node_VFX_effect_repel/node_VFX_effect_repel.yy",}, - {"name":"s_node_alpha_cut","order":1,"path":"sprites/s_node_alpha_cut/s_node_alpha_cut.yy",}, + {"name":"s_node_alpha_cut","order":3,"path":"sprites/s_node_alpha_cut/s_node_alpha_cut.yy",}, {"name":"node_iterator_length","order":4,"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":"s_node_text_splice","order":6,"path":"sprites/s_node_text_splice/s_node_text_splice.yy",}, @@ -541,7 +543,7 @@ {"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":"slider","order":15,"path":"scripts/slider/slider.yy",}, - {"name":"s_node_convolution","order":46,"path":"sprites/s_node_convolution/s_node_convolution.yy",}, + {"name":"s_node_convolution","order":48,"path":"sprites/s_node_convolution/s_node_convolution.yy",}, {"name":"fd_rectangle_get_velocity_time_step","order":25,"path":"scripts/fd_rectangle_get_velocity_time_step/fd_rectangle_get_velocity_time_step.yy",}, {"name":"node_string_regex_match","order":25,"path":"scripts/node_string_regex_match/node_string_regex_match.yy",}, {"name":"node_9slice","order":5,"path":"scripts/node_9slice/node_9slice.yy",}, @@ -560,7 +562,7 @@ {"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":"spr_gameframe_pixel","order":3,"path":"sprites/spr_gameframe_pixel/spr_gameframe_pixel.yy",}, - {"name":"s_node_radial","order":51,"path":"sprites/s_node_radial/s_node_radial.yy",}, + {"name":"s_node_radial","order":53,"path":"sprites/s_node_radial/s_node_radial.yy",}, {"name":"s_node_grid","order":3,"path":"sprites/s_node_grid/s_node_grid.yy",}, {"name":"node_perlin","order":1,"path":"scripts/node_perlin/node_perlin.yy",}, {"name":"node_blur_simple","order":4,"path":"scripts/node_blur_simple/node_blur_simple.yy",}, @@ -599,13 +601,13 @@ {"name":"fd_rectangle_update","order":20,"path":"scripts/fd_rectangle_update/fd_rectangle_update.yy",}, {"name":"sh_posterize","order":19,"path":"shaders/sh_posterize/sh_posterize.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":43,"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":"_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":"__surface","order":8,"path":"scripts/__surface/__surface.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":22,"path":"sprites/s_node_edge_detect/s_node_edge_detect.yy",}, {"name":"node_fluid_add_collider","order":6,"path":"scripts/node_fluid_add_collider/node_fluid_add_collider.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",}, @@ -634,7 +636,7 @@ {"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":"s_node_erode","order":21,"path":"sprites/s_node_erode/s_node_erode.yy",}, + {"name":"s_node_erode","order":23,"path":"sprites/s_node_erode/s_node_erode.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",}, @@ -654,7 +656,7 @@ {"name":"s_node_text_file_write","order":15,"path":"sprites/s_node_text_file_write/s_node_text_file_write.yy",}, {"name":"sliderRange","order":16,"path":"scripts/sliderRange/sliderRange.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":6,"path":"sprites/s_node_bevel/s_node_bevel.yy",}, {"name":"color_selector","order":4,"path":"scripts/color_selector/color_selector.yy",}, {"name":"node_trigger_bool","order":1,"path":"scripts/node_trigger_bool/node_trigger_bool.yy",}, {"name":"s_node_strandSim_gravity","order":4,"path":"sprites/s_node_strandSim_gravity/s_node_strandSim_gravity.yy",}, @@ -662,7 +664,7 @@ {"name":"sh_surface_replace_replace","order":1,"path":"shaders/sh_surface_replace_replace/sh_surface_replace_replace.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":"s_node_stack","order":35,"path":"sprites/s_node_stack/s_node_stack.yy",}, + {"name":"s_node_stack","order":37,"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":"panel_globalvar","order":4,"path":"scripts/panel_globalvar/panel_globalvar.yy",}, {"name":"node_guide","order":18,"path":"scripts/node_guide/node_guide.yy",}, @@ -691,7 +693,7 @@ {"name":"fd_rectangle_material_surface_was_created","order":13,"path":"scripts/fd_rectangle_material_surface_was_created/fd_rectangle_material_surface_was_created.yy",}, {"name":"s_node_fluidSim_apply_velocity","order":2,"path":"sprites/s_node_fluidSim_apply_velocity/s_node_fluidSim_apply_velocity.yy",}, {"name":"fd_rectangle_destroy","order":8,"path":"scripts/fd_rectangle_destroy/fd_rectangle_destroy.yy",}, - {"name":"s_node_grey_alpha","order":23,"path":"sprites/s_node_grey_alpha/s_node_grey_alpha.yy",}, + {"name":"s_node_grey_alpha","order":25,"path":"sprites/s_node_grey_alpha/s_node_grey_alpha.yy",}, {"name":"sh_bloom_pass","order":2,"path":"shaders/sh_bloom_pass/sh_bloom_pass.yy",}, {"name":"fd_rectangle_draw_view","order":4,"path":"scripts/fd_rectangle_draw_view/fd_rectangle_draw_view.yy",}, {"name":"fd_rectangle_set_material_type","order":9,"path":"scripts/fd_rectangle_set_material_type/fd_rectangle_set_material_type.yy",}, @@ -711,7 +713,7 @@ {"name":"s_node_rigid_override","order":9,"path":"sprites/s_node_rigid_override/s_node_rigid_override.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":"s_node_BW","order":11,"path":"sprites/s_node_BW/s_node_BW.yy",}, + {"name":"s_node_BW","order":13,"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":"s_node_compare","order":1,"path":"sprites/s_node_compare/s_node_compare.yy",}, @@ -733,7 +735,7 @@ {"name":"node_glow","order":10,"path":"scripts/node_glow/node_glow.yy",}, {"name":"sh_blend_min","order":9,"path":"shaders/sh_blend_min/sh_blend_min.yy",}, {"name":"node_polar","order":4,"path":"scripts/node_polar/node_polar.yy",}, - {"name":"s_node_twirl","order":39,"path":"sprites/s_node_twirl/s_node_twirl.yy",}, + {"name":"s_node_twirl","order":41,"path":"sprites/s_node_twirl/s_node_twirl.yy",}, {"name":"sh_2d_light","order":49,"path":"shaders/sh_2d_light/sh_2d_light.yy",}, {"name":"node_image_animated","order":2,"path":"scripts/node_image_animated/node_image_animated.yy",}, {"name":"node_palette_extract","order":7,"path":"scripts/node_palette_extract/node_palette_extract.yy",}, @@ -783,7 +785,7 @@ {"name":"Regex","order":8,"path":"extensions/Regex/Regex.yy",}, {"name":"s_node_path_shift","order":4,"path":"sprites/s_node_path_shift/s_node_path_shift.yy",}, {"name":"s_node_grid_tri","order":6,"path":"sprites/s_node_grid_tri/s_node_grid_tri.yy",}, - {"name":"s_node_local_analyze","order":50,"path":"sprites/s_node_local_analyze/s_node_local_analyze.yy",}, + {"name":"s_node_local_analyze","order":52,"path":"sprites/s_node_local_analyze/s_node_local_analyze.yy",}, {"name":"_f_p0b","order":5,"path":"fonts/_f_p0b/_f_p0b.yy",}, {"name":"o_dialog_keyframe_curve","order":2,"path":"objects/o_dialog_keyframe_curve/o_dialog_keyframe_curve.yy",}, {"name":"sh_fd_visualize_pressure_glsl","order":16,"path":"shaders/sh_fd_visualize_pressure_glsl/sh_fd_visualize_pressure_glsl.yy",}, @@ -791,7 +793,7 @@ {"name":"s_node_vec2","order":7,"path":"sprites/s_node_vec2/s_node_vec2.yy",}, {"name":"node_twirl","order":4,"path":"scripts/node_twirl/node_twirl.yy",}, {"name":"s_node_fluidSim_update_paused","order":7,"path":"sprites/s_node_fluidSim_update_paused/s_node_fluidSim_update_paused.yy",}, - {"name":"s_node_decorner","order":15,"path":"sprites/s_node_decorner/s_node_decorner.yy",}, + {"name":"s_node_decorner","order":17,"path":"sprites/s_node_decorner/s_node_decorner.yy",}, {"name":"s_node_text_combine","order":3,"path":"sprites/s_node_text_combine/s_node_text_combine.yy",}, {"name":"s_node_gradient","order":1,"path":"sprites/s_node_gradient/s_node_gradient.yy",}, {"name":"fd_rectangle_get_acceleration_x","order":2,"path":"scripts/fd_rectangle_get_acceleration_x/fd_rectangle_get_acceleration_x.yy",}, @@ -807,7 +809,7 @@ {"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":"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":18,"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":"s_node_fluidSim_update","order":5,"path":"sprites/s_node_fluidSim_update/s_node_fluidSim_update.yy",}, {"name":"ase_reader","order":1,"path":"scripts/ase_reader/ase_reader.yy",}, @@ -834,8 +836,8 @@ {"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":"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_average","order":48,"path":"sprites/s_node_average/s_node_average.yy",}, + {"name":"s_node_blur_directional","order":11,"path":"sprites/s_node_blur_directional/s_node_blur_directional.yy",}, + {"name":"s_node_average","order":50,"path":"sprites/s_node_average/s_node_average.yy",}, {"name":"s_node_sprite_sheet","order":1,"path":"sprites/s_node_sprite_sheet/s_node_sprite_sheet.yy",}, {"name":"s_node_text_length","order":9,"path":"sprites/s_node_text_length/s_node_text_length.yy",}, {"name":"s_node_grid_hex","order":4,"path":"sprites/s_node_grid_hex/s_node_grid_hex.yy",}, @@ -861,7 +863,7 @@ {"name":"draw_rect_border","order":6,"path":"scripts/draw_rect_border/draw_rect_border.yy",}, {"name":"node_composite","order":1,"path":"scripts/node_composite/node_composite.yy",}, {"name":"s_node_path_map","order":2,"path":"sprites/s_node_path_map/s_node_path_map.yy",}, - {"name":"s_node_greyscale","order":24,"path":"sprites/s_node_greyscale/s_node_greyscale.yy",}, + {"name":"s_node_greyscale","order":26,"path":"sprites/s_node_greyscale/s_node_greyscale.yy",}, {"name":"sh_dilate","order":4,"path":"shaders/sh_dilate/sh_dilate.yy",}, {"name":"node_image_sequence","order":1,"path":"scripts/node_image_sequence/node_image_sequence.yy",}, {"name":"node_text_file_read","order":7,"path":"scripts/node_text_file_read/node_text_file_read.yy",}, @@ -869,11 +871,11 @@ {"name":"sh_palette_replace","order":45,"path":"shaders/sh_palette_replace/sh_palette_replace.yy",}, {"name":"sh_cell_noise_random","order":6,"path":"shaders/sh_cell_noise_random/sh_cell_noise_random.yy",}, {"name":"node_iterator_input","order":1,"path":"scripts/node_iterator_input/node_iterator_input.yy",}, - {"name":"s_node_atlas","order":3,"path":"sprites/s_node_atlas/s_node_atlas.yy",}, + {"name":"s_node_atlas","order":5,"path":"sprites/s_node_atlas/s_node_atlas.yy",}, {"name":"node_fluid_add","order":4,"path":"scripts/node_fluid_add/node_fluid_add.yy",}, {"name":"o_dialog_output_visibility","order":2,"path":"objects/o_dialog_output_visibility/o_dialog_output_visibility.yy",}, {"name":"node_normal","order":1,"path":"scripts/node_normal/node_normal.yy",}, - {"name":"s_node_glow","order":22,"path":"sprites/s_node_glow/s_node_glow.yy",}, + {"name":"s_node_glow","order":24,"path":"sprites/s_node_glow/s_node_glow.yy",}, {"name":"node_gradient_replace","order":12,"path":"scripts/node_gradient_replace/node_gradient_replace.yy",}, {"name":"s_node_vfx_repel","order":6,"path":"sprites/s_node_vfx_repel/s_node_vfx_repel.yy",}, {"name":"fd_rectangle_set_collision_mask_surface","order":2,"path":"scripts/fd_rectangle_set_collision_mask_surface/fd_rectangle_set_collision_mask_surface.yy",}, @@ -897,11 +899,11 @@ {"name":"s_node_fluidSim_add_fluid","order":3,"path":"sprites/s_node_fluidSim_add_fluid/s_node_fluidSim_add_fluid.yy",}, {"name":"node_blur_contrast","order":1,"path":"scripts/node_blur_contrast/node_blur_contrast.yy",}, {"name":"sh_trail_filler","order":50,"path":"shaders/sh_trail_filler/sh_trail_filler.yy",}, - {"name":"s_node_border","order":10,"path":"sprites/s_node_border/s_node_border.yy",}, + {"name":"s_node_border","order":12,"path":"sprites/s_node_border/s_node_border.yy",}, {"name":"d3_vector","order":1,"path":"scripts/d3_vector/d3_vector.yy",}, {"name":"s_node_pin","order":2,"path":"sprites/s_node_pin/s_node_pin.yy",}, {"name":"node_local_analyze","order":17,"path":"scripts/node_local_analyze/node_local_analyze.yy",}, - {"name":"s_node_blur_contrast","order":8,"path":"sprites/s_node_blur_contrast/s_node_blur_contrast.yy",}, + {"name":"s_node_blur_contrast","order":10,"path":"sprites/s_node_blur_contrast/s_node_blur_contrast.yy",}, {"name":"fd_y","order":5,"path":"scripts/fd_y/fd_y.yy",}, {"name":"node_string_regex_search","order":23,"path":"scripts/node_string_regex_search/node_string_regex_search.yy",}, {"name":"s_node_text_render","order":17,"path":"sprites/s_node_text_render/s_node_text_render.yy",}, @@ -910,6 +912,7 @@ {"name":"s_node_regex_search","order":11,"path":"sprites/s_node_regex_search/s_node_regex_search.yy",}, {"name":"s_node_color_from_rgb","order":5,"path":"sprites/s_node_color_from_rgb/s_node_color_from_rgb.yy",}, {"name":"node_scale_algo","order":12,"path":"scripts/node_scale_algo/node_scale_algo.yy",}, + {"name":"s_node_image_replace","order":55,"path":"sprites/s_node_image_replace/s_node_image_replace.yy",}, {"name":"node_alpha_hash","order":11,"path":"scripts/node_alpha_hash/node_alpha_hash.yy",}, {"name":"mouse_input","order":1,"path":"scripts/mouse_input/mouse_input.yy",}, {"name":"string_cut","order":2,"path":"scripts/string_cut/string_cut.yy",}, @@ -960,7 +963,7 @@ {"name":"scrollPane","order":14,"path":"scripts/scrollPane/scrollPane.yy",}, {"name":"node_gradient_extract","order":13,"path":"scripts/node_gradient_extract/node_gradient_extract.yy",}, {"name":"node_base_convert","order":25,"path":"scripts/node_base_convert/node_base_convert.yy",}, - {"name":"s_node_normal_light","order":29,"path":"sprites/s_node_normal_light/s_node_normal_light.yy",}, + {"name":"s_node_normal_light","order":31,"path":"sprites/s_node_normal_light/s_node_normal_light.yy",}, {"name":"node_transform_single","order":1,"path":"scripts/node_transform_single/node_transform_single.yy",}, {"name":"node_string_length","order":22,"path":"scripts/node_string_length/node_string_length.yy",}, {"name":"node_fluid_apply_velo","order":5,"path":"scripts/node_fluid_apply_velo/node_fluid_apply_velo.yy",}, @@ -970,9 +973,9 @@ {"name":"buttonGradient","order":4,"path":"scripts/buttonGradient/buttonGradient.yy",}, {"name":"sh_draw_downsample","order":2,"path":"shaders/sh_draw_downsample/sh_draw_downsample.yy",}, {"name":"__view_get","order":1,"path":"scripts/__view_get/__view_get.yy",}, - {"name":"s_node_texture_map","order":36,"path":"sprites/s_node_texture_map/s_node_texture_map.yy",}, + {"name":"s_node_texture_map","order":38,"path":"sprites/s_node_texture_map/s_node_texture_map.yy",}, {"name":"fd_rectangle_create","order":7,"path":"scripts/fd_rectangle_create/fd_rectangle_create.yy",}, - {"name":"s_node_level_selector","order":27,"path":"sprites/s_node_level_selector/s_node_level_selector.yy",}, + {"name":"s_node_level_selector","order":29,"path":"sprites/s_node_level_selector/s_node_level_selector.yy",}, {"name":"random_function","order":3,"path":"scripts/random_function/random_function.yy",}, {"name":"s_node_input","order":6,"path":"sprites/s_node_input/s_node_input.yy",}, {"name":"addon","order":1,"path":"objects/addon/addon.yy",}, @@ -1002,7 +1005,7 @@ {"name":"s_node_color_from_hsv","order":4,"path":"sprites/s_node_color_from_hsv/s_node_color_from_hsv.yy",}, {"name":"fd_rectangle_get_material_type","order":14,"path":"scripts/fd_rectangle_get_material_type/fd_rectangle_get_material_type.yy",}, {"name":"node_area","order":5,"path":"scripts/node_area/node_area.yy",}, - {"name":"s_node_posterize","order":31,"path":"sprites/s_node_posterize/s_node_posterize.yy",}, + {"name":"s_node_posterize","order":33,"path":"sprites/s_node_posterize/s_node_posterize.yy",}, {"name":"s_node_struct_get","order":1,"path":"sprites/s_node_struct_get/s_node_struct_get.yy",}, {"name":"s_node_vfx_vortex","order":4,"path":"sprites/s_node_vfx_vortex/s_node_vfx_vortex.yy",}, {"name":"s_node_array_add","order":1,"path":"sprites/s_node_array_add/s_node_array_add.yy",}, @@ -1011,20 +1014,20 @@ {"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":"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_shadow_cast","order":47,"path":"sprites/s_node_shadow_cast/s_node_shadow_cast.yy",}, + {"name":"s_node_RGB_combine","order":45,"path":"sprites/s_node_RGB_combine/s_node_RGB_combine.yy",}, + {"name":"s_node_shadow_cast","order":49,"path":"sprites/s_node_shadow_cast/s_node_shadow_cast.yy",}, {"name":"path_function","order":4,"path":"scripts/path_function/path_function.yy",}, {"name":"fd_rectangle_set_velocity_dissipation_value","order":14,"path":"scripts/fd_rectangle_set_velocity_dissipation_value/fd_rectangle_set_velocity_dissipation_value.yy",}, {"name":"panel_history","order":2,"path":"scripts/panel_history/panel_history.yy",}, {"name":"sh_channel_H","order":3,"path":"shaders/sh_channel_H/sh_channel_H.yy",}, - {"name":"s_node_RGB","order":32,"path":"sprites/s_node_RGB/s_node_RGB.yy",}, + {"name":"s_node_RGB","order":34,"path":"sprites/s_node_RGB/s_node_RGB.yy",}, {"name":"fd_rectangle_draw","order":9,"path":"scripts/fd_rectangle_draw/fd_rectangle_draw.yy",}, {"name":"oRigidbody","order":2,"path":"objects/oRigidbody/oRigidbody.yy",}, {"name":"node_grey_to_alpha","order":4,"path":"scripts/node_grey_to_alpha/node_grey_to_alpha.yy",}, {"name":"sh_blend_add","order":7,"path":"shaders/sh_blend_add/sh_blend_add.yy",}, {"name":"node_de_stray","order":1,"path":"scripts/node_de_stray/node_de_stray.yy",}, {"name":"sh_channel_G","order":2,"path":"shaders/sh_channel_G/sh_channel_G.yy",}, - {"name":"s_node_dilate","order":17,"path":"sprites/s_node_dilate/s_node_dilate.yy",}, + {"name":"s_node_dilate","order":19,"path":"sprites/s_node_dilate/s_node_dilate.yy",}, {"name":"node_value","order":6,"path":"scripts/node_value/node_value.yy",}, {"name":"draw_line_curve","order":5,"path":"scripts/draw_line_curve/draw_line_curve.yy",}, {"name":"sh_blend_screen","order":3,"path":"shaders/sh_blend_screen/sh_blend_screen.yy",}, @@ -1032,7 +1035,7 @@ {"name":"s_node_palette_extract","order":12,"path":"sprites/s_node_palette_extract/s_node_palette_extract.yy",}, {"name":"node_palette_replacement","order":2,"path":"scripts/node_palette_replacement/node_palette_replacement.yy",}, {"name":"s_node_scatter","order":19,"path":"sprites/s_node_scatter/s_node_scatter.yy",}, - {"name":"s_node_bokeh","order":49,"path":"sprites/s_node_bokeh/s_node_bokeh.yy",}, + {"name":"s_node_bokeh","order":51,"path":"sprites/s_node_bokeh/s_node_bokeh.yy",}, {"name":"sh_vertex_depth_pass","order":6,"path":"shaders/sh_vertex_depth_pass/sh_vertex_depth_pass.yy",}, {"name":"sh_curve","order":3,"path":"shaders/sh_curve/sh_curve.yy",}, {"name":"sh_warp_4points","order":9,"path":"shaders/sh_warp_4points/sh_warp_4points.yy",}, @@ -1061,6 +1064,7 @@ {"name":"s_node_palette_replace","order":1,"path":"sprites/s_node_palette_replace/s_node_palette_replace.yy",}, {"name":"bin_function","order":11,"path":"scripts/bin_function/bin_function.yy",}, {"name":"s_node_feedback_output","order":9,"path":"sprites/s_node_feedback_output/s_node_feedback_output.yy",}, + {"name":"sh_surface_replace_fast_find","order":2,"path":"shaders/sh_surface_replace_fast_find/sh_surface_replace_fast_find.yy",}, {"name":"node_3d_combine","order":10,"path":"scripts/node_3d_combine/node_3d_combine.yy",}, {"name":"fd_rectangle_add_material","order":4,"path":"scripts/fd_rectangle_add_material/fd_rectangle_add_material.yy",}, {"name":"fd_rectangle_set_target","order":18,"path":"scripts/fd_rectangle_set_target/fd_rectangle_set_target.yy",}, @@ -1125,7 +1129,7 @@ {"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":"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":54,"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":"__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",}, @@ -1138,6 +1142,7 @@ {"name":"node_3d_prim_sphere","order":13,"path":"scripts/node_3d_prim_sphere/node_3d_prim_sphere.yy",}, {"name":"dialog_management","order":2,"path":"scripts/dialog_management/dialog_management.yy",}, {"name":"draw_shapes","order":10,"path":"scripts/draw_shapes/draw_shapes.yy",}, + {"name":"sh_surface_replace_fast_replace","order":3,"path":"shaders/sh_surface_replace_fast_replace/sh_surface_replace_fast_replace.yy",}, {"name":"node_solid","order":14,"path":"scripts/node_solid/node_solid.yy",}, {"name":"sh_blend_luma","order":19,"path":"shaders/sh_blend_luma/sh_blend_luma.yy",}, {"name":"fd_rectangle_set_material_dissipation_value","order":5,"path":"scripts/fd_rectangle_set_material_dissipation_value/fd_rectangle_set_material_dissipation_value.yy",}, @@ -1148,7 +1153,7 @@ {"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":"node_lerp","order":6,"path":"scripts/node_lerp/node_lerp.yy",}, - {"name":"s_node_pixel_sort","order":40,"path":"sprites/s_node_pixel_sort/s_node_pixel_sort.yy",}, + {"name":"s_node_pixel_sort","order":42,"path":"sprites/s_node_pixel_sort/s_node_pixel_sort.yy",}, {"name":"node_texture_remap","order":2,"path":"scripts/node_texture_remap/node_texture_remap.yy",}, {"name":"sh_fd_visualize_pixel_art_fiery_smoke_glsl","order":14,"path":"shaders/sh_fd_visualize_pixel_art_fiery_smoke_glsl/sh_fd_visualize_pixel_art_fiery_smoke_glsl.yy",}, {"name":"node_ase_layer","order":15,"path":"scripts/node_ase_layer/node_ase_layer.yy",}, diff --git a/PixelComposer.yyp b/PixelComposer.yyp index 88acfb1d9..de8516bb5 100644 --- a/PixelComposer.yyp +++ b/PixelComposer.yyp @@ -163,6 +163,7 @@ {"resourceType":"GMFolder","resourceVersion":"1.0","name":"misc","folderPath":"folders/shader/misc.yy",}, {"resourceType":"GMFolder","resourceVersion":"1.0","name":"shape seperator","folderPath":"folders/shader/shape seperator.yy",}, {"resourceType":"GMFolder","resourceVersion":"1.0","name":"sprites","folderPath":"folders/shader/sprites.yy",}, + {"resourceType":"GMFolder","resourceVersion":"1.0","name":"surface replace","folderPath":"folders/shader/surface replace.yy",}, {"resourceType":"GMFolder","resourceVersion":"1.0","name":"transition","folderPath":"folders/shader/transition.yy",}, {"resourceType":"GMFolder","resourceVersion":"1.0","name":"warp","folderPath":"folders/shader/warp.yy",}, {"resourceType":"GMFolder","resourceVersion":"1.0","name":"sprites","folderPath":"folders/sprites.yy",}, @@ -171,7 +172,6 @@ {"resourceType":"GMFolder","resourceVersion":"1.0","name":"Steamworks","folderPath":"folders/Steamworks.yy",}, {"resourceType":"GMFolder","resourceVersion":"1.0","name":"UGC","folderPath":"folders/Steamworks/UGC.yy",}, {"resourceType":"GMFolder","resourceVersion":"1.0","name":"widgets","folderPath":"folders/widgets.yy",}, - {"resourceType":"GMFolder","resourceVersion":"1.0","name":"surface replace","folderPath":"folders/shader/surface replace.yy",}, ], "IncludedFiles": [ {"resourceType":"GMIncludedFile","resourceVersion":"1.0","name":"ApolloHelp.html","CopyToMask":-1,"filePath":"datafiles",}, @@ -1420,6 +1420,7 @@ {"id":{"name":"s_node_regex_search","path":"sprites/s_node_regex_search/s_node_regex_search.yy",},}, {"id":{"name":"s_node_color_from_rgb","path":"sprites/s_node_color_from_rgb/s_node_color_from_rgb.yy",},}, {"id":{"name":"node_scale_algo","path":"scripts/node_scale_algo/node_scale_algo.yy",},}, + {"id":{"name":"s_node_image_replace","path":"sprites/s_node_image_replace/s_node_image_replace.yy",},}, {"id":{"name":"node_alpha_hash","path":"scripts/node_alpha_hash/node_alpha_hash.yy",},}, {"id":{"name":"mouse_input","path":"scripts/mouse_input/mouse_input.yy",},}, {"id":{"name":"string_cut","path":"scripts/string_cut/string_cut.yy",},}, @@ -1595,6 +1596,7 @@ {"id":{"name":"bin_function","path":"scripts/bin_function/bin_function.yy",},}, {"id":{"name":"s_node_feedback_output","path":"sprites/s_node_feedback_output/s_node_feedback_output.yy",},}, {"id":{"name":"sh_fd_repulse","path":"shaders/sh_fd_repulse/sh_fd_repulse.yy",},}, + {"id":{"name":"sh_surface_replace_fast_find","path":"shaders/sh_surface_replace_fast_find/sh_surface_replace_fast_find.yy",},}, {"id":{"name":"node_3d_combine","path":"scripts/node_3d_combine/node_3d_combine.yy",},}, {"id":{"name":"fd_rectangle_add_material","path":"scripts/fd_rectangle_add_material/fd_rectangle_add_material.yy",},}, {"id":{"name":"fd_rectangle_set_target","path":"scripts/fd_rectangle_set_target/fd_rectangle_set_target.yy",},}, @@ -1686,6 +1688,7 @@ {"id":{"name":"dialog_management","path":"scripts/dialog_management/dialog_management.yy",},}, {"id":{"name":"draw_shapes","path":"scripts/draw_shapes/draw_shapes.yy",},}, {"id":{"name":"node_channels","path":"scripts/node_channels/node_channels.yy",},}, + {"id":{"name":"sh_surface_replace_fast_replace","path":"shaders/sh_surface_replace_fast_replace/sh_surface_replace_fast_replace.yy",},}, {"id":{"name":"node_solid","path":"scripts/node_solid/node_solid.yy",},}, {"id":{"name":"sh_blend_luma","path":"shaders/sh_blend_luma/sh_blend_luma.yy",},}, {"id":{"name":"fd_rectangle_set_material_dissipation_value","path":"scripts/fd_rectangle_set_material_dissipation_value/fd_rectangle_set_material_dissipation_value.yy",},}, diff --git a/datafiles/data/Guides.zip b/datafiles/data/Guides.zip index 8f40490e9..76f5d776c 100644 Binary files a/datafiles/data/Guides.zip and b/datafiles/data/Guides.zip differ diff --git a/objects/o_dialog_add_node/Create_0.gml b/objects/o_dialog_add_node/Create_0.gml index 49669c527..6219059c9 100644 --- a/objects/o_dialog_add_node/Create_0.gml +++ b/objects/o_dialog_add_node/Create_0.gml @@ -294,13 +294,13 @@ event_inherited(); var node_count = ds_list_size(_list); - if(ADD_NODE_PAGE == NODE_PAGE_DEFAULT && node_count == 0) { - draw_set_text(f_h3, fa_center, fa_bottom, COLORS._main_text_sub); - draw_text(content_pane.w / 2, content_pane.h / 2 - ui(8), "No favorites"); + //if(ADD_NODE_PAGE == NODE_PAGE_DEFAULT && array_length(global.FAV_NODES) == 0) { + // draw_set_text(f_h3, fa_center, fa_bottom, COLORS._main_text_sub); + // draw_text(content_pane.w / 2, content_pane.h / 2 - ui(8), "No favorites"); - draw_set_text(f_p0, fa_center, fa_top, COLORS._main_text_sub); - draw_text(content_pane.w / 2, content_pane.h / 2 - ui(4), "Right click on a node and select 'Add to favorite'\nto add node to favorite panel."); - } + // draw_set_text(f_p0, fa_center, fa_top, COLORS._main_text_sub); + // draw_text(content_pane.w / 2, content_pane.h / 2 - ui(4), "Right click on a node and select 'Add to favorite'\nto add node to favorite panel."); + //} if(PREF_MAP[? "dialog_add_node_view"] == 0) { //grid var grid_size = ui(64); diff --git a/objects/o_dialog_warning/Alarm_0.gml b/objects/o_dialog_warning/Alarm_0.gml index b29fd3de6..9eb4c1424 100644 --- a/objects/o_dialog_warning/Alarm_0.gml +++ b/objects/o_dialog_warning/Alarm_0.gml @@ -12,5 +12,4 @@ dialog_y = clamp(y, 0, WIN_H - dialog_h); #endregion -event_inherited(); - +event_inherited(); \ No newline at end of file diff --git a/objects/o_dialog_warning/Draw_64.gml b/objects/o_dialog_warning/Draw_64.gml index 4c1c3d9a0..c3b59dd7f 100644 --- a/objects/o_dialog_warning/Draw_64.gml +++ b/objects/o_dialog_warning/Draw_64.gml @@ -17,5 +17,5 @@ if !ready exit; draw_sprite_ui(THEME.noti_icon_warning, 1, dialog_x + ui(16), dialog_y + dialog_h / 2); draw_set_text(f_p2, fa_left, fa_top, COLORS._main_text); - draw_text_ext(dialog_x + ui(32) + padding, dialog_y + padding, warning_text, -1, dialog_w - padding * 2); + draw_text_ext(dialog_x + ui(32) + padding, dialog_y + padding, warning_text, -1, dialog_w - padding * 2 - ui(32)); #endregion \ No newline at end of file diff --git a/scripts/node_ase_file_read/node_ase_file_read.gml b/scripts/node_ase_file_read/node_ase_file_read.gml index ed7deb288..93e481d70 100644 --- a/scripts/node_ase_file_read/node_ase_file_read.gml +++ b/scripts/node_ase_file_read/node_ase_file_read.gml @@ -189,6 +189,8 @@ function Node_ASE_File_Read(_x, _y, _group = noone) : Node(_x, _y, _group) const for( var j = 0; j < ds_list_size(outputs[| 1].value_to); j++ ) { var _targNode = outputs[| 1].value_to[| j].node; + if(!_targNode.active) continue; + if(_targNode.display_name == _name) { _node = _targNode; break; diff --git a/scripts/node_data/node_data.gml b/scripts/node_data/node_data.gml index cf7d91f54..405c9740a 100644 --- a/scripts/node_data/node_data.gml +++ b/scripts/node_data/node_data.gml @@ -1180,6 +1180,7 @@ function Node(_x, _y, _group = PANEL_GRAPH.getCurrentContext()) : __Node_Base(_x _map[? "y"] = y; _map[? "type"] = instanceof(self); _map[? "group"] = group == noone? group : group.node_id; + _map[? "preview"] = previewable; } ds_map_add_map(_map, "attri", attributeSerialize()); @@ -1220,15 +1221,16 @@ function Node(_x, _y, _group = PANEL_GRAPH.getCurrentContext()) : __Node_Base(_x node_id = ds_map_try_get(load_map, "id"); NODE_MAP[? node_id] = self; - + if(ds_map_exists(load_map, "name")) display_name = ds_map_try_get(load_map, "name", ""); _group = ds_map_try_get(load_map, "group", noone); if(_group == -1) _group = noone; - + x = ds_map_try_get(load_map, "x"); y = ds_map_try_get(load_map, "y"); renderActive = ds_map_try_get(load_map, "render", true); + previewable = ds_map_try_get(load_map, "preview", previewable); } if(ds_map_exists(load_map, "attri")) diff --git a/scripts/node_registry/node_registry.gml b/scripts/node_registry/node_registry.gml index ec1520d96..89ff39418 100644 --- a/scripts/node_registry/node_registry.gml +++ b/scripts/node_registry/node_registry.gml @@ -294,7 +294,7 @@ function NodeObject(_name, _spr, _node, _create, tags = []) constructor { addNodeObject(filter, "Convolution", s_node_convolution, "Node_Convolution", [1, Node_Convolution], ["kernel"], "Apply convolution operation on each pixel using a custom 3x3 kernel.").setVersion(1090); addNodeObject(filter, "Local Analyze", s_node_local_analyze, "Node_Local_Analyze", [1, Node_Local_Analyze],, "Apply non-linear operation (minimum, maximum) on each pixel locally.").setVersion(1110); addNodeObject(filter, "SDF", s_node_sdf, "Node_SDF", [1, Node_SDF],, "Create signed distance field using jump flooding algorithm.").setVersion(1130); - addNodeObject(filter, "Replace Image", s_node_sdf, "Node_Surface_Replace", [1, Node_Surface_Replace]).setVersion(1140); + addNodeObject(filter, "Replace Image", s_node_image_replace, "Node_Surface_Replace", [1, Node_Surface_Replace]).setVersion(1140); addNodeObject(filter, "Chromatic Aberration", s_node_chromatic_abarration, "Node_Chromatic_Aberration", [1, Node_Chromatic_Aberration],, "Apply chromatic aberration effect to the image."); ds_list_add(filter, "Colors"); diff --git a/scripts/node_surface_replace/node_surface_replace.gml b/scripts/node_surface_replace/node_surface_replace.gml index 80741baad..e26baa8b4 100644 --- a/scripts/node_surface_replace/node_surface_replace.gml +++ b/scripts/node_surface_replace/node_surface_replace.gml @@ -4,63 +4,84 @@ function Node_Surface_Replace(_x, _y, _group = noone) : Node_Processor(_x, _y, _ inputs[| 0] = nodeValue("Base image", self, JUNCTION_CONNECT.input, VALUE_TYPE.surface, noone ); - inputs[| 1] = nodeValue("Target image", self, JUNCTION_CONNECT.input, VALUE_TYPE.surface, noone ); + inputs[| 1] = nodeValue("Target image", self, JUNCTION_CONNECT.input, VALUE_TYPE.surface, noone ) + .setArrayDepth(1); - inputs[| 2] = nodeValue("Replacement image", self, JUNCTION_CONNECT.input, VALUE_TYPE.surface, noone ); + inputs[| 2] = nodeValue("Replacement image", self, JUNCTION_CONNECT.input, VALUE_TYPE.surface, noone ) + .setArrayDepth(1); inputs[| 3] = nodeValue("Threshold", self, JUNCTION_CONNECT.input, VALUE_TYPE.float, 0.1 ) .setDisplay(VALUE_DISPLAY.slider, [ 0, 1, 0.01 ]); - outputs[| 0] = nodeValue("Mapping", self, JUNCTION_CONNECT.output, VALUE_TYPE.surface, noone); + inputs[| 4] = nodeValue("Draw Base Image", self, JUNCTION_CONNECT.input, VALUE_TYPE.boolean, true ) - outputs[| 1] = nodeValue("Surface out", self, JUNCTION_CONNECT.output, VALUE_TYPE.surface, noone); + inputs[| 5] = nodeValue("Fast Mode", self, JUNCTION_CONNECT.input, VALUE_TYPE.boolean, true ) + + outputs[| 0] = nodeValue("Surface out", self, JUNCTION_CONNECT.output, VALUE_TYPE.surface, noone); input_display_list = [ - ["Surface", false], 0, 1, 2, - ["Repalcement", false], 3, + ["Surface", true], 0, 1, 2, + ["Searching", false], 5, 3, + ["Render", false], 4, ]; - output_display_list = [ 1, 0 ] - temp_surface = [ surface_create(1, 1) ]; + static matchTemplate = function(_index, _surf, _base, _target, _thr, _fst) { + surface_set_shader(_surf, _fst? sh_surface_replace_fast_find : sh_surface_replace_find, false); + shader_set_f("dimension", surface_get_width(_base), surface_get_height(_base)); + shader_set_surface("target", _target); + shader_set_f("target_dim", surface_get_width(_target), surface_get_height(_target)); + shader_set_f("threshold", _thr); + shader_set_f("index", _index); + + BLEND_ADD + draw_surface_safe(_base); + BLEND_NORMAL + surface_reset_shader(); + } + + static replaceTemplate = function(_index, _surf, _base, _res, _replace, _thr, _fst) { + surface_set_shader(_surf, _fst? sh_surface_replace_fast_replace : sh_surface_replace_replace, false, BLEND.normal); + shader_set_f("dimension", surface_get_width(_base), surface_get_height(_base)); + shader_set_surface("replace", _replace); + shader_set_f("replace_dim", surface_get_width(_replace), surface_get_height(_replace)); + shader_set_surface("findRes", _res); + shader_set_f("index", _index); + + draw_surface_safe(_base); + surface_reset_shader(); + } + static process_data = function(_outSurf, _data, _output_index, _array_index) { var _bas = _data[0]; var _tar = _data[1]; var _rep = _data[2]; var _thr = _data[3]; + var _drw = _data[4]; + var _fst = _data[5]; - if(!is_surface(_tar)) return _outSurf; - if(!is_surface(_rep)) return _outSurf; + if(!is_array(_tar)) _tar = [ _tar ]; + if(!is_array(_rep)) _rep = [ _rep ]; - if(_output_index == 0) { - _outSurf = surface_verify(_outSurf, surface_get_width(_bas), surface_get_height(_bas)); - - surface_set_shader(_outSurf, sh_surface_replace_find); - DRAW_CLEAR - shader_set_f("dimension", surface_get_width(_bas), surface_get_height(_bas)); - shader_set_surface("target", _tar); - shader_set_f("target_dim", surface_get_width(_tar), surface_get_height(_tar)); - shader_set_f("threshold", _thr); + temp_surface[0] = surface_verify(temp_surface[0], surface_get_width(_bas), surface_get_height(_bas)); + surface_set_target(temp_surface[0]); + DRAW_CLEAR; + surface_reset_target(); - draw_surface_safe(_bas); - surface_reset_shader(); - - temp_surface[0] = _outSurf; - return _outSurf; - } + var amo = array_length(_tar); + for( var i = 0; i < amo; i++ ) + matchTemplate(i / amo, temp_surface[0], _bas, _tar[i], _thr, _fst); - if(_output_index == 1) { - surface_set_shader(_outSurf, sh_surface_replace_replace); - DRAW_CLEAR - shader_set_surface("replace", _rep); - shader_set_f("replace_dim", surface_get_width(_rep), surface_get_height(_rep)); - shader_set_surface("findRes", temp_surface[0]); + _outSurf = surface_verify(_outSurf, surface_get_width(_bas), surface_get_height(_bas)); + surface_set_target(_outSurf); + DRAW_CLEAR; + if(_drw) draw_surface_safe(_bas); + surface_reset_target(); - draw_surface_safe(_bas); - surface_reset_shader(); - - return _outSurf; - } + var amo = array_length(_rep); + for( var i = 0; i < amo; i++ ) + replaceTemplate(i / amo, _outSurf, _bas, temp_surface[0], _rep[i], _thr, _fst, _drw); + return _outSurf; } } \ No newline at end of file diff --git a/scripts/node_wrap_mesh/node_wrap_mesh.gml b/scripts/node_wrap_mesh/node_wrap_mesh.gml index be6f7e6d4..642d46f4c 100644 --- a/scripts/node_wrap_mesh/node_wrap_mesh.gml +++ b/scripts/node_wrap_mesh/node_wrap_mesh.gml @@ -67,7 +67,7 @@ function Node_Mesh_Warp(_x, _y, _group = noone) : Node_Processor(_x, _y, _group) setTriangle(); } - static drawOverlay = function(active, _x, _y, _s, _mx, _my, _snx, _sny) { + static drawOverlay = function(active, _x, _y, _s, _mx, _my, _snx, _sny) { for(var i = 0; i < array_length(data.links); i++) data.links[i].draw(_x, _y, _s); for(var i = 0; i < array_length(data.tris); i++) diff --git a/scripts/preview_overlay_puppet/preview_overlay_puppet.gml b/scripts/preview_overlay_puppet/preview_overlay_puppet.gml index 96cde5226..df7673d34 100644 --- a/scripts/preview_overlay_puppet/preview_overlay_puppet.gml +++ b/scripts/preview_overlay_puppet/preview_overlay_puppet.gml @@ -157,7 +157,7 @@ function preview_overlay_puppet(active, _x, _y, _s, _mx, _my, _snx, _sny) { _val[PUPPET_CONTROL.fy] = _nx; } - if(drag_type >= 0) { + if(drag_type > 0) { if(setValue( _val )) UNDO_HOLDING = true; diff --git a/shaders/sh_surface_replace_fast_find/sh_surface_replace_fast_find.fsh b/shaders/sh_surface_replace_fast_find/sh_surface_replace_fast_find.fsh new file mode 100644 index 000000000..e98b951fe --- /dev/null +++ b/shaders/sh_surface_replace_fast_find/sh_surface_replace_fast_find.fsh @@ -0,0 +1,45 @@ +// +// Simple passthrough fragment shader +// +varying vec2 v_vTexcoord; +varying vec4 v_vColour; + +uniform vec2 dimension; +uniform sampler2D target; +uniform vec2 target_dim; +uniform float threshold; +uniform float index; + +void main() { + vec4 base = texture2D( gm_BaseTexture, v_vTexcoord ); + if(base.a == 0.) { + gl_FragColor = vec4(0.); + return; + } + + vec2 px = v_vTexcoord * dimension; + float pixels_count = target_dim.x * target_dim.y; + float target_pixels = pixels_count * (1. - threshold); + float match = 0.; + vec2 baseTx = 1. / dimension; + vec2 targTx = 1. / target_dim; + + gl_FragColor = vec4(0.); + + for( float i = 0.; i < target_dim.x; i++ ) + for( float j = 0.; j < target_dim.y; j++ ) { + vec2 bpx = px + vec2(i, j); + vec4 base = texture2D( gm_BaseTexture, bpx * baseTx ); + vec4 targ = texture2D( target, vec2(i, j) * targTx ); + + if(distance(base.rgb * base.a, targ.rgb * targ.a) <= threshold) { + match++; + if(match >= target_pixels) { + gl_FragColor = vec4(1., index, 0., 1.); + return; + } + } + } + + //gl_FragColor = vec4(match / pixels_count, index, 0., 1.); +} diff --git a/shaders/sh_surface_replace_fast_find/sh_surface_replace_fast_find.vsh b/shaders/sh_surface_replace_fast_find/sh_surface_replace_fast_find.vsh new file mode 100644 index 000000000..3900c20f4 --- /dev/null +++ b/shaders/sh_surface_replace_fast_find/sh_surface_replace_fast_find.vsh @@ -0,0 +1,19 @@ +// +// Simple passthrough vertex shader +// +attribute vec3 in_Position; // (x,y,z) +//attribute vec3 in_Normal; // (x,y,z) unused in this shader. +attribute vec4 in_Colour; // (r,g,b,a) +attribute vec2 in_TextureCoord; // (u,v) + +varying vec2 v_vTexcoord; +varying vec4 v_vColour; + +void main() +{ + vec4 object_space_pos = vec4( in_Position.x, in_Position.y, in_Position.z, 1.0); + gl_Position = gm_Matrices[MATRIX_WORLD_VIEW_PROJECTION] * object_space_pos; + + v_vColour = in_Colour; + v_vTexcoord = in_TextureCoord; +} diff --git a/shaders/sh_surface_replace_fast_find/sh_surface_replace_fast_find.yy b/shaders/sh_surface_replace_fast_find/sh_surface_replace_fast_find.yy new file mode 100644 index 000000000..cfc8ecb1e --- /dev/null +++ b/shaders/sh_surface_replace_fast_find/sh_surface_replace_fast_find.yy @@ -0,0 +1,10 @@ +{ + "resourceType": "GMShader", + "resourceVersion": "1.0", + "name": "sh_surface_replace_fast_find", + "parent": { + "name": "surface replace", + "path": "folders/shader/surface replace.yy", + }, + "type": 1, +} \ No newline at end of file diff --git a/shaders/sh_surface_replace_fast_replace/sh_surface_replace_fast_replace.fsh b/shaders/sh_surface_replace_fast_replace/sh_surface_replace_fast_replace.fsh new file mode 100644 index 000000000..0fc665cf2 --- /dev/null +++ b/shaders/sh_surface_replace_fast_replace/sh_surface_replace_fast_replace.fsh @@ -0,0 +1,26 @@ +// +// Simple passthrough fragment shader +// +varying vec2 v_vTexcoord; +varying vec4 v_vColour; + +uniform vec2 dimension; +uniform sampler2D replace; +uniform vec2 replace_dim; +uniform sampler2D findRes; +uniform float index; + +void main() { + gl_FragColor = vec4(0.); + + vec2 px = v_vTexcoord * dimension - replace_dim; + for( float i = 0.; i < replace_dim.x; i++ ) + for( float j = 0.; j < replace_dim.y; j++ ) { + vec2 uv = px + vec2(i, j) + 1.; + vec4 wg = texture2D( findRes, uv / dimension ); + if(wg.r == 1. && abs(wg.g - index) < 0.01) { + gl_FragColor = texture2D( replace, (replace_dim - vec2(i, j) - 1.) / replace_dim ); + return; + } + } +} diff --git a/shaders/sh_surface_replace_fast_replace/sh_surface_replace_fast_replace.vsh b/shaders/sh_surface_replace_fast_replace/sh_surface_replace_fast_replace.vsh new file mode 100644 index 000000000..3900c20f4 --- /dev/null +++ b/shaders/sh_surface_replace_fast_replace/sh_surface_replace_fast_replace.vsh @@ -0,0 +1,19 @@ +// +// Simple passthrough vertex shader +// +attribute vec3 in_Position; // (x,y,z) +//attribute vec3 in_Normal; // (x,y,z) unused in this shader. +attribute vec4 in_Colour; // (r,g,b,a) +attribute vec2 in_TextureCoord; // (u,v) + +varying vec2 v_vTexcoord; +varying vec4 v_vColour; + +void main() +{ + vec4 object_space_pos = vec4( in_Position.x, in_Position.y, in_Position.z, 1.0); + gl_Position = gm_Matrices[MATRIX_WORLD_VIEW_PROJECTION] * object_space_pos; + + v_vColour = in_Colour; + v_vTexcoord = in_TextureCoord; +} diff --git a/shaders/sh_surface_replace_fast_replace/sh_surface_replace_fast_replace.yy b/shaders/sh_surface_replace_fast_replace/sh_surface_replace_fast_replace.yy new file mode 100644 index 000000000..a95da44cb --- /dev/null +++ b/shaders/sh_surface_replace_fast_replace/sh_surface_replace_fast_replace.yy @@ -0,0 +1,10 @@ +{ + "resourceType": "GMShader", + "resourceVersion": "1.0", + "name": "sh_surface_replace_fast_replace", + "parent": { + "name": "surface replace", + "path": "folders/shader/surface replace.yy", + }, + "type": 1, +} \ No newline at end of file diff --git a/shaders/sh_surface_replace_find/sh_surface_replace_find.fsh b/shaders/sh_surface_replace_find/sh_surface_replace_find.fsh index 7d72056e1..dfab41c5a 100644 --- a/shaders/sh_surface_replace_find/sh_surface_replace_find.fsh +++ b/shaders/sh_surface_replace_find/sh_surface_replace_find.fsh @@ -8,6 +8,7 @@ uniform vec2 dimension; uniform sampler2D target; uniform vec2 target_dim; uniform float threshold; +uniform float index; float random (in vec2 st) { return fract(sin(dot(st.xy, vec2(12.9898, 78.233))) * 43758.5453123); @@ -43,6 +44,7 @@ void main() { float target_pixels = target_dim.x * target_dim.y * (1. - threshold); float match = 0.; vec2 matchPos = vec2(0., 0.); + vec2 matchUv = vec2(0., 0.); for( float i = 0.; i < target_dim.x; i++ ) for( float j = 0.; j < target_dim.y; j++ ) { @@ -53,9 +55,10 @@ void main() { float matchTemp = matchTemplate(uv); if(matchTemp > match) { match = matchTemp; - matchPos = vec2(i, j) / target_dim; + matchPos = vec2(i, j) / (target_dim - 1.); + matchUv = uv / dimension; } } - gl_FragColor = match >= target_pixels? vec4(matchPos, random(matchPos), 1.) : vec4(vec3(0.), 0.); + gl_FragColor = match >= target_pixels? vec4(matchPos, index, 1.) : vec4(vec3(0.), 0.); } diff --git a/shaders/sh_surface_replace_replace/sh_surface_replace_replace.fsh b/shaders/sh_surface_replace_replace/sh_surface_replace_replace.fsh index 1bb80d0c0..ffbcce072 100644 --- a/shaders/sh_surface_replace_replace/sh_surface_replace_replace.fsh +++ b/shaders/sh_surface_replace_replace/sh_surface_replace_replace.fsh @@ -4,14 +4,16 @@ varying vec2 v_vTexcoord; varying vec4 v_vColour; + uniform sampler2D replace; uniform vec2 replace_dim; uniform sampler2D findRes; +uniform float index; void main() { vec4 res = texture2D( findRes, v_vTexcoord ); - if(res.a == 1.) + if(res.a == 1. && abs(res.b - index) < 0.01) gl_FragColor = texture2D( replace, res.rg ); else - gl_FragColor = texture2D( gm_BaseTexture, v_vTexcoord ); + gl_FragColor = vec4(0.); } diff --git a/sprites/s_node_image_replace/71973a79-dfea-48b6-8a3b-701427e2ae16.png b/sprites/s_node_image_replace/71973a79-dfea-48b6-8a3b-701427e2ae16.png new file mode 100644 index 000000000..9638943e4 Binary files /dev/null and b/sprites/s_node_image_replace/71973a79-dfea-48b6-8a3b-701427e2ae16.png differ diff --git a/sprites/s_node_image_replace/layers/71973a79-dfea-48b6-8a3b-701427e2ae16/cc8f80cc-ee93-4461-8c45-2ac4b12ba7b6.png b/sprites/s_node_image_replace/layers/71973a79-dfea-48b6-8a3b-701427e2ae16/cc8f80cc-ee93-4461-8c45-2ac4b12ba7b6.png new file mode 100644 index 000000000..9638943e4 Binary files /dev/null and b/sprites/s_node_image_replace/layers/71973a79-dfea-48b6-8a3b-701427e2ae16/cc8f80cc-ee93-4461-8c45-2ac4b12ba7b6.png differ diff --git a/sprites/s_node_image_replace/s_node_image_replace.yy b/sprites/s_node_image_replace/s_node_image_replace.yy new file mode 100644 index 000000000..076d88fb9 --- /dev/null +++ b/sprites/s_node_image_replace/s_node_image_replace.yy @@ -0,0 +1,74 @@ +{ + "resourceType": "GMSprite", + "resourceVersion": "1.0", + "name": "s_node_image_replace", + "bbox_bottom": 63, + "bbox_left": 2, + "bbox_right": 63, + "bbox_top": 2, + "bboxMode": 0, + "collisionKind": 1, + "collisionTolerance": 0, + "DynamicTexturePage": false, + "edgeFiltering": false, + "For3D": false, + "frames": [ + {"resourceType":"GMSpriteFrame","resourceVersion":"1.1","name":"71973a79-dfea-48b6-8a3b-701427e2ae16",}, + ], + "gridX": 0, + "gridY": 0, + "height": 64, + "HTile": false, + "layers": [ + {"resourceType":"GMImageLayer","resourceVersion":"1.0","name":"cc8f80cc-ee93-4461-8c45-2ac4b12ba7b6","blendMode":0,"displayName":"default","isLocked":false,"opacity":100.0,"visible":true,}, + ], + "nineSlice": null, + "origin": 4, + "parent": { + "name": "filter", + "path": "folders/nodes/icons/filter.yy", + }, + "preMultiplyAlpha": false, + "sequence": { + "resourceType": "GMSequence", + "resourceVersion": "1.4", + "name": "s_node_image_replace", + "autoRecord": true, + "backdropHeight": 768, + "backdropImageOpacity": 0.5, + "backdropImagePath": "", + "backdropWidth": 1366, + "backdropXOffset": 0.0, + "backdropYOffset": 0.0, + "events": {"resourceType":"KeyframeStore","resourceVersion":"1.0","Keyframes":[],}, + "eventStubScript": null, + "eventToFunction": {}, + "length": 1.0, + "lockOrigin": false, + "moments": {"resourceType":"KeyframeStore","resourceVersion":"1.0","Keyframes":[],}, + "playback": 1, + "playbackSpeed": 30.0, + "playbackSpeedType": 0, + "showBackdrop": true, + "showBackdropImage": false, + "timeUnits": 1, + "tracks": [ + {"resourceType":"GMSpriteFramesTrack","resourceVersion":"1.0","name":"frames","builtinName":0,"events":[],"inheritsTrackColour":true,"interpolation":1,"isCreationTrack":false,"keyframes":{"resourceType":"KeyframeStore","resourceVersion":"1.0","Keyframes":[ + {"resourceType":"Keyframe","resourceVersion":"1.0","Channels":{"0":{"resourceType":"SpriteFrameKeyframe","resourceVersion":"1.0","Id":{"name":"71973a79-dfea-48b6-8a3b-701427e2ae16","path":"sprites/s_node_image_replace/s_node_image_replace.yy",},},},"Disabled":false,"id":"3456b0d1-456d-4a1c-9104-8bf43d046bd3","IsCreationKey":false,"Key":0.0,"Length":1.0,"Stretch":false,}, + ],},"modifiers":[],"spriteId":null,"trackColour":0,"tracks":[],"traits":0,}, + ], + "visibleRange": null, + "volume": 1.0, + "xorigin": 32, + "yorigin": 32, + }, + "swatchColours": null, + "swfPrecision": 2.525, + "textureGroupId": { + "name": "Default", + "path": "texturegroups/Default", + }, + "type": 0, + "VTile": false, + "width": 64, +} \ No newline at end of file