From 87a9b3ae056c47dc490faadee16e6d3f9a738422 Mon Sep 17 00:00:00 2001 From: Tanasart Date: Wed, 16 Oct 2024 17:34:26 +0700 Subject: [PATCH] tiler 1 --- PixelComposer.resource_order | 12 +- PixelComposer.yyp | 12 + datafiles/data/Theme.zip | Bin 2361851 -> 2378974 bytes objects/o_dialog_palette/Draw_64.gml | 2 + scripts/__canvas_brush/__canvas_brush.gml | 13 +- scripts/__tiler_brush/__tiler_brush.gml | 122 +++++ scripts/__tiler_brush/__tiler_brush.yy | 13 + scripts/__tiler_tool/__tiler_tool.gml | 17 + scripts/__tiler_tool/__tiler_tool.yy | 13 + scripts/buffer_functions/buffer_functions.gml | 13 +- .../canvas_flood_fill_functions.gml | 13 +- scripts/canvas_tool_fill/canvas_tool_fill.gml | 4 - scripts/color_selector/color_selector.gml | 1 + scripts/globals/globals.gml | 2 +- scripts/node_canvas/node_canvas.gml | 2 +- scripts/node_collection/node_collection.gml | 2 +- scripts/node_registry/node_registry.gml | 9 +- scripts/node_repeat/node_repeat.gml | 17 +- scripts/node_smear/node_smear.gml | 5 +- scripts/node_tiler/node_tiler.gml | 480 ++++++++++++++++++ scripts/node_tiler/node_tiler.yy | 13 + scripts/node_value_vec2/node_value_vec2.gml | 8 +- scripts/panel_data/panel_data.gml | 6 +- scripts/panel_preview/panel_preview.gml | 96 ++-- scripts/preferences/preferences.gml | 1 + scripts/theme_definition/theme_definition.gml | 1 + scripts/tiler_tool_brush/tiler_tool_brush.gml | 112 ++++ scripts/tiler_tool_brush/tiler_tool_brush.yy | 13 + scripts/tiler_tool_fill/tiler_tool_fill.gml | 126 +++++ scripts/tiler_tool_fill/tiler_tool_fill.yy | 13 + shaders/sh_brush_outline/sh_brush_outline.fsh | 6 +- shaders/sh_draw_tile/sh_draw_tile.yy | 4 +- .../sh_draw_tile_apply/sh_draw_tile_apply.fsh | 13 + .../sh_draw_tile_apply/sh_draw_tile_apply.vsh | 19 + .../sh_draw_tile_apply/sh_draw_tile_apply.yy | 12 + .../sh_draw_tile_brush/sh_draw_tile_brush.fsh | 8 + .../sh_draw_tile_brush/sh_draw_tile_brush.vsh | 18 + .../sh_draw_tile_brush/sh_draw_tile_brush.yy | 12 + .../sh_draw_tile_clear/sh_draw_tile_clear.fsh | 6 + .../sh_draw_tile_clear/sh_draw_tile_clear.vsh | 19 + .../sh_draw_tile_clear/sh_draw_tile_clear.yy | 12 + shaders/sh_draw_tile_map/sh_draw_tile_map.fsh | 23 + shaders/sh_draw_tile_map/sh_draw_tile_map.vsh | 19 + shaders/sh_draw_tile_map/sh_draw_tile_map.yy | 12 + shaders/sh_smear/sh_smear.fsh | 10 +- 45 files changed, 1240 insertions(+), 94 deletions(-) create mode 100644 scripts/__tiler_brush/__tiler_brush.gml create mode 100644 scripts/__tiler_brush/__tiler_brush.yy create mode 100644 scripts/__tiler_tool/__tiler_tool.gml create mode 100644 scripts/__tiler_tool/__tiler_tool.yy create mode 100644 scripts/node_tiler/node_tiler.gml create mode 100644 scripts/node_tiler/node_tiler.yy create mode 100644 scripts/tiler_tool_brush/tiler_tool_brush.gml create mode 100644 scripts/tiler_tool_brush/tiler_tool_brush.yy create mode 100644 scripts/tiler_tool_fill/tiler_tool_fill.gml create mode 100644 scripts/tiler_tool_fill/tiler_tool_fill.yy create mode 100644 shaders/sh_draw_tile_apply/sh_draw_tile_apply.fsh create mode 100644 shaders/sh_draw_tile_apply/sh_draw_tile_apply.vsh create mode 100644 shaders/sh_draw_tile_apply/sh_draw_tile_apply.yy create mode 100644 shaders/sh_draw_tile_brush/sh_draw_tile_brush.fsh create mode 100644 shaders/sh_draw_tile_brush/sh_draw_tile_brush.vsh create mode 100644 shaders/sh_draw_tile_brush/sh_draw_tile_brush.yy create mode 100644 shaders/sh_draw_tile_clear/sh_draw_tile_clear.fsh create mode 100644 shaders/sh_draw_tile_clear/sh_draw_tile_clear.vsh create mode 100644 shaders/sh_draw_tile_clear/sh_draw_tile_clear.yy create mode 100644 shaders/sh_draw_tile_map/sh_draw_tile_map.fsh create mode 100644 shaders/sh_draw_tile_map/sh_draw_tile_map.vsh create mode 100644 shaders/sh_draw_tile_map/sh_draw_tile_map.yy diff --git a/PixelComposer.resource_order b/PixelComposer.resource_order index 2fe946a70..0d00c0ee4 100644 --- a/PixelComposer.resource_order +++ b/PixelComposer.resource_order @@ -101,6 +101,8 @@ {"name":"strandSim","order":5,"path":"folders/nodes/data/simulation/strandSim.yy",}, {"name":"VFX","order":6,"path":"folders/nodes/data/simulation/VFX.yy",}, {"name":"generators","order":1,"path":"folders/nodes/data/simulation/VFX/generators.yy",}, + {"name":"tiler","order":31,"path":"folders/nodes/data/tiler.yy",}, + {"name":"tools","order":1,"path":"folders/nodes/data/tiler/tools.yy",}, {"name":"transform","order":28,"path":"folders/nodes/data/transform.yy",}, {"name":"value","order":29,"path":"folders/nodes/data/value.yy",}, {"name":"atlas","order":1,"path":"folders/nodes/data/value/atlas.yy",}, @@ -165,6 +167,7 @@ {"name":"color_picker","order":4,"path":"folders/shader/color_picker.yy",}, {"name":"color_selector","order":5,"path":"folders/shader/color_selector.yy",}, {"name":"draw","order":6,"path":"folders/shader/draw.yy",}, + {"name":"tiler","order":17,"path":"folders/shader/draw/tiler.yy",}, {"name":"filter","order":7,"path":"folders/shader/filter.yy",}, {"name":"blend_edge","order":40,"path":"folders/shader/filter/blend_edge.yy",}, {"name":"blur","order":50,"path":"folders/shader/filter/blur.yy",}, @@ -400,6 +403,8 @@ {"name":"__shapes","order":3,"path":"scripts/__shapes/__shapes.yy",}, {"name":"__strandSim","order":2,"path":"scripts/__strandSim/__strandSim.yy",}, {"name":"__surface","order":7,"path":"scripts/__surface/__surface.yy",}, + {"name":"__tiler_brush","order":1,"path":"scripts/__tiler_brush/__tiler_brush.yy",}, + {"name":"__tiler_tool","order":1,"path":"scripts/__tiler_tool/__tiler_tool.yy",}, {"name":"__vec2","order":7,"path":"scripts/__vec2/__vec2.yy",}, {"name":"__vec3","order":8,"path":"scripts/__vec3/__vec3.yy",}, {"name":"__vec4","order":9,"path":"scripts/__vec4/__vec4.yy",}, @@ -1371,6 +1376,8 @@ {"name":"textInput","order":3,"path":"scripts/textInput/textInput.yy",}, {"name":"texture_set_repeat","order":1,"path":"scripts/texture_set_repeat/texture_set_repeat.yy",}, {"name":"theme_definition","order":14,"path":"scripts/theme_definition/theme_definition.yy",}, + {"name":"tiler_tool_brush","order":1,"path":"scripts/tiler_tool_brush/tiler_tool_brush.yy",}, + {"name":"tiler_tool_fill","order":2,"path":"scripts/tiler_tool_fill/tiler_tool_fill.yy",}, {"name":"time_source","order":25,"path":"scripts/time_source/time_source.yy",}, {"name":"timeline_data","order":18,"path":"scripts/timeline_data/timeline_data.yy",}, {"name":"toggleGroup","order":7,"path":"scripts/toggleGroup/toggleGroup.yy",}, @@ -1542,7 +1549,10 @@ {"name":"sh_draw_surface_part_tiled","order":1,"path":"shaders/sh_draw_surface_part_tiled/sh_draw_surface_part_tiled.yy",}, {"name":"sh_draw_surface","order":52,"path":"shaders/sh_draw_surface/sh_draw_surface.yy",}, {"name":"sh_draw_texture","order":5,"path":"shaders/sh_draw_texture/sh_draw_texture.yy",}, - {"name":"sh_draw_tile","order":15,"path":"shaders/sh_draw_tile/sh_draw_tile.yy",}, + {"name":"sh_draw_tile_apply","order":2,"path":"shaders/sh_draw_tile_apply/sh_draw_tile_apply.yy",}, + {"name":"sh_draw_tile_brush","order":3,"path":"shaders/sh_draw_tile_brush/sh_draw_tile_brush.yy",}, + {"name":"sh_draw_tile_clear","order":4,"path":"shaders/sh_draw_tile_clear/sh_draw_tile_clear.yy",}, + {"name":"sh_draw_tile_map","order":1,"path":"shaders/sh_draw_tile_map/sh_draw_tile_map.yy",}, {"name":"sh_edge_detect","order":35,"path":"shaders/sh_edge_detect/sh_edge_detect.yy",}, {"name":"sh_edge_shade_apply","order":2,"path":"shaders/sh_edge_shade_apply/sh_edge_shade_apply.yy",}, {"name":"sh_edge_shade_convert","order":1,"path":"shaders/sh_edge_shade_convert/sh_edge_shade_convert.yy",}, diff --git a/PixelComposer.yyp b/PixelComposer.yyp index b441c0609..191973ceb 100644 --- a/PixelComposer.yyp +++ b/PixelComposer.yyp @@ -199,6 +199,8 @@ {"$GMFolder":"","%Name":"VFX","folderPath":"folders/nodes/data/simulation/VFX.yy","name":"VFX","resourceType":"GMFolder","resourceVersion":"2.0",}, {"$GMFolder":"","%Name":"affector","folderPath":"folders/nodes/data/simulation/VFX/affector.yy","name":"affector","resourceType":"GMFolder","resourceVersion":"2.0",}, {"$GMFolder":"","%Name":"generators","folderPath":"folders/nodes/data/simulation/VFX/generators.yy","name":"generators","resourceType":"GMFolder","resourceVersion":"2.0",}, + {"$GMFolder":"","%Name":"tiler","folderPath":"folders/nodes/data/tiler.yy","name":"tiler","resourceType":"GMFolder","resourceVersion":"2.0",}, + {"$GMFolder":"","%Name":"tools","folderPath":"folders/nodes/data/tiler/tools.yy","name":"tools","resourceType":"GMFolder","resourceVersion":"2.0",}, {"$GMFolder":"","%Name":"transform","folderPath":"folders/nodes/data/transform.yy","name":"transform","resourceType":"GMFolder","resourceVersion":"2.0",}, {"$GMFolder":"","%Name":"value","folderPath":"folders/nodes/data/value.yy","name":"value","resourceType":"GMFolder","resourceVersion":"2.0",}, {"$GMFolder":"","%Name":"array","folderPath":"folders/nodes/data/value/array.yy","name":"array","resourceType":"GMFolder","resourceVersion":"2.0",}, @@ -276,6 +278,7 @@ {"$GMFolder":"","%Name":"color_picker","folderPath":"folders/shader/color_picker.yy","name":"color_picker","resourceType":"GMFolder","resourceVersion":"2.0",}, {"$GMFolder":"","%Name":"color_selector","folderPath":"folders/shader/color_selector.yy","name":"color_selector","resourceType":"GMFolder","resourceVersion":"2.0",}, {"$GMFolder":"","%Name":"draw","folderPath":"folders/shader/draw.yy","name":"draw","resourceType":"GMFolder","resourceVersion":"2.0",}, + {"$GMFolder":"","%Name":"tiler","folderPath":"folders/shader/draw/tiler.yy","name":"tiler","resourceType":"GMFolder","resourceVersion":"2.0",}, {"$GMFolder":"","%Name":"filter","folderPath":"folders/shader/filter.yy","name":"filter","resourceType":"GMFolder","resourceVersion":"2.0",}, {"$GMFolder":"","%Name":"blend_edge","folderPath":"folders/shader/filter/blend_edge.yy","name":"blend_edge","resourceType":"GMFolder","resourceVersion":"2.0",}, {"$GMFolder":"","%Name":"blur","folderPath":"folders/shader/filter/blur.yy","name":"blur","resourceType":"GMFolder","resourceVersion":"2.0",}, @@ -886,6 +889,8 @@ {"id":{"name":"__shapes","path":"scripts/__shapes/__shapes.yy",},}, {"id":{"name":"__strandSim","path":"scripts/__strandSim/__strandSim.yy",},}, {"id":{"name":"__surface","path":"scripts/__surface/__surface.yy",},}, + {"id":{"name":"__tiler_brush","path":"scripts/__tiler_brush/__tiler_brush.yy",},}, + {"id":{"name":"__tiler_tool","path":"scripts/__tiler_tool/__tiler_tool.yy",},}, {"id":{"name":"__vec2","path":"scripts/__vec2/__vec2.yy",},}, {"id":{"name":"__vec3","path":"scripts/__vec3/__vec3.yy",},}, {"id":{"name":"__vec4","path":"scripts/__vec4/__vec4.yy",},}, @@ -1761,6 +1766,7 @@ {"id":{"name":"node_threshold","path":"scripts/node_threshold/node_threshold.yy",},}, {"id":{"name":"node_tile_random","path":"scripts/node_tile_random/node_tile_random.yy",},}, {"id":{"name":"node_tile","path":"scripts/node_tile/node_tile.yy",},}, + {"id":{"name":"node_tiler","path":"scripts/node_tiler/node_tiler.yy",},}, {"id":{"name":"node_time_remap","path":"scripts/node_time_remap/node_time_remap.yy",},}, {"id":{"name":"node_timeline_preview","path":"scripts/node_timeline_preview/node_timeline_preview.yy",},}, {"id":{"name":"node_to_number","path":"scripts/node_to_number/node_to_number.yy",},}, @@ -2010,6 +2016,8 @@ {"id":{"name":"texture_set_interpolation","path":"scripts/texture_set_interpolation/texture_set_interpolation.yy",},}, {"id":{"name":"texture_set_repeat","path":"scripts/texture_set_repeat/texture_set_repeat.yy",},}, {"id":{"name":"theme_definition","path":"scripts/theme_definition/theme_definition.yy",},}, + {"id":{"name":"tiler_tool_brush","path":"scripts/tiler_tool_brush/tiler_tool_brush.yy",},}, + {"id":{"name":"tiler_tool_fill","path":"scripts/tiler_tool_fill/tiler_tool_fill.yy",},}, {"id":{"name":"time_source","path":"scripts/time_source/time_source.yy",},}, {"id":{"name":"timeline_data","path":"scripts/timeline_data/timeline_data.yy",},}, {"id":{"name":"timer_function","path":"scripts/timer_function/timer_function.yy",},}, @@ -2203,6 +2211,10 @@ {"id":{"name":"sh_draw_surface_part_tiled","path":"shaders/sh_draw_surface_part_tiled/sh_draw_surface_part_tiled.yy",},}, {"id":{"name":"sh_draw_surface","path":"shaders/sh_draw_surface/sh_draw_surface.yy",},}, {"id":{"name":"sh_draw_texture","path":"shaders/sh_draw_texture/sh_draw_texture.yy",},}, + {"id":{"name":"sh_draw_tile_apply","path":"shaders/sh_draw_tile_apply/sh_draw_tile_apply.yy",},}, + {"id":{"name":"sh_draw_tile_brush","path":"shaders/sh_draw_tile_brush/sh_draw_tile_brush.yy",},}, + {"id":{"name":"sh_draw_tile_clear","path":"shaders/sh_draw_tile_clear/sh_draw_tile_clear.yy",},}, + {"id":{"name":"sh_draw_tile_map","path":"shaders/sh_draw_tile_map/sh_draw_tile_map.yy",},}, {"id":{"name":"sh_draw_tile","path":"shaders/sh_draw_tile/sh_draw_tile.yy",},}, {"id":{"name":"sh_draw_vertex_aa","path":"shaders/sh_draw_vertex_aa/sh_draw_vertex_aa.yy",},}, {"id":{"name":"sh_edge_detect","path":"shaders/sh_edge_detect/sh_edge_detect.yy",},}, diff --git a/datafiles/data/Theme.zip b/datafiles/data/Theme.zip index ef0ccd5da9b62593fb3fc6093bcbbed4a5bef31f..170ce8b2a3ccc3f930658d3bb3fab6d97d20a85d 100644 GIT binary patch delta 133118 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 SAF2aY#6Py?rN(;c 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

B8u2p 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 1) { if(buttonInstant(THEME.button_hide, bx, by, ui(28), ui(28), mouse_ui, interactable && sFOCUS, sHOVER, "", THEME.minus) == 2) { array_delete(palette, index_selecting[0], index_selecting[1]); + if(array_empty(palette)) + palette = [ c_black ]; index_selecting = [ 0, 0 ]; onApply(palette); diff --git a/scripts/__canvas_brush/__canvas_brush.gml b/scripts/__canvas_brush/__canvas_brush.gml index e0efbe92a..e6b08447e 100644 --- a/scripts/__canvas_brush/__canvas_brush.gml +++ b/scripts/__canvas_brush/__canvas_brush.gml @@ -1,10 +1,4 @@ function canvas_brush() constructor { - brush_sizing = false; - brush_sizing_s = 0; - brush_sizing_mx = 0; - brush_sizing_my = 0; - brush_sizing_dx = 0; - brush_sizing_dy = 0; brush_use_surface = false; brush_surface = noone; @@ -16,6 +10,13 @@ function canvas_brush() constructor { brush_seed = irandom_range(100000, 999999); brush_next_dist = 0; + brush_sizing = false; + brush_sizing_s = 0; + brush_sizing_mx = 0; + brush_sizing_my = 0; + brush_sizing_dx = 0; + brush_sizing_dy = 0; + mouse_pre_dir_x = undefined; mouse_pre_dir_y = undefined; diff --git a/scripts/__tiler_brush/__tiler_brush.gml b/scripts/__tiler_brush/__tiler_brush.gml new file mode 100644 index 000000000..390fcce2a --- /dev/null +++ b/scripts/__tiler_brush/__tiler_brush.gml @@ -0,0 +1,122 @@ +function tiler_brush(node) constructor { + brush_size = 1; + brush_indices = [[]]; + brush_width = 0; + brush_height = 0; + + brush_surface = noone; + brush_erase = false; + + brush_sizing = false; + brush_sizing_s = 0; + brush_sizing_mx = 0; + brush_sizing_my = 0; + brush_sizing_dx = 0; + brush_sizing_dy = 0; + + self.node = node; + + function step(hover, active, _x, _y, _s, _mx, _my, _snx, _sny) { + var attr = node.tool_attribute; + var _siz = attr.size; + + brush_size = _siz; + + if(brush_size = PEN_USE && attr.pressure) + brush_size = round(lerp(attr.pressure_size[0], attr.pressure_size[1], power(PEN_PRESSURE / 1024, 2))); + } + + function sizing(hover, active, _x, _y, _s, _mx, _my, _snx, _sny) { + var attr = node.tool_attribute; + var _siz = attr.size; + + if(brush_sizing) { + var s = brush_sizing_s + (_mx - brush_sizing_mx) / 16; + s = max(1, s); + attr.size = s; + + if(mouse_release(mb_right)) + brush_sizing = false; + + } else if(mouse_press(mb_right, active) && key_mod_press(SHIFT) && brush_surface == noone) { + + brush_sizing = true; + brush_sizing_s = _siz; + brush_sizing_mx = _mx; + brush_sizing_my = _my; + + brush_sizing_dx = round((_mx - _x) / _s - 0.5); + brush_sizing_dy = round((_my - _y) / _s - 0.5); + } + } +} + +function tiler_draw_point_brush(brush, _x, _y) { + if(brush.brush_height * brush.brush_width == 0) return; + + shader_set(sh_draw_tile_brush); + BLEND_OVERRIDE + + for( var i = 0, n = brush.brush_height; i < n; i++ ) + for( var j = 0, m = brush.brush_width; j < m; j++ ) { + shader_set_f("index", brush.brush_erase? -1 : brush.brush_indices[i][j]); + + var _xx = _x + j; + var _yy = _y + i; + + if(brush.brush_size <= 1) + draw_point(_xx, _yy); + + else if(brush.brush_size < global.FIX_POINTS_AMOUNT) { + var fx = global.FIX_POINTS[brush.brush_size]; + for( var i = 0, n = array_length(fx); i < n; i++ ) + draw_point(_xx + fx[i][0], _yy + fx[i][1]); + + } else + draw_circle_prec(_xx, _yy, brush.brush_size / 2, 0); + } + + BLEND_NORMAL + shader_reset(); +} + +function tiler_draw_line_brush(brush, _x0, _y0, _x1, _y1) { + if(brush.brush_height * brush.brush_width == 0) return; + + shader_set(sh_draw_tile_brush); + BLEND_OVERRIDE + + for( var i = 0, n = brush.brush_height; i < n; i++ ) + for( var j = 0, m = brush.brush_width; j < m; j++ ) { + shader_set_f("index", brush.brush_erase? -1 : brush.brush_indices[i][j]); + + var _xx0 = _x0 + j; + var _yy0 = _y0 + i; + var _xx1 = _x1 + j; + var _yy1 = _y1 + i; + + if(brush.brush_size < global.FIX_POINTS_AMOUNT) { + if(_xx1 > _xx0) _xx0--; + if(_xx1 < _xx0) _xx1--; + + if(_yy1 > _yy0) _yy0--; + if(_yy1 < _yy0) _yy1--; + } + + if(brush.brush_size == 1) { + draw_line(_xx0, _yy0, _xx1, _yy1); + + } else if(brush.brush_size < global.FIX_POINTS_AMOUNT) { + + var fx = global.FIX_POINTS[brush.brush_size]; + for( var i = 0, n = array_length(fx); i < n; i++ ) + draw_line(_xx0 + fx[i][0], _yy0 + fx[i][1], _xx1 + fx[i][0], _yy1 + fx[i][1]); + + } else { + draw_line_width(_xx0, _yy0, _xx1, _yy1, brush.brush_size); + } + } + + BLEND_NORMAL + shader_reset(); +} \ No newline at end of file diff --git a/scripts/__tiler_brush/__tiler_brush.yy b/scripts/__tiler_brush/__tiler_brush.yy new file mode 100644 index 000000000..b3fecc547 --- /dev/null +++ b/scripts/__tiler_brush/__tiler_brush.yy @@ -0,0 +1,13 @@ +{ + "$GMScript":"v1", + "%Name":"__tiler_brush", + "isCompatibility":false, + "isDnD":false, + "name":"__tiler_brush", + "parent":{ + "name":"tools", + "path":"folders/nodes/data/tiler/tools.yy", + }, + "resourceType":"GMScript", + "resourceVersion":"2.0", +} \ No newline at end of file diff --git a/scripts/__tiler_tool/__tiler_tool.gml b/scripts/__tiler_tool/__tiler_tool.gml new file mode 100644 index 000000000..0954cf624 --- /dev/null +++ b/scripts/__tiler_tool/__tiler_tool.gml @@ -0,0 +1,17 @@ +function tiler_tool(node) constructor { + self.node = node; + subtool = 0; + brush_resizable = true; + + apply_draw_surface = noone; + drawing_surface = noone; + preview_draw_mask = noone; + + tile_size = [ 1, 1 ]; + + static init = function() {} + static step = function(hover, active, _x, _y, _s, _mx, _my, _snx, _sny) {} + + static drawPreview = function() {} + static drawMask = function() {} +} \ No newline at end of file diff --git a/scripts/__tiler_tool/__tiler_tool.yy b/scripts/__tiler_tool/__tiler_tool.yy new file mode 100644 index 000000000..e5f81612f --- /dev/null +++ b/scripts/__tiler_tool/__tiler_tool.yy @@ -0,0 +1,13 @@ +{ + "$GMScript":"v1", + "%Name":"__tiler_tool", + "isCompatibility":false, + "isDnD":false, + "name":"__tiler_tool", + "parent":{ + "name":"tools", + "path":"folders/nodes/data/tiler/tools.yy", + }, + "resourceType":"GMScript", + "resourceVersion":"2.0", +} \ No newline at end of file diff --git a/scripts/buffer_functions/buffer_functions.gml b/scripts/buffer_functions/buffer_functions.gml index 7868f6abd..2020f858b 100644 --- a/scripts/buffer_functions/buffer_functions.gml +++ b/scripts/buffer_functions/buffer_functions.gml @@ -84,13 +84,7 @@ function buffer_write_at(buffer, position, type, data) { function buffer_serialize(buffer, compress = true) { INLINE if(!buffer_exists(buffer)) return ""; - - if(compress) { - var comp = buffer_compress(buffer, 0, buffer_get_size(buffer)); - return buffer_base64_encode(comp, 0, buffer_get_size(comp)); - } - - return buffer_base64_encode(buffer, 0, buffer_get_size(buffer)); + return compress? buffer_compress_all(buffer) : buffer_base64_encode(buffer, 0, buffer_get_size(buffer)); } function buffer_deserialize(buffer, compress = true) { @@ -123,6 +117,11 @@ function buffer_compress_string(str) { return buffer_compress(buffer, 0, buffer_get_size(buffer)); } +function buffer_compress_all(buff) { + var comp = buffer_compress(buff, 0, buffer_get_size(buff)); + return buffer_base64_encode(comp, 0, buffer_get_size(comp)); +} + function buffer_to_start(buff) { INLINE buffer_seek(buff, buffer_seek_start, 0); } function buffer_delete_safe(buff) { INLINE if(buffer_exists(buff)) buffer_delete(buff); } \ No newline at end of file diff --git a/scripts/canvas_flood_fill_functions/canvas_flood_fill_functions.gml b/scripts/canvas_flood_fill_functions/canvas_flood_fill_functions.gml index fd285a557..518ee484a 100644 --- a/scripts/canvas_flood_fill_functions/canvas_flood_fill_functions.gml +++ b/scripts/canvas_flood_fill_functions/canvas_flood_fill_functions.gml @@ -1,13 +1,12 @@ function _ff_getPixel(_x, _y) { return buffer_read_at(_ff_buff, (_y * _ff_w + _x) * 4, buffer_u32); } -function canvas_ff_fillable(colorBase, colorFill, _x, _y, _thres) { #region +function canvas_ff_fillable(colorBase, colorFill, _x, _y, _thres) { var c = _ff_getPixel(_x, _y); var d = color_diff_alpha(colorBase, c); - //print($"Checking [{_x}, {_y}]: {colorBase} - {c} : {_color_get_alpha(colorBase)} - {_color_get_alpha(c)} | {d}"); return d <= _thres && c != colorFill; -} #endregion +} -function canvas_flood_fill_scanline(_surf, _x, _y, _thres, _corner = false) { #region +function canvas_flood_fill_scanline(_surf, _x, _y, _thres, _corner = false) { var colorFill = CURRENT_COLOR; var colorBase = int64(surface_getpixel_ext(_surf, _x, _y)); @@ -95,9 +94,9 @@ function canvas_flood_fill_scanline(_surf, _x, _y, _thres, _corner = false) { #r draw_set_alpha(1); buffer_delete(_ff_buff); -} #endregion +} -function canvas_flood_fill_all(_surf, _x, _y, _thres) { #region +function canvas_flood_fill_all(_surf, _x, _y, _thres) { var colorBase = surface_getpixel_ext(_surf, _x, _y); var colorFill = colorBase; @@ -134,4 +133,4 @@ function canvas_flood_fill_all(_surf, _x, _y, _thres) { #region buffer_delete(_ff_buff); return [ sel_x0, sel_y0, sel_x1, sel_y1 ]; -} #endregion \ No newline at end of file +} \ No newline at end of file diff --git a/scripts/canvas_tool_fill/canvas_tool_fill.gml b/scripts/canvas_tool_fill/canvas_tool_fill.gml index d60419917..d85dcdc4f 100644 --- a/scripts/canvas_tool_fill/canvas_tool_fill.gml +++ b/scripts/canvas_tool_fill/canvas_tool_fill.gml @@ -31,8 +31,4 @@ function canvas_tool_fill(toolAttr) : canvas_tool() constructor { } } - - function drawPreview(hover, active, _x, _y, _s, _mx, _my, _snx, _sny) { - - } } \ No newline at end of file diff --git a/scripts/color_selector/color_selector.gml b/scripts/color_selector/color_selector.gml index d680960cb..2edfa57ae 100644 --- a/scripts/color_selector/color_selector.gml +++ b/scripts/color_selector/color_selector.gml @@ -413,6 +413,7 @@ function colorSelector(onApply = noone) constructor { draw_sprite_stretched_ext(THEME.color_picker_box, 1, cx - ui(18), cy - ui(18), ui(36), ui(36), current_color, aa); cx += ui(48); + if(interactable) if(buttonInstant(THEME.button_hide, cx - ui(18), cy - ui(18), ui(36), ui(36), mouse_ui, focus, hover, "", THEME.color_picker_dropper, 0, c_white) == 2) dropper_active = true; } diff --git a/scripts/globals/globals.gml b/scripts/globals/globals.gml index 765038985..bf400ebfe 100644 --- a/scripts/globals/globals.gml +++ b/scripts/globals/globals.gml @@ -42,7 +42,7 @@ LATEST_VERSION = 1_18_00_0; VERSION = 1_18_01_0; SAVE_VERSION = 1_18_01_0; - VERSION_STRING = MAC? "1.18.003m" : "1.18.2.005"; + VERSION_STRING = MAC? "1.18.003m" : "1.18.2.0077"; BUILD_NUMBER = 1_18_01_0; HOTKEYS = ds_map_create(); diff --git a/scripts/node_canvas/node_canvas.gml b/scripts/node_canvas/node_canvas.gml index 1554b8d95..869a91b5d 100644 --- a/scripts/node_canvas/node_canvas.gml +++ b/scripts/node_canvas/node_canvas.gml @@ -749,7 +749,7 @@ function Node_Canvas(_x, _y, _group = noone) : Node(_x, _y, _group) constructor prev_surface = surface_verify(prev_surface, _dim[0], _dim[1]); preview_draw_surface = surface_verify(preview_draw_surface, _dim[0], _dim[1]); - preview_draw_mask = surface_verify(preview_draw_mask, _sw, _sh); + preview_draw_mask = surface_verify(preview_draw_mask, _sw, _sh); #endregion #region tool diff --git a/scripts/node_collection/node_collection.gml b/scripts/node_collection/node_collection.gml index 9a22f7b2b..ca1b94871 100644 --- a/scripts/node_collection/node_collection.gml +++ b/scripts/node_collection/node_collection.gml @@ -533,7 +533,7 @@ function Node_Collection(_x, _y, _group = noone) : Node(_x, _y, _group) construc if(_s < 0.75) return; var _bx = (xx + w * _s) - 10; - var _by = (yy + h * _s) - 10; + var _by = previewable? (yy + h * _s) - 10 : yy + h / 2 * _s; var _hv = PANEL_GRAPH.pHOVER && PANEL_GRAPH.node_hovering == self && PANEL_GRAPH._value_focus == noone; _hv &= point_in_circle(_mx, _my, _bx, _by, 8); diff --git a/scripts/node_registry/node_registry.gml b/scripts/node_registry/node_registry.gml index 402326a2b..d60a8fb9d 100644 --- a/scripts/node_registry/node_registry.gml +++ b/scripts/node_registry/node_registry.gml @@ -515,9 +515,6 @@ function __initNodes() { var input = ds_list_create(); addNodeCatagory("IO", input); ds_list_add(input, "Images"); - addNodeObject(input, "Canvas", s_node_canvas, "Node_Canvas", [1, Node_Canvas], ["draw"], "Draw on surface using brush, eraser, etc."); - addNodeObject(input, "Canvas Group", s_node_canvas_group, "Node_Canvas_Group", [1, Node_Canvas_Group],, "Create a group that combines multiple canvas nodes a layers.").setVersion(11740); - addNodeObject(input, "Active Canvas", s_node_active_canvas, "Node_Active_Canvas", [1, Node_Active_Canvas], ["draw"], "Draw using parameterized brush.").setVersion(11570); addNodeObject(input, "Image", s_node_image, "Node_Image", [0, Node_create_Image],, "Load a single image from your computer."); addNodeObject(input, "Image GIF", s_node_image_gif, "Node_Image_gif", [0, Node_create_Image_gif],, "Load animated .gif from your computer."); addNodeObject(input, "Splice Spritesheet", s_node_image_sheet, "Node_Image_Sheet", [1, Node_Image_Sheet],, "Cut up spritesheet into animation or image array."); @@ -527,6 +524,12 @@ function __initNodes() { addNodeObject(input, "SVG", s_node_svg, "Node_SVG", [1, Node_SVG],, "Load a SVG file."); if(!DEMO) addNodeObject(input, "Export", s_node_export, "Node_Export", [0, Node_create_Export],, "Export image, image array to file, image sequence, animation."); + ds_list_add(input, "Draw"); + addNodeObject(input, "Canvas", s_node_canvas, "Node_Canvas", [1, Node_Canvas], ["draw"], "Draw on surface using brush, eraser, etc."); + addNodeObject(input, "Canvas Group", s_node_canvas_group, "Node_Canvas_Group", [1, Node_Canvas_Group],, "Create a group that combines multiple canvas nodes a layers.").setVersion(11740); + addNodeObject(input, "Active Canvas", s_node_active_canvas, "Node_Active_Canvas", [1, Node_Active_Canvas], ["draw"], "Draw using parameterized brush.").setVersion(11570); + /**/ addNodeObject(input, "Tile Drawer", s_node_svg, "Node_Tile_Drawer", [1, Node_Tile_Drawer],, "Draw using tileset.").setVersion(1_18_02_0); + ds_list_add(input, "Files"); addNodeObject(input, "Text File In", s_node_text_file_read, "Node_Text_File_Read", [1, Node_Text_File_Read], ["txt"], "Load .txt in as text.").setVersion(1080); addNodeObject(input, "Text File Out", s_node_text_file_write, "Node_Text_File_Write", [1, Node_Text_File_Write], ["txt"], "Save text as a .txt file.").setVersion(1090); diff --git a/scripts/node_repeat/node_repeat.gml b/scripts/node_repeat/node_repeat.gml index 2a6c0feb4..4049280c5 100644 --- a/scripts/node_repeat/node_repeat.gml +++ b/scripts/node_repeat/node_repeat.gml @@ -34,15 +34,15 @@ function Node_Repeat(_x, _y, _group = noone) : Node_Processor(_x, _y, _group) co newInput(4, nodeValue_Vec2("Shift position", self, [ DEF_SURF_W / 2, 0 ])) .setUnitRef(function() /*=>*/ {return getDimension()}); - newInput(5, nodeValue_Rotation_Range("Repeat rotation", self, [0, 0])); + newInput(5, nodeValue_Rotation_Range("Repeat rotation", self, [ 0, 0 ])); newInput(6, nodeValue_Float("Scale multiply", self, 1)); - newInput(7, nodeValue_Rotation_Range("Angle range", self, [0, 360])); + newInput(7, nodeValue_Rotation_Range("Angle range", self, [ 0, 360 ])); newInput(8, nodeValue_Float("Radius", self, 1)); - newInput(9, nodeValue_Vec2("Start position", self, [0, 0])) + newInput(9, nodeValue_Vec2("Start position", self, [ 0, 0 ])) .setUnitRef(function(index) { return getInputData(1); }); newInput(10, nodeValue_Curve("Scale over copy", self, CURVE_DEF_11 )); @@ -105,7 +105,7 @@ function Node_Repeat(_x, _y, _group = noone) : Node_Processor(_x, _y, _group) co newInput(32, nodeValue_Rotation("Start rotation", self, 0)); - newInput(33, nodeValue_Rotation("Rotation", self, 0)); + newInput(33, nodeValue_Rotation("Base rotation", self, 0)); newInput(34, nodeValue_Enum_Scroll("Blend Mode", self, 0, [ "Normal", "Additive", "Maximum" ])); @@ -429,7 +429,7 @@ function Node_Repeat(_x, _y, _group = noone) : Node_Processor(_x, _y, _group) co scax = eval_curve_x(_msca, i / (_amo - 1)) * _rsca; scay = scax; - rot = _rots + _rrot[0] + (_rrot[1] - _rrot[0]) * i / _amo; + rot = _rots + lerp(_rrot[0], _rrot[1], i / _amo); var _surf = _iSrf; if(is_array(_iSrf)) { @@ -477,10 +477,9 @@ function Node_Repeat(_x, _y, _group = noone) : Node_Processor(_x, _y, _group) co if(_rsta == 2) runy += _sh / 2; } - array_resize(atlases, atlas_i); var __temp_p = [ 0,0 ]; - for( var i = 0, n = array_length(atlases); i < n; i++ ) { // animators + for( var i = 0, n = atlas_i; i < n; i++ ) { // animators var _a = atlases[i]; var _surf = _a.surface; @@ -591,7 +590,7 @@ function Node_Repeat(_x, _y, _group = noone) : Node_Processor(_x, _y, _group) co var sw = _sw * _a.sx; var sh = _sh * _a.sy; - var pos = point_rotate(-sw / 2, -sh / 2, 0, 0, rot); + var pos = point_rotate(-sw / 2, -sh / 2, 0, 0, _a.rot); minx = min(minx, _x + pos[0], _x - pos[0], _x + pos[1], _x - pos[1]); miny = min(miny, _y + pos[0], _y - pos[0], _y + pos[1], _y - pos[1]); @@ -646,7 +645,7 @@ function Node_Repeat(_x, _y, _group = noone) : Node_Processor(_x, _y, _group) co else if(_bld_md == 1) { BLEND_ADD } else if(_bld_md == 2) { BLEND_MAX } - for( var i = 0, n = array_length(atlases); i < n; i++ ) { + for( var i = 0, n = atlas_i; i < n; i++ ) { var _a = atlases[i]; shader_set_interpolation(_a.surface); diff --git a/scripts/node_smear/node_smear.gml b/scripts/node_smear/node_smear.gml index 41884760f..2d0232b92 100644 --- a/scripts/node_smear/node_smear.gml +++ b/scripts/node_smear/node_smear.gml @@ -41,10 +41,12 @@ function Node_Smear(_x, _y, _group = noone) : Node_Processor(_x, _y, _group) con newInput(15, nodeValue_Enum_Scroll("Blend Mode", self, 0, [ "Maximum", "Additive" ])); + newInput(16, nodeValue_Bool("Normalize", self, false)); + input_display_list = [ 5, 6, ["Surfaces", true], 0, 3, 4, 7, 8, ["Smear", false], 11, 14, 1, 9, 2, 10, 13, 12, - ["Render", false], 15, + ["Render", false], 16, 15, ] newOutput(0, nodeValue_Output("Surface out", self, VALUE_TYPE.surface, noone)); @@ -90,6 +92,7 @@ function Node_Smear(_x, _y, _group = noone) : Node_Processor(_x, _y, _group) con shader_set_i("blend", _data[15]); shader_set_i("modulateStr", _data[12]); shader_set_f("spread", _data[13]); + shader_set_i("normalized", _data[16]); draw_surface_safe(_data[0]); surface_reset_shader(); diff --git a/scripts/node_tiler/node_tiler.gml b/scripts/node_tiler/node_tiler.gml new file mode 100644 index 000000000..272917596 --- /dev/null +++ b/scripts/node_tiler/node_tiler.gml @@ -0,0 +1,480 @@ +function Node_Tile_Drawer(_x, _y, _group = noone) : Node_Processor(_x, _y, _group) constructor { + name = "Tile Drawer"; + bypass_grid = true; + + newInput( 0, nodeValue_Surface("Tileset", self, noone)); + + newInput( 1, nodeValue_IVec2("Map size", self, [ 16, 16 ])); + + newInput( 2, nodeValue_Vec2("Tile size", self, [ 16, 16 ])); + + #region tile selector + tile_selector_surface = 0; + tile_selector_mask = 0; + tile_selector_h = ui(320); + + tile_selector_x = 0; + tile_selector_y = 0; + tile_selector_s = 1; + tile_selector_s_to = 1; + + tile_dragging = false; + tile_drag_sx = 0; + tile_drag_sy = 0; + tile_drag_mx = 0; + tile_drag_my = 0; + + tile_selecting = false; + tile_select_ss = [ 0, 0 ]; + + grid_draw = true; + + tile_selector = new Inspector_Custom_Renderer(function(_x, _y, _w, _m, _hover, _focus, _panel = noone) { + var _h = tile_selector_h; + var _pd = ui(4); + var _tileSet = current_data[0]; + var _tileSiz = current_data[2]; + + var _sx = _x + _pd; + var _sy = _y + _pd; + var _sw = _w - _pd * 2; + var _sh = _h - _pd * 2; + + draw_sprite_stretched_ext(THEME.ui_panel_bg, 1, _x, _y, _w, _h, c_white, 1); + tile_selector_surface = surface_verify(tile_selector_surface, _sw, _sh); + tile_selector_mask = surface_verify(tile_selector_mask, _sw, _sh); + + if(!is_surface(_tileSet)) return _h; + + var _tdim = surface_get_dimension(_tileSet); + + var _tileAmo = [ floor(_tdim[0] / _tileSiz[0]), floor(_tdim[1] / _tileSiz[1]) ]; + + var _tileSel_w =_tileSiz[0] * tile_selector_s; + var _tileSel_h =_tileSiz[1] * tile_selector_s; + + var _msx = _m[0] - _sx - tile_selector_x; + var _msy = _m[1] - _sy - tile_selector_y; + + var _mtx = floor(_msx / tile_selector_s / _tileSiz[0]); + var _mty = floor(_msy / tile_selector_s / _tileSiz[1]); + var _mid = _mtx >= 0 && _mtx < _tileAmo[0] && _mty >= 0 && _mtx < _tileAmo[1]? _mty * _tileAmo[0] + _mtx : noone; + + var _tileHov_x = tile_selector_x + _mtx * _tileSiz[0] * tile_selector_s; + var _tileHov_y = tile_selector_y + _mty * _tileSiz[1] * tile_selector_s; + + var _hov = _hover && point_in_rectangle(_m[0], _m[1], _x, _y, _x + _w, _y + _h); + + surface_set_target(tile_selector_surface); + draw_clear(COLORS.panel_bg_clear); + draw_sprite_tiled_ext(s_transparent, 0, tile_selector_x, tile_selector_y, tile_selector_s, tile_selector_s, COLORS.panel_preview_transparent, 1); + + draw_surface_ext(_tileSet, tile_selector_x, tile_selector_y, tile_selector_s, tile_selector_s, 0, c_white, 1); + + if(grid_draw) { + var _gw = _tileSiz[0] * tile_selector_s; + var _gh = _tileSiz[1] * tile_selector_s; + + var gw = _tdim[0] / _tileSiz[0]; + var gh = _tdim[1] / _tileSiz[1]; + + var cx = tile_selector_x; + var cy = tile_selector_y; + + draw_set_color(PROJECT.previewGrid.color); + draw_set_alpha(PROJECT.previewGrid.opacity); + + for( var i = 1; i < gw; i++ ) { + var _xx = cx + i * _gw; + draw_line(_xx, cy, _xx, cy + _tdim[1] * tile_selector_s); + } + + for( var i = 1; i < gh; i++ ) { + var _yy = cy + i * _gh; + draw_line(cx, _yy, cx + _tdim[0] * tile_selector_s, _yy); + } + + draw_set_alpha(1); + } + + draw_set_color(COLORS.panel_preview_surface_outline); + draw_rectangle(tile_selector_x, tile_selector_y, tile_selector_x + _tdim[0] * tile_selector_s - 1, tile_selector_y + _tdim[1] * tile_selector_s - 1, true); + + draw_set_color(c_black); + draw_rectangle_width(_tileHov_x, _tileHov_y, _tileHov_x + _tileSel_w - 1, _tileHov_y + _tileSel_h - 1, 1); + + if(_hov && _mid > noone && mouse_press(mb_left, _focus)) { + tile_selecting = true; + tile_select_ss = [ _mtx, _mty ]; + } + surface_reset_target(); + + surface_set_target(tile_selector_mask); + DRAW_CLEAR + + draw_set_color(c_white); + + for( var i = 0, n = array_length(brush.brush_indices); i < n; i++ ) + for( var j = 0, m = array_length(brush.brush_indices[i]); j < m; j++ ) { + var _bindex = brush.brush_indices[i][j]; + var _tileSel_row = floor(_bindex / _tileAmo[0]); + var _tileSel_col = safe_mod(_bindex, _tileAmo[0]); + var _tileSel_x = tile_selector_x + _tileSel_col * _tileSiz[0] * tile_selector_s; + var _tileSel_y = tile_selector_y + _tileSel_row * _tileSiz[1] * tile_selector_s; + draw_rectangle(_tileSel_x, _tileSel_y, _tileSel_x + _tileSel_w, _tileSel_y + _tileSel_h, false); + } + surface_reset_target(); + + #region tile selection + if(tile_selecting) { + var _ts_sx = clamp(min(tile_select_ss[0], _mtx), 0, _tileAmo[0] - 1); + var _ts_sy = clamp(min(tile_select_ss[1], _mty), 0, _tileAmo[1] - 1); + var _ts_ex = clamp(max(tile_select_ss[0], _mtx), 0, _tileAmo[0] - 1); + var _ts_ey = clamp(max(tile_select_ss[1], _mty), 0, _tileAmo[1] - 1); + + brush.brush_indices = []; + brush.brush_width = _ts_ex - _ts_sx + 1; + brush.brush_height = _ts_ey - _ts_sy + 1; + var _ind = 0; + + for( var i = _ts_sy; i <= _ts_ey; i++ ) + for( var j = _ts_sx; j <= _ts_ex; j++ ) + brush.brush_indices[i - _ts_sy][j - _ts_sx] = i * _tileAmo[0] + j; + + if(mouse_release(mb_left)) + tile_selecting = false; + } + #endregion + + #region pan zoom + if(tile_dragging) { + var _tdx = _m[0] - tile_drag_mx; + var _tdy = _m[1] - tile_drag_my; + + tile_selector_x = tile_drag_sx + _tdx; + tile_selector_y = tile_drag_sy + _tdy; + + if(mouse_release(mb_middle)) + tile_dragging = false; + } + + if(_hov) { + if(mouse_press(mb_middle, _focus)) { + tile_dragging = true; + tile_drag_sx = tile_selector_x; + tile_drag_sy = tile_selector_y; + tile_drag_mx = _m[0]; + tile_drag_my = _m[1]; + } + + var _s = tile_selector_s; + if(mouse_wheel_up()) { tile_selector_s_to = clamp(tile_selector_s_to * 1.1, 0.5, 4); } + if(mouse_wheel_down()) { tile_selector_s_to = clamp(tile_selector_s_to / 1.1, 0.5, 4); } + tile_selector_s = lerp_float(tile_selector_s, tile_selector_s_to, 3); + + if(_s != tile_selector_s) { + var _ds = tile_selector_s - _s; + + tile_selector_x -= _msx * _ds / _s; + tile_selector_y -= _msy * _ds / _s; + } + } + + var _tdim_ws = _tdim[0] * tile_selector_s; + var _tdim_hs = _tdim[1] * tile_selector_s; + var _minx = -(_tdim_ws - _w) - 32; + var _miny = -(_tdim_hs - _h) - 32; + var _maxx = 32; + var _maxy = 32; + if(_minx > _maxx) { _minx = (_minx + _maxx) / 2; _maxx = _minx; } + if(_miny > _maxy) { _miny = (_miny + _maxy) / 2; _maxy = _miny; } + + tile_selector_x = clamp(tile_selector_x, _minx, _maxx); + tile_selector_y = clamp(tile_selector_y, _miny, _maxy); + #endregion + + draw_surface(tile_selector_surface, _sx, _sy); + + shader_set(sh_brush_outline); + shader_set_f("dimension", _sw, _sh); + draw_surface(tile_selector_mask, _sx, _sy); + shader_reset(); + + return _h; + }); + #endregion + + input_display_list = [ + ["Tileset", false], 0, 2, + ["Map", false], 1, + ["Tiles", false], tile_selector, + ] + + newOutput(0, nodeValue_Output("Tile output", self, VALUE_TYPE.surface, noone)); + + newOutput(1, nodeValue_Output("Tile map", self, VALUE_TYPE.surface, noone)); + + newOutput(2, nodeValue_Output("Index array", self, VALUE_TYPE.integer, [])) + .setArrayDepth(1); + + #region ++++ data ++++ + canvas_surface = surface_create_empty(1, 1, surface_r16float); + canvas_buffer = buffer_create(1 * 1 * 2, buffer_grow, 2); + + drawing_surface = surface_create_empty(1, 1, surface_r16float); + draw_stack = ds_list_create(); + + preview_drawing_tile = surface_create_empty(1, 1); + preview_draw_overlay = surface_create_empty(1, 1); + preview_draw_overlay_tile = surface_create_empty(1, 1); + + _preview_draw_mask = surface_create_empty(1, 1); + preview_draw_mask = surface_create_empty(1, 1); + + attributes.dimension = [ 1, 1 ]; + temp_surface = [ 0 ]; + #endregion + + #region ++++ tool object ++++ + brush = new tiler_brush(self); + + tool_brush = new tiler_tool_brush(self, brush, false); + tool_eraser = new tiler_tool_brush(self, brush, true); + tool_fill = new tiler_tool_fill( self, brush, tool_attribute); + #endregion + + #region ++++ tools ++++ + tool_attribute.size = 1; + tool_size_edit = new textBox(TEXTBOX_INPUT.number, function(val) { tool_attribute.size = max(1, round(val)); }).setSlideType(true) + .setFont(f_p3) + .setSideButton(button(function() { dialogPanelCall(new Panel_Node_Canvas_Pressure(self), mouse_mx, mouse_my, { anchor: ANCHOR.top | ANCHOR.left }) }) + .setIcon(THEME.pen_pressure, 0, COLORS._main_icon)); + tool_size = [ "Size", tool_size_edit, "size", tool_attribute ]; + + tool_attribute.fillType = 0; + tool_fil8_edit = new buttonGroup( [ THEME.canvas_fill_type, THEME.canvas_fill_type, THEME.canvas_fill_type ], function(val) { tool_attribute.fillType = val; }) + .setTooltips( [ "Edge", "Edge + Corner" ] ) + .setCollape(false); + tool_fil8 = [ "Fill", tool_fil8_edit, "fillType", tool_attribute ]; + + tools = [ + new NodeTool( "Pencil", THEME.canvas_tools_pencil) + .setSetting(tool_size) + .setToolObject(tool_brush), + + new NodeTool( "Eraser", THEME.canvas_tools_eraser) + .setSetting(tool_size) + .setToolObject(tool_eraser), + + new NodeTool( "Fill", THEME.canvas_tools_bucket) + .setSetting(tool_fil8) + .setToolObject(tool_fill), + ]; + #endregion + + function apply_draw_surface() { + if(!is_surface(canvas_surface)) return; + if(!is_surface(drawing_surface)) return; + + surface_set_shader(canvas_surface, noone, true, BLEND.over); + draw_surface(drawing_surface, 0, 0); + surface_reset_shader(); + + triggerRender(); + } + + static drawOverlay = function(hover, active, _x, _y, _s, _mx, _my, _snx, _sny, params) { + var _tileSet = current_data[0]; + var _mapSize = current_data[1]; + var _tileSize = current_data[2]; + + if(!is_surface(drawing_surface)) { + drawing_surface = surface_verify(drawing_surface, _mapSize[0], _mapSize[1], surface_r16float); + + surface_set_shader(drawing_surface, noone, true, BLEND.over); + draw_surface(canvas_surface, 0, 0); + surface_reset_shader(); + } + + #region surfaces + var _dim = attributes.dimension; + var _outDim = [ _tileSize[0] * _dim[0], _tileSize[1] * _dim[1] ]; + + preview_draw_overlay = surface_verify(preview_draw_overlay, _dim[0], _dim[1], surface_r16float); + preview_drawing_tile = surface_verify(preview_drawing_tile, _dim[0] * _tileSize[0], _dim[1] * _tileSize[1]); + preview_draw_overlay_tile = surface_verify(preview_draw_overlay_tile, _dim[0] * _tileSize[0], _dim[1] * _tileSize[1]); + + var __s = surface_get_target(); + var _sw = surface_get_width(__s); + var _sh = surface_get_height(__s); + + _preview_draw_mask = surface_verify(_preview_draw_mask, _dim[0], _dim[1]); + preview_draw_mask = surface_verify( preview_draw_mask, _sw, _sh); + + #endregion + + #region tools + var _currTool = PANEL_PREVIEW.tool_current; + var _tool = _currTool == noone? noone : _currTool.getToolObject(); + + brush.brush_size = tool_attribute.size; + + if(_tool) { + _tool.subtool = _currTool.selecting; + _tool.apply_draw_surface = apply_draw_surface; + _tool.drawing_surface = drawing_surface; + _tool.tile_size = _tileSize; + + _tool.step(hover, active, _x, _y, _s, _mx, _my, _snx, _sny); + + surface_set_target(preview_draw_overlay); + DRAW_CLEAR + _tool.drawPreview(); + surface_reset_target(); + + surface_set_target(_preview_draw_mask); + DRAW_CLEAR + _tool.drawMask(); + surface_reset_target(); + + surface_set_target(preview_draw_mask); + DRAW_CLEAR + draw_surface_ext(_preview_draw_mask, _x, _y, _s * _tileSize[0], _s * _tileSize[1], 0, c_white, 1); + surface_reset_target(); + + if(_tool.brush_resizable) { + if(hover && key_mod_press(CTRL)) { + if(mouse_wheel_down()) tool_attribute.size = max( 1, tool_attribute.size - 1); + if(mouse_wheel_up()) tool_attribute.size = min(64, tool_attribute.size + 1); + } + + brush.sizing(hover, active, _x, _y, _s, _mx, _my, _snx, _sny); + } + } + #endregion + + #region draw preview surfaces + var _tileSetDim = surface_get_dimension(_tileSet); + + surface_set_shader(preview_drawing_tile, sh_draw_tile_map, true, BLEND.over); + shader_set_2("dimension", _outDim); + shader_set_2("tileSize", _tileSize); + shader_set_2("tileAmo", [ floor(_tileSetDim[0] / _tileSize[0]), floor(_tileSetDim[1] / _tileSize[1]) ]); + + shader_set_surface("tileTexture", _tileSet); + shader_set_2("tileTextureDim", _tileSetDim); + + shader_set_surface("indexTexture", drawing_surface); + shader_set_2("indexTextureDim", surface_get_dimension(drawing_surface)); + + draw_empty(); + surface_reset_shader(); + + draw_surface_ext(preview_drawing_tile, _x, _y, _s, _s, 0, c_white, 1); + +///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// + + surface_set_shader(preview_draw_overlay_tile, sh_draw_tile_map, true, BLEND.over); + shader_set_2("dimension", _outDim); + shader_set_2("tileSize", _tileSize); + shader_set_2("tileAmo", [ floor(_tileSetDim[0] / _tileSize[0]), floor(_tileSetDim[1] / _tileSize[1]) ]); + + shader_set_surface("tileTexture", _tileSet); + shader_set_2("tileTextureDim", _tileSetDim); + + shader_set_surface("indexTexture", preview_draw_overlay); + shader_set_2("indexTextureDim", surface_get_dimension(preview_draw_overlay)); + + draw_empty(); + surface_reset_shader(); + + draw_surface_ext(preview_draw_overlay_tile, _x, _y, _s, _s, 0, c_white, 1); + + params.panel.drawNodeGrid(); + +///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// + + shader_set(sh_brush_outline); + shader_set_f("dimension", _sw, _sh); + draw_surface(preview_draw_mask, 0, 0); + shader_reset(); + + #endregion + } + + static processData = function(_outData, _data, _output_index, _array_index) { + var _tileSet = _data[0]; + var _mapSize = _data[1]; + var _tileSize = _data[2]; + + attributes.dimension[0] = _mapSize[0]; + attributes.dimension[1] = _mapSize[1]; + + if(!is_surface(canvas_surface) && buffer_exists(canvas_buffer)) { + canvas_surface = surface_create(_mapSize[0], _mapSize[1], surface_r16float); + buffer_set_surface(canvas_buffer, canvas_surface, 0); + } else + canvas_surface = surface_verify(canvas_surface, _mapSize[0], _mapSize[1], surface_r16float); + drawing_surface = surface_verify(drawing_surface, _mapSize[0], _mapSize[1], surface_r16float); + + surface_set_shader(drawing_surface, noone, true, BLEND.over); + draw_surface(canvas_surface, 0, 0); + surface_reset_shader(); + + if(!is_surface(_tileSet)) return _outData; + + var _tileOut = _outData[0]; + var _tileMap = _outData[1]; + var _arrIndx = _outData[2]; + + var _outDim = [ _tileSize[0] * _mapSize[0], _tileSize[1] * _mapSize[1] ]; + + _tileOut = surface_verify(_tileOut, _outDim[0], _outDim[1]); + _tileMap = surface_verify(_tileMap, _mapSize[0], _mapSize[1], surface_r16float); + _arrIndx = array_verify(_arrIndx, _mapSize[0] * _mapSize[1]); + + buffer_resize(canvas_buffer, _mapSize[0] * _mapSize[1] * 2); + buffer_get_surface(canvas_buffer, canvas_surface, 0); + + surface_set_shader(_tileMap, sh_sample, true, BLEND.over); + draw_surface(canvas_surface, 0, 0); + surface_reset_shader(); + + var _tileSetDim = surface_get_dimension(_tileSet); + + surface_set_shader(_tileOut, sh_draw_tile_map, true, BLEND.over); + shader_set_2("dimension", _outDim); + shader_set_2("tileSize", _tileSize); + shader_set_2("tileAmo", [ floor(_tileSetDim[0] / _tileSize[0]), floor(_tileSetDim[1] / _tileSize[1]) ]); + + shader_set_surface("tileTexture", _tileSet); + shader_set_2("tileTextureDim", _tileSetDim); + + shader_set_surface("indexTexture", _tileMap); + shader_set_2("indexTextureDim", surface_get_dimension(_tileMap)); + + draw_empty(); + surface_reset_shader(); + + return [ _tileOut, _tileMap, _arrIndx ]; + } + + static getPreviewValues = function() { return preview_drawing_tile; } + static getGraphPreviewSurface = function() { return getSingleValue(0, preview_index, true); } + + //////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// + + static doSerialize = function(_map) { + _map.surface = buffer_serialize(canvas_buffer); + } + + static doApplyDeserialize = function() { + canvas_buffer = buffer_deserialize(load_map.surface); + canvas_surface = surface_verify(canvas_surface, attributes.dimension[0], attributes.dimension[1], surface_r16float); + drawing_surface = surface_verify(drawing_surface, attributes.dimension[0], attributes.dimension[1], surface_r16float); + + buffer_set_surface(canvas_buffer, canvas_surface, 0); + buffer_set_surface(canvas_buffer, drawing_surface, 0); + } + +} \ No newline at end of file diff --git a/scripts/node_tiler/node_tiler.yy b/scripts/node_tiler/node_tiler.yy new file mode 100644 index 000000000..b93a9b64e --- /dev/null +++ b/scripts/node_tiler/node_tiler.yy @@ -0,0 +1,13 @@ +{ + "$GMScript":"v1", + "%Name":"node_tiler", + "isCompatibility":false, + "isDnD":false, + "name":"node_tiler", + "parent":{ + "name":"tiler", + "path":"folders/nodes/data/tiler.yy", + }, + "resourceType":"GMScript", + "resourceVersion":"2.0", +} \ No newline at end of file diff --git a/scripts/node_value_vec2/node_value_vec2.gml b/scripts/node_value_vec2/node_value_vec2.gml index ad8b6f56f..b4f3fdf36 100644 --- a/scripts/node_value_vec2/node_value_vec2.gml +++ b/scripts/node_value_vec2/node_value_vec2.gml @@ -1,4 +1,5 @@ -function nodeValue_Vec2(_name, _node, _value, _data = {}) { return new __NodeValue_Vec2(_name, _node, _value, _data); } +function nodeValue_Vec2( _name, _node, _value, _data = {}) { return new __NodeValue_Vec2( _name, _node, _value, _data); } +function nodeValue_IVec2(_name, _node, _value, _data = {}) { return new __NodeValue_IVec2(_name, _node, _value, _data); } function __NodeValue_Vec2(_name, _node, _value, _data = {}) : NodeValue(_name, _node, CONNECT_TYPE.input, VALUE_TYPE.float, _value, "") constructor { setDisplay(VALUE_DISPLAY.vector, _data); @@ -75,4 +76,9 @@ function __NodeValue_Vec2(_name, _node, _value, _data = {}) : NodeValue(_name, _ return animator.getValue(_time); } +} + +function __NodeValue_IVec2(_name, _node, _value, _data = {}) : NodeValue(_name, _node, CONNECT_TYPE.input, VALUE_TYPE.integer, _value, "") constructor { + setDisplay(VALUE_DISPLAY.vector, _data); + def_length = 2; } \ No newline at end of file diff --git a/scripts/panel_data/panel_data.gml b/scripts/panel_data/panel_data.gml index 3f331cdfd..5320156af 100644 --- a/scripts/panel_data/panel_data.gml +++ b/scripts/panel_data/panel_data.gml @@ -525,7 +525,7 @@ function Panel(_parent, _x, _y, _w, _h) constructor { if(i == content_index) { foc = FOCUS == self; - var cc = foc? COLORS._main_accent : COLORS.panel_tab; + var cc = foc? (PREFERENCES.panel_outline_accent? COLORS._main_accent : COLORS.panel_select_border) : COLORS.panel_tab; draw_sprite_stretched_ext(THEME.ui_panel_tab, 1 + foc, _tbx, tby, tbw, _tdh, cc, 1); if(!foc) tab_cover = BBOX().fromWH(tsx + _tbx, tsy + tby + tbh - ui(3), tbw, THEME_VALUE.panel_tab_extend); @@ -598,7 +598,7 @@ function Panel(_parent, _x, _y, _w, _h) constructor { var tbw = string_width(txt) + ui(16 + 16); if(icn != noone) tbw += ui(16 + 4); - draw_sprite_stretched_ext(THEME.ui_panel_tab, 2, _tbx, tby, tbw, tbh, COLORS._main_accent, 1); + draw_sprite_stretched_ext(THEME.ui_panel_tab, 2, _tbx, tby, tbw, tbh, PREFERENCES.panel_outline_accent? COLORS._main_accent : COLORS.panel_select_border, 1); draw_sprite_ui(THEME.tab_exit, 0, _tbx + tbw - ui(12), tab_height / 2 + 1,,,, COLORS.panel_tab_icon); if(icn != noone) { @@ -713,7 +713,7 @@ function Panel(_parent, _x, _y, _w, _h) constructor { if(tab) draw_sprite_bbox(THEME.ui_panel_tab, 3, tab_cover); if(FOCUS == self && parent != noone) { - draw_sprite_stretched_ext(THEME.ui_panel, 1, tx + padding, ty + padding, tw - padding * 2, th - padding * 2, COLORS._main_accent, 1); + draw_sprite_stretched_ext(THEME.ui_panel, 1, tx + padding, ty + padding, tw - padding * 2, th - padding * 2, PREFERENCES.panel_outline_accent? COLORS._main_accent : COLORS.panel_select_border, 1); if(hasContent() && !m_in && m_ot) { draw_sprite_stretched_ext(THEME.ui_panel, 1, tx + padding, ty + padding, tw - padding * 2, th - padding * 2, c_white, 0.4); diff --git a/scripts/panel_preview/panel_preview.gml b/scripts/panel_preview/panel_preview.gml index e1c1a7888..0164a7337 100644 --- a/scripts/panel_preview/panel_preview.gml +++ b/scripts/panel_preview/panel_preview.gml @@ -873,13 +873,18 @@ function Panel_Preview() : PanelContent() constructor { } + preview_surface_width = 0; + preview_surface_height = 0; + function drawNodePreview() { var ss = canvas_s; var psx = 0, psy = 0; var psw = 0, psh = 0; - var pswd = 0, pshd = 0; var psx1 = 0, psy1 = 0; + preview_surface_width = 0; + preview_surface_height = 0; + var ssx = 0, ssy = 0; var ssw = 0, ssh = 0; @@ -889,11 +894,11 @@ function Panel_Preview() : PanelContent() constructor { psw = surface_get_width_safe(preview_surfaces[0]); psh = surface_get_height_safe(preview_surfaces[0]); - pswd = psw * ss; - pshd = psh * ss; + preview_surface_width = psw * ss; + preview_surface_height = psh * ss; - psx1 = psx + pswd; - psy1 = psy + pshd; + psx1 = psx + preview_surface_width; + psy1 = psy + preview_surface_height; } if(is_surface(preview_surfaces[1])) { @@ -1043,8 +1048,8 @@ function Panel_Preview() : PanelContent() constructor { if(is_surface(preview_surfaces[0])) { // outline if(PROJECT.previewGrid.pixel && canvas_s >= 16) { - var gw = pswd / canvas_s; - var gh = pshd / canvas_s; + var gw = preview_surface_width / canvas_s; + var gh = preview_surface_height / canvas_s; var cx = canvas_x; var cy = canvas_y; @@ -1054,46 +1059,50 @@ function Panel_Preview() : PanelContent() constructor { for( var i = 1; i < gw; i++ ) { var _xx = cx + i * canvas_s; - draw_line(_xx, cy, _xx, cy + pshd); + draw_line(_xx, cy, _xx, cy + preview_surface_height); } for( var i = 1; i < gh; i++ ) { var _yy = cy + i * canvas_s; - draw_line(cx, _yy - 1, cx + pswd, _yy - 1); + draw_line(cx, _yy - 1, cx + preview_surface_width, _yy - 1); } draw_set_alpha(1); } - if(PROJECT.previewGrid.show) { - var _gw = PROJECT.previewGrid.size[0] * canvas_s; - var _gh = PROJECT.previewGrid.size[1] * canvas_s; - - var gw = pswd / _gw; - var gh = pshd / _gh; - - var cx = canvas_x; - var cy = canvas_y; - - draw_set_color(PROJECT.previewGrid.color); - draw_set_alpha(PROJECT.previewGrid.opacity); - - for( var i = 1; i < gw; i++ ) { - var _xx = cx + i * _gw; - draw_line(_xx, cy, _xx, cy + pshd); - } - - for( var i = 1; i < gh; i++ ) { - var _yy = cy + i * _gh; - draw_line(cx, _yy, cx + pswd, _yy); - } - - draw_set_alpha(1); - } - draw_set_color(COLORS.panel_preview_surface_outline); - draw_rectangle(psx, psy, psx + pswd - 1, psy + pshd - 1, true); + draw_rectangle(psx, psy, psx + preview_surface_width - 1, psy + preview_surface_height - 1, true); } + + if(!struct_try_get(_node, "bypass_grid", false)) drawNodeGrid(); + } + + function drawNodeGrid() { + if(!PROJECT.previewGrid.show) return; + + var _gw = PROJECT.previewGrid.size[0] * canvas_s; + var _gh = PROJECT.previewGrid.size[1] * canvas_s; + + var gw = preview_surface_width / _gw; + var gh = preview_surface_height / _gh; + + var cx = canvas_x; + var cy = canvas_y; + + draw_set_color(PROJECT.previewGrid.color); + draw_set_alpha(PROJECT.previewGrid.opacity); + + for( var i = 1; i < gw; i++ ) { + var _xx = cx + i * _gw; + draw_line(_xx, cy, _xx, cy + preview_surface_height); + } + + for( var i = 1; i < gh; i++ ) { + var _yy = cy + i * _gh; + draw_line(cx, _yy, cx + preview_surface_width, _yy); + } + + draw_set_alpha(1); } function draw3DPolygon(_node) { @@ -1696,7 +1705,9 @@ function Panel_Preview() : PanelContent() constructor { var overActive = active && overHover; - var params = { w, h, toolbar_height }; + var params = { w, h, toolbar_height }; + params.panel = self; + var mouse_free = false; if(_node.is_3D == NODE_3D.none) { @@ -1904,8 +1915,6 @@ function Panel_Preview() : PanelContent() constructor { var _sx1 = _sxx + tool_size / 2; var _sy1 = _syy + tool_size / 2; - draw_sprite_colored(stool[_sind], 0, _sxx, _syy); - if(point_in_rectangle(_mx, _my, _sx0, _sy0 + 1, _sx1, _sy1 - 1)) { TOOLTIP = tool.getDisplayName(_sind); draw_sprite_stretched(THEME.button_hide, 1, _sx0 + pd, _sy0 + pd, tool_size - pd * 2, tool_size - pd * 2); @@ -1918,6 +1927,9 @@ function Panel_Preview() : PanelContent() constructor { draw_sprite_stretched_ext(THEME.button_hide, 2, _sx0 + pd, _sy0 + pd, tool_size - pd * 2, tool_size - pd * 2, COLORS.panel_preview_grid, 1); draw_sprite_stretched_ext(THEME.button_hide, 3, _sx0 + pd, _sy0 + pd, tool_size - pd * 2, tool_size - pd * 2, COLORS._main_accent, 1); } + + draw_sprite_colored(stool[_sind], 0, _sxx, _syy); + } if(point_in_rectangle(_mx, _my, tx, _y0 + 1, tx + s_ww, _y1 - 1)) @@ -2023,7 +2035,7 @@ function Panel_Preview() : PanelContent() constructor { break; } - var params = new widgetParam(tolx, toly, tolw, tolh, atr[$ key],, [ mx, my ]) + var params = new widgetParam(tolx, toly, tolw, tolh, atr[$ key], , [ mx, my ], x, y); params.s = tolh; params.font = _tool_font; @@ -2173,7 +2185,7 @@ function Panel_Preview() : PanelContent() constructor { } } - function drawContent(panel) { #region >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> MAIN DRAW <<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<< + function drawContent(panel) { // >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> MAIN DRAW <<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<< mouse_on_preview = pHOVER && point_in_rectangle(mx, my, 0, topbar_height, w, h - toolbar_height); if(do_fullView) run_in(1, fullView); @@ -2266,7 +2278,7 @@ function Panel_Preview() : PanelContent() constructor { } } - } #endregion + } ////=========== ACTION =========== diff --git a/scripts/preferences/preferences.gml b/scripts/preferences/preferences.gml index 51d22368c..5fc69a42e 100644 --- a/scripts/preferences/preferences.gml +++ b/scripts/preferences/preferences.gml @@ -117,6 +117,7 @@ PREFERENCES.palette_stretch = false; PREFERENCES.pan_mouse_key = mb_middle; + PREFERENCES.panel_outline_accent = true; #endregion #region //////////////////////////////////////////////////////////////////////// WIDGET //////////////////////////////////////////////////////////////////////// diff --git a/scripts/theme_definition/theme_definition.gml b/scripts/theme_definition/theme_definition.gml index 0fe924424..539653abe 100644 --- a/scripts/theme_definition/theme_definition.gml +++ b/scripts/theme_definition/theme_definition.gml @@ -516,6 +516,7 @@ function ThemeColor() constructor { panel_bg_clear_inner = CDEF.main_mdblack; panel_bg_clear = CDEF.main_black; + panel_select_border = CDEF.main_grey; panel_frame = CDEF.main_dkgrey; panel_prop_bg = CDEF.main_ltgrey; panel_tab = CDEF.white; diff --git a/scripts/tiler_tool_brush/tiler_tool_brush.gml b/scripts/tiler_tool_brush/tiler_tool_brush.gml new file mode 100644 index 000000000..220ceb79e --- /dev/null +++ b/scripts/tiler_tool_brush/tiler_tool_brush.gml @@ -0,0 +1,112 @@ +function tiler_tool_brush(node, _brush, eraser = false) : tiler_tool(node) constructor { + self.brush = _brush; + isEraser = eraser; + brush_resizable = true; + + mouse_cur_x = 0; + mouse_cur_y = 0; + mouse_pre_x = 0; + mouse_pre_y = 0; + mouse_pre_draw_x = undefined; + mouse_pre_draw_y = undefined; + + mouse_holding = false; + + mouse_line_drawing = false; + mouse_line_x0 = 0; + mouse_line_y0 = 0; + mouse_line_x1 = 0; + mouse_line_y1 = 0; + + function step(hover, active, _x, _y, _s, _mx, _my, _snx, _sny) { + brush.brush_erase = isEraser; + + mouse_cur_x = floor(round((_mx - _x) / _s - 0.5) / tile_size[0]); + mouse_cur_y = floor(round((_my - _y) / _s - 0.5) / tile_size[1]); + + if(mouse_pre_draw_x != undefined && mouse_pre_draw_y != undefined && key_mod_presses(SHIFT, CTRL)) { + + var _dx = mouse_cur_x - mouse_pre_draw_x; + var _dy = mouse_cur_y - mouse_pre_draw_y; + + if(_dx != _dy) { + var _ddx = _dx; + var _ddy = _dy; + + if(abs(_dx) > abs(_dy)) { + var _rat = round(_ddx / _ddy); + _ddx = _ddy * _rat; + + } else if(abs(_dx) < abs(_dy)) { + var _rat = round(_ddy / _ddx); + _ddy = _ddx * _rat; + + } + + mouse_cur_x = mouse_pre_draw_x + _ddx - sign(_ddx); + mouse_cur_y = mouse_pre_draw_y + _ddy - sign(_ddy); + } + } + + if(mouse_press(mb_left, active)) { + + surface_set_target(drawing_surface); + tiler_draw_point_brush(brush, mouse_cur_x, mouse_cur_y); + surface_reset_target(); + + mouse_holding = true; + if(mouse_pre_draw_x != undefined && mouse_pre_draw_y != undefined && key_mod_press(SHIFT)) { + surface_set_target(drawing_surface); + tiler_draw_line_brush(brush, mouse_pre_draw_x, mouse_pre_draw_y, mouse_cur_x, mouse_cur_y); + surface_reset_target(); + mouse_holding = false; + + apply_draw_surface(); + } + + mouse_pre_draw_x = mouse_cur_x; + mouse_pre_draw_y = mouse_cur_y; + } + + if(mouse_holding) { + if(mouse_pre_draw_x != mouse_cur_x || mouse_pre_draw_y != mouse_cur_y) { + surface_set_target(drawing_surface); + tiler_draw_line_brush(brush, mouse_pre_draw_x, mouse_pre_draw_y, mouse_cur_x, mouse_cur_y); + surface_reset_target(); + } + + mouse_pre_draw_x = mouse_cur_x; + mouse_pre_draw_y = mouse_cur_y; + + if(mouse_release(mb_left)) { + mouse_holding = false; + apply_draw_surface(); + } + } + + mouse_pre_x = mouse_cur_x; + mouse_pre_y = mouse_cur_y; + + } + + function drawPreview() { + mouse_line_drawing = false; + + if(mouse_pre_draw_x != undefined && mouse_pre_draw_y != undefined && key_mod_press(SHIFT)) { + + tiler_draw_line_brush(brush, mouse_pre_draw_x, mouse_pre_draw_y, mouse_cur_x, mouse_cur_y); + mouse_line_drawing = true; + mouse_line_x0 = min(mouse_cur_x, mouse_pre_draw_x); + mouse_line_y0 = min(mouse_cur_y, mouse_pre_draw_y); + mouse_line_x1 = max(mouse_cur_x, mouse_pre_draw_x) + 1; + mouse_line_y1 = max(mouse_cur_y, mouse_pre_draw_y) + 1; + + } else + tiler_draw_point_brush(brush, mouse_cur_x, mouse_cur_y); + } + + static drawMask = function() { + draw_set_color(c_white); + tiler_draw_point_brush(brush, mouse_cur_x, mouse_cur_y); + } +} \ No newline at end of file diff --git a/scripts/tiler_tool_brush/tiler_tool_brush.yy b/scripts/tiler_tool_brush/tiler_tool_brush.yy new file mode 100644 index 000000000..df561936b --- /dev/null +++ b/scripts/tiler_tool_brush/tiler_tool_brush.yy @@ -0,0 +1,13 @@ +{ + "$GMScript":"v1", + "%Name":"tiler_tool_brush", + "isCompatibility":false, + "isDnD":false, + "name":"tiler_tool_brush", + "parent":{ + "name":"tools", + "path":"folders/nodes/data/tiler/tools.yy", + }, + "resourceType":"GMScript", + "resourceVersion":"2.0", +} \ No newline at end of file diff --git a/scripts/tiler_tool_fill/tiler_tool_fill.gml b/scripts/tiler_tool_fill/tiler_tool_fill.gml new file mode 100644 index 000000000..40e780ecb --- /dev/null +++ b/scripts/tiler_tool_fill/tiler_tool_fill.gml @@ -0,0 +1,126 @@ +function tiler_tool_fill(node, _brush, toolAttr) : tiler_tool(node) constructor { + self.brush = _brush; + self.tool_attribute = toolAttr; + + mouse_cur_x = -1; + mouse_cur_y = -1; + mouse_pre_x = -1; + mouse_pre_y = -1; + + function step(hover, active, _x, _y, _s, _mx, _my, _snx, _sny) { + + mouse_cur_x = floor(round((_mx - _x) / _s - 0.5) / tile_size[0]); + mouse_cur_y = floor(round((_my - _y) / _s - 0.5) / tile_size[1]); + + surface_w = surface_get_width(drawing_surface); + surface_h = surface_get_height(drawing_surface); + + if(mouse_press(mb_left, active) && point_in_rectangle(mouse_cur_x, mouse_cur_y, 0, 0, surface_w - 1, surface_h - 1)) { + surface_set_target(drawing_surface); + tiler_flood_fill_scanline(drawing_surface, mouse_cur_x, mouse_cur_y, brush, tool_attribute.fillType); + surface_reset_target(); + + apply_draw_surface(); + } + } +} + +function _tiler_ff_getPixel(_x, _y) { return round(buffer_read_at(_ff_buff, (_y * _ff_w + _x) * 2, buffer_f16)); } + +function tiler_flood_fill_scanline(_surf, _x, _y, brush, _corner = false) { + if(brush.brush_height * brush.brush_width == 0) return; + + var _index = brush.brush_erase? -1 : brush.brush_indices[0][0]; + var colorBase = surface_getpixel(_surf, _x, _y)[0]; + +// print($"Filling {_x}, {_y} = {_index} [base: {colorBase}]") + if(_index == colorBase) return; //Clicking on the same color as the fill color + + _ff_w = surface_get_width(_surf); + _ff_h = surface_get_height(_surf); + _ff_buff = buffer_create(_ff_w * _ff_h * 2, buffer_fixed, 2); + buffer_get_surface(_ff_buff, _surf, 0); + + var x1, y1, x_start; + var spanAbove, spanBelow; + + var qx = ds_queue_create(); + var qy = ds_queue_create(); + ds_queue_enqueue(qx, _x); + ds_queue_enqueue(qy, _y); + + shader_set(sh_draw_tile_brush); + BLEND_OVERRIDE + shader_set_f("index", _index); + + while(!ds_queue_empty(qx)) { + + x1 = ds_queue_dequeue(qx); + y1 = ds_queue_dequeue(qy); + +// print($"----Checking {x1}, {y1} - {_tiler_ff_getPixel(x1, y1)}") + + if(_tiler_ff_getPixel(x1, y1) == _index) continue; //Color in queue is already filled + + while(x1 > 0 && colorBase == _tiler_ff_getPixel(x1 - 1, y1)) //Move to the leftmost connected pixel in the same row. + x1--; + x_start = x1; + + spanAbove = false; + spanBelow = false; + + while(x1 < surface_w && colorBase == _tiler_ff_getPixel(x1, y1)) { + draw_point(x1, y1); + buffer_write_at(_ff_buff, (y1 * _ff_w + x1) * 2, buffer_f16, _index); + +// print($"----Filling {x1}, {y1}") + + if(y1 > 0) { + if(_corner && x1 > 0 && colorBase == _tiler_ff_getPixel(x1 - 1, y1 - 1)) { //Check top left pixel + ds_queue_enqueue(qx, x1 - 1); + ds_queue_enqueue(qy, y1 - 1); + } + + if(colorBase == _tiler_ff_getPixel(x1, y1 - 1)) { //Check top pixel + ds_queue_enqueue(qx, x1); + ds_queue_enqueue(qy, y1 - 1); + } + } + + if(y1 < surface_h - 1) { + if(_corner && x1 > 0 && colorBase == _tiler_ff_getPixel(x1 - 1, y1 + 1)) { //Check bottom left pixel + ds_queue_enqueue(qx, x1 - 1); + ds_queue_enqueue(qy, y1 + 1); + } + + if(colorBase == _tiler_ff_getPixel(x1, y1 + 1)) { //Check bottom pixel + ds_queue_enqueue(qx, x1); + ds_queue_enqueue(qy, y1 + 1); + } + } + + if(_corner && x1 < surface_w - 1) { + if(y1 > 0 && colorBase == _tiler_ff_getPixel(x1 + 1, y1 - 1)) { //Check top right pixel + ds_queue_enqueue(qx, x1 + 1); + ds_queue_enqueue(qy, y1 - 1); + } + + if(y1 < surface_h - 1 && colorBase == _tiler_ff_getPixel(x1 + 1, y1 + 1)) { //Check bottom right pixel + ds_queue_enqueue(qx, x1 + 1); + ds_queue_enqueue(qy, y1 + 1); + } + } + + x1++; + } + } + + BLEND_NORMAL + shader_reset(); + + ds_queue_destroy(qx); + ds_queue_destroy(qy); + + draw_set_alpha(1); + buffer_delete(_ff_buff); +} \ No newline at end of file diff --git a/scripts/tiler_tool_fill/tiler_tool_fill.yy b/scripts/tiler_tool_fill/tiler_tool_fill.yy new file mode 100644 index 000000000..814a66817 --- /dev/null +++ b/scripts/tiler_tool_fill/tiler_tool_fill.yy @@ -0,0 +1,13 @@ +{ + "$GMScript":"v1", + "%Name":"tiler_tool_fill", + "isCompatibility":false, + "isDnD":false, + "name":"tiler_tool_fill", + "parent":{ + "name":"tools", + "path":"folders/nodes/data/tiler/tools.yy", + }, + "resourceType":"GMScript", + "resourceVersion":"2.0", +} \ No newline at end of file diff --git a/shaders/sh_brush_outline/sh_brush_outline.fsh b/shaders/sh_brush_outline/sh_brush_outline.fsh index a4e4768b6..5841d6f69 100644 --- a/shaders/sh_brush_outline/sh_brush_outline.fsh +++ b/shaders/sh_brush_outline/sh_brush_outline.fsh @@ -17,6 +17,8 @@ void main() { float p5 = texture2D( gm_BaseTexture, v_vTexcoord + vec2(tx.x, 0.) ).a > 0.? 1. : 0.; float p7 = texture2D( gm_BaseTexture, v_vTexcoord + vec2(0., tx.y) ).a > 0.? 1. : 0.; - if(p == 0. && (p1 != p7 || p3 != p5)) - gl_FragColor = v_vColour; + if(p1 != p7 || p3 != p5) { + if(p == 0.) gl_FragColor = v_vColour; + if(p == 1.) gl_FragColor = vec4(0., 0., 0., 1.); + } } diff --git a/shaders/sh_draw_tile/sh_draw_tile.yy b/shaders/sh_draw_tile/sh_draw_tile.yy index 7df82601b..65b2dfe88 100644 --- a/shaders/sh_draw_tile/sh_draw_tile.yy +++ b/shaders/sh_draw_tile/sh_draw_tile.yy @@ -3,8 +3,8 @@ "%Name":"sh_draw_tile", "name":"sh_draw_tile", "parent":{ - "name":"draw", - "path":"folders/shader/draw.yy", + "name":"tiler", + "path":"folders/shader/draw/tiler.yy", }, "resourceType":"GMShader", "resourceVersion":"2.0", diff --git a/shaders/sh_draw_tile_apply/sh_draw_tile_apply.fsh b/shaders/sh_draw_tile_apply/sh_draw_tile_apply.fsh new file mode 100644 index 000000000..8505efcd1 --- /dev/null +++ b/shaders/sh_draw_tile_apply/sh_draw_tile_apply.fsh @@ -0,0 +1,13 @@ +varying vec2 v_vTexcoord; +varying vec4 v_vColour; + +// uniform sampler2D canvas; +// uniform sampler2D drawing; + +void main() { + gl_FragColor = vec4(0.); + // vec4 c = texture2D( canvas, v_vTexcoord ); + // vec4 d = texture2D( drawing, v_vTexcoord ); + + // gl_FragColor = d.r > 0.? d : c; +} diff --git a/shaders/sh_draw_tile_apply/sh_draw_tile_apply.vsh b/shaders/sh_draw_tile_apply/sh_draw_tile_apply.vsh new file mode 100644 index 000000000..3900c20f4 --- /dev/null +++ b/shaders/sh_draw_tile_apply/sh_draw_tile_apply.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_draw_tile_apply/sh_draw_tile_apply.yy b/shaders/sh_draw_tile_apply/sh_draw_tile_apply.yy new file mode 100644 index 000000000..4ed6721c2 --- /dev/null +++ b/shaders/sh_draw_tile_apply/sh_draw_tile_apply.yy @@ -0,0 +1,12 @@ +{ + "$GMShader":"", + "%Name":"sh_draw_tile_apply", + "name":"sh_draw_tile_apply", + "parent":{ + "name":"tiler", + "path":"folders/shader/draw/tiler.yy", + }, + "resourceType":"GMShader", + "resourceVersion":"2.0", + "type":1, +} \ No newline at end of file diff --git a/shaders/sh_draw_tile_brush/sh_draw_tile_brush.fsh b/shaders/sh_draw_tile_brush/sh_draw_tile_brush.fsh new file mode 100644 index 000000000..e0c0e41de --- /dev/null +++ b/shaders/sh_draw_tile_brush/sh_draw_tile_brush.fsh @@ -0,0 +1,8 @@ +// varying vec2 v_vTexcoord; +varying vec4 v_vColour; + +uniform float index; + +void main() { + gl_FragColor = vec4(index + 1., 0., 0., 1.); +} diff --git a/shaders/sh_draw_tile_brush/sh_draw_tile_brush.vsh b/shaders/sh_draw_tile_brush/sh_draw_tile_brush.vsh new file mode 100644 index 000000000..b19b24c9f --- /dev/null +++ b/shaders/sh_draw_tile_brush/sh_draw_tile_brush.vsh @@ -0,0 +1,18 @@ +// +// 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_draw_tile_brush/sh_draw_tile_brush.yy b/shaders/sh_draw_tile_brush/sh_draw_tile_brush.yy new file mode 100644 index 000000000..be62594fb --- /dev/null +++ b/shaders/sh_draw_tile_brush/sh_draw_tile_brush.yy @@ -0,0 +1,12 @@ +{ + "$GMShader":"", + "%Name":"sh_draw_tile_brush", + "name":"sh_draw_tile_brush", + "parent":{ + "name":"tiler", + "path":"folders/shader/draw/tiler.yy", + }, + "resourceType":"GMShader", + "resourceVersion":"2.0", + "type":1, +} \ No newline at end of file diff --git a/shaders/sh_draw_tile_clear/sh_draw_tile_clear.fsh b/shaders/sh_draw_tile_clear/sh_draw_tile_clear.fsh new file mode 100644 index 000000000..8004a8e5d --- /dev/null +++ b/shaders/sh_draw_tile_clear/sh_draw_tile_clear.fsh @@ -0,0 +1,6 @@ +varying vec2 v_vTexcoord; +varying vec4 v_vColour; + +void main() { + gl_FragColor = vec4(-1., 0., 0., 1.); +} diff --git a/shaders/sh_draw_tile_clear/sh_draw_tile_clear.vsh b/shaders/sh_draw_tile_clear/sh_draw_tile_clear.vsh new file mode 100644 index 000000000..3900c20f4 --- /dev/null +++ b/shaders/sh_draw_tile_clear/sh_draw_tile_clear.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_draw_tile_clear/sh_draw_tile_clear.yy b/shaders/sh_draw_tile_clear/sh_draw_tile_clear.yy new file mode 100644 index 000000000..bb4ca0b24 --- /dev/null +++ b/shaders/sh_draw_tile_clear/sh_draw_tile_clear.yy @@ -0,0 +1,12 @@ +{ + "$GMShader":"", + "%Name":"sh_draw_tile_clear", + "name":"sh_draw_tile_clear", + "parent":{ + "name":"tiler", + "path":"folders/shader/draw/tiler.yy", + }, + "resourceType":"GMShader", + "resourceVersion":"2.0", + "type":1, +} \ No newline at end of file diff --git a/shaders/sh_draw_tile_map/sh_draw_tile_map.fsh b/shaders/sh_draw_tile_map/sh_draw_tile_map.fsh new file mode 100644 index 000000000..2b08ce475 --- /dev/null +++ b/shaders/sh_draw_tile_map/sh_draw_tile_map.fsh @@ -0,0 +1,23 @@ +varying vec2 v_vTexcoord; +varying vec4 v_vColour; + +uniform vec2 dimension; +uniform vec2 tileSize; +uniform vec2 tileAmo; + +uniform sampler2D tileTexture; +uniform vec2 tileTextureDim; + +uniform sampler2D indexTexture; +uniform vec2 indexTextureDim; + +void main() { + vec2 px = v_vTexcoord * dimension; + vec2 tileTx = mod(px, tileSize); + + float index = texture2D( indexTexture, floor(px / tileSize) / indexTextureDim ).r - 1.; + vec2 texTx = vec2(mod(index, tileAmo.x), floor(index / tileAmo.x)) * tileSize; + + gl_FragColor = texture2D( tileTexture, (texTx + tileTx) / tileTextureDim ); + // gl_FragColor = vec4(tileTx, 0., 1.); +} diff --git a/shaders/sh_draw_tile_map/sh_draw_tile_map.vsh b/shaders/sh_draw_tile_map/sh_draw_tile_map.vsh new file mode 100644 index 000000000..3900c20f4 --- /dev/null +++ b/shaders/sh_draw_tile_map/sh_draw_tile_map.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_draw_tile_map/sh_draw_tile_map.yy b/shaders/sh_draw_tile_map/sh_draw_tile_map.yy new file mode 100644 index 000000000..69fc7ab62 --- /dev/null +++ b/shaders/sh_draw_tile_map/sh_draw_tile_map.yy @@ -0,0 +1,12 @@ +{ + "$GMShader":"", + "%Name":"sh_draw_tile_map", + "name":"sh_draw_tile_map", + "parent":{ + "name":"tiler", + "path":"folders/shader/draw/tiler.yy", + }, + "resourceType":"GMShader", + "resourceVersion":"2.0", + "type":1, +} \ No newline at end of file diff --git a/shaders/sh_smear/sh_smear.fsh b/shaders/sh_smear/sh_smear.fsh index 84d6f96f8..2ae6596a9 100644 --- a/shaders/sh_smear/sh_smear.fsh +++ b/shaders/sh_smear/sh_smear.fsh @@ -18,6 +18,7 @@ uniform int alpha; uniform int modulateStr; uniform int inv; uniform int blend; +uniform int normalized; vec4 sampleTexture(vec2 pos) { #region if(pos.x >= 0. && pos.y >= 0. && pos.x <= 1. && pos.y <= 1.) @@ -43,11 +44,12 @@ vec4 smear(vec2 shift) { vec4 base = sampleTexture( v_vTexcoord ); float mBri = (base.r + base.g + base.b) / 3. * base.a; - vec4 res = base; - vec4 col, rcol; + vec4 res, col, rcol; float bright, rbright, dist = 0.; if(inv == 0) { + res = base; + for(float i = 0.; i <= 1.0; i += delta) { col = sampleTexture( v_vTexcoord - shift * i); @@ -87,7 +89,9 @@ vec4 smear(vec2 shift) { } mBri = bright; - res = alpha == 0? vec4(vec3(i), 1.) : vec4(vec3(1.), i); + + float _i = normalized == 1? i / bright : i; + res = alpha == 0? vec4(vec3(_i), 1.) : vec4(vec3(1.), _i); } }