diff --git a/PixelComposer.resource_order b/PixelComposer.resource_order index 3324cb936..88f8cc9cb 100644 --- a/PixelComposer.resource_order +++ b/PixelComposer.resource_order @@ -187,15 +187,17 @@ {"name":"bool","order":3,"path":"folders/nodes/data/value/bool.yy",}, {"name":"buffer","order":4,"path":"folders/nodes/data/value/buffer.yy",}, {"name":"color","order":5,"path":"folders/nodes/data/value/color.yy",}, - {"name":"matrix","order":14,"path":"folders/nodes/data/value/matrix.yy",}, - {"name":"mesh","order":6,"path":"folders/nodes/data/value/mesh.yy",}, - {"name":"number","order":7,"path":"folders/nodes/data/value/number.yy",}, - {"name":"path","order":8,"path":"folders/nodes/data/value/path.yy",}, - {"name":"struct","order":9,"path":"folders/nodes/data/value/struct.yy",}, - {"name":"surface","order":10,"path":"folders/nodes/data/value/surface.yy",}, - {"name":"text","order":11,"path":"folders/nodes/data/value/text.yy",}, - {"name":"trigger","order":13,"path":"folders/nodes/data/value/trigger.yy",}, - {"name":"vector","order":13,"path":"folders/nodes/data/value/vector.yy",}, + {"name":"gradient","order":7,"path":"folders/nodes/data/value/gradient.yy",}, + {"name":"matrix","order":16,"path":"folders/nodes/data/value/matrix.yy",}, + {"name":"mesh","order":8,"path":"folders/nodes/data/value/mesh.yy",}, + {"name":"number","order":9,"path":"folders/nodes/data/value/number.yy",}, + {"name":"palette","order":6,"path":"folders/nodes/data/value/palette.yy",}, + {"name":"path","order":10,"path":"folders/nodes/data/value/path.yy",}, + {"name":"struct","order":11,"path":"folders/nodes/data/value/struct.yy",}, + {"name":"surface","order":12,"path":"folders/nodes/data/value/surface.yy",}, + {"name":"text","order":13,"path":"folders/nodes/data/value/text.yy",}, + {"name":"trigger","order":14,"path":"folders/nodes/data/value/trigger.yy",}, + {"name":"vector","order":15,"path":"folders/nodes/data/value/vector.yy",}, {"name":"icons","order":3,"path":"folders/nodes/icons.yy",}, {"name":"animation","order":1,"path":"folders/nodes/icons/animation.yy",}, {"name":"filter","order":2,"path":"folders/nodes/icons/filter.yy",}, @@ -786,12 +788,15 @@ {"name":"node_collection_managed","order":2,"path":"scripts/node_collection_managed/node_collection_managed.yy",}, {"name":"node_color_adjust","order":4,"path":"scripts/node_color_adjust/node_color_adjust.yy",}, {"name":"node_color_data","order":6,"path":"scripts/node_color_data/node_color_data.yy",}, - {"name":"node_color_hsv","order":8,"path":"scripts/node_color_hsv/node_color_hsv.yy",}, - {"name":"node_color_mix","order":14,"path":"scripts/node_color_mix/node_color_mix.yy",}, - {"name":"node_color_oklch","order":17,"path":"scripts/node_color_oklch/node_color_oklch.yy",}, + {"name":"node_color_hsv","order":2,"path":"scripts/node_color_hsv/node_color_hsv.yy",}, + {"name":"node_color_mix","order":7,"path":"scripts/node_color_mix/node_color_mix.yy",}, + {"name":"node_color_oklch","order":3,"path":"scripts/node_color_oklch/node_color_oklch.yy",}, {"name":"node_color_remove","order":6,"path":"scripts/node_color_remove/node_color_remove.yy",}, {"name":"node_color_replace","order":8,"path":"scripts/node_color_replace/node_color_replace.yy",}, - {"name":"node_color_rgb","order":7,"path":"scripts/node_color_rgb/node_color_rgb.yy",}, + {"name":"node_color_rgb","order":1,"path":"scripts/node_color_rgb/node_color_rgb.yy",}, + {"name":"node_color_to_hsv","order":9,"path":"scripts/node_color_to_hsv/node_color_to_hsv.yy",}, + {"name":"node_color_to_oklch","order":10,"path":"scripts/node_color_to_oklch/node_color_to_oklch.yy",}, + {"name":"node_color_to_rgb","order":8,"path":"scripts/node_color_to_rgb/node_color_to_rgb.yy",}, {"name":"node_colorize","order":12,"path":"scripts/node_colorize/node_colorize.yy",}, {"name":"node_colors_replace","order":10,"path":"scripts/node_colors_replace/node_colors_replace.yy",}, {"name":"node_combine_hsv","order":2,"path":"scripts/node_combine_hsv/node_combine_hsv.yy",}, @@ -835,7 +840,7 @@ {"name":"node_feedback_input","order":1,"path":"scripts/node_feedback_input/node_feedback_input.yy",}, {"name":"node_feedback_output","order":2,"path":"scripts/node_feedback_output/node_feedback_output.yy",}, {"name":"node_FFT","order":12,"path":"scripts/node_FFT/node_FFT.yy",}, - {"name":"node_find_pixel","order":1,"path":"scripts/node_find_pixel/node_find_pixel.yy",}, + {"name":"node_find_pixel","order":4,"path":"scripts/node_find_pixel/node_find_pixel.yy",}, {"name":"node_FLIP_add_rigidbody","order":15,"path":"scripts/node_FLIP_add_rigidbody/node_FLIP_add_rigidbody.yy",}, {"name":"node_FLIP_apply_force","order":8,"path":"scripts/node_FLIP_apply_force/node_FLIP_apply_force.yy",}, {"name":"node_FLIP_apply_velocity","order":7,"path":"scripts/node_FLIP_apply_velocity/node_FLIP_apply_velocity.yy",}, @@ -866,13 +871,12 @@ {"name":"node_global","order":3,"path":"scripts/node_global/node_global.yy",}, {"name":"node_glow","order":20,"path":"scripts/node_glow/node_glow.yy",}, {"name":"node_gm_room","order":4,"path":"scripts/node_gm_room/node_gm_room.yy",}, - {"name":"node_gradient_extract","order":13,"path":"scripts/node_gradient_extract/node_gradient_extract.yy",}, - {"name":"node_gradient_out","order":5,"path":"scripts/node_gradient_out/node_gradient_out.yy",}, - {"name":"node_gradient_palette","order":11,"path":"scripts/node_gradient_palette/node_gradient_palette.yy",}, + {"name":"node_gradient_extract","order":4,"path":"scripts/node_gradient_extract/node_gradient_extract.yy",}, + {"name":"node_gradient_palette","order":2,"path":"scripts/node_gradient_palette/node_gradient_palette.yy",}, {"name":"node_gradient_points","order":2,"path":"scripts/node_gradient_points/node_gradient_points.yy",}, - {"name":"node_gradient_replace_color","order":12,"path":"scripts/node_gradient_replace_color/node_gradient_replace_color.yy",}, - {"name":"node_gradient_sample","order":16,"path":"scripts/node_gradient_sample/node_gradient_sample.yy",}, - {"name":"node_gradient_shift","order":10,"path":"scripts/node_gradient_shift/node_gradient_shift.yy",}, + {"name":"node_gradient_replace_color","order":3,"path":"scripts/node_gradient_replace_color/node_gradient_replace_color.yy",}, + {"name":"node_gradient_sample","order":5,"path":"scripts/node_gradient_sample/node_gradient_sample.yy",}, + {"name":"node_gradient_shift","order":1,"path":"scripts/node_gradient_shift/node_gradient_shift.yy",}, {"name":"node_grain","order":40,"path":"scripts/node_grain/node_grain.yy",}, {"name":"node_graph_preview","order":24,"path":"scripts/node_graph_preview/node_graph_preview.yy",}, {"name":"node_grey_alpha","order":8,"path":"scripts/node_grey_alpha/node_grey_alpha.yy",}, @@ -991,11 +995,10 @@ {"name":"node_pack_sprites","order":4,"path":"scripts/node_pack_sprites/node_pack_sprites.yy",}, {"name":"node_padding","order":13,"path":"scripts/node_padding/node_padding.yy",}, {"name":"node_palette_extract","order":15,"path":"scripts/node_palette_extract/node_palette_extract.yy",}, - {"name":"node_palette_replace","order":2,"path":"scripts/node_palette_replace/node_palette_replace.yy",}, {"name":"node_palette_shift","order":30,"path":"scripts/node_palette_shift/node_palette_shift.yy",}, - {"name":"node_palette_shrink","order":15,"path":"scripts/node_palette_shrink/node_palette_shrink.yy",}, - {"name":"node_palette_sort","order":9,"path":"scripts/node_palette_sort/node_palette_sort.yy",}, - {"name":"node_palette","order":4,"path":"scripts/node_palette/node_palette.yy",}, + {"name":"node_palette_shrink","order":3,"path":"scripts/node_palette_shrink/node_palette_shrink.yy",}, + {"name":"node_palette_sort","order":2,"path":"scripts/node_palette_sort/node_palette_sort.yy",}, + {"name":"node_palette","order":1,"path":"scripts/node_palette/node_palette.yy",}, {"name":"node_particle","order":10,"path":"scripts/node_particle/node_particle.yy",}, {"name":"node_path_3d","order":1,"path":"scripts/node_path_3d/node_path_3d.yy",}, {"name":"node_path_anchor","order":16,"path":"scripts/node_path_anchor/node_path_anchor.yy",}, @@ -1107,7 +1110,7 @@ {"name":"node_rm_combine","order":4,"path":"scripts/node_rm_combine/node_rm_combine.yy",}, {"name":"node_rm_render","order":7,"path":"scripts/node_rm_render/node_rm_render.yy",}, {"name":"node_rm_terrain","order":2,"path":"scripts/node_rm_terrain/node_rm_terrain.yy",}, - {"name":"node_sampler","order":3,"path":"scripts/node_sampler/node_sampler.yy",}, + {"name":"node_sampler","order":5,"path":"scripts/node_sampler/node_sampler.yy",}, {"name":"node_scale_algo","order":17,"path":"scripts/node_scale_algo/node_scale_algo.yy",}, {"name":"node_scale","order":12,"path":"scripts/node_scale/node_scale.yy",}, {"name":"node_scatter_points","order":7,"path":"scripts/node_scatter_points/node_scatter_points.yy",}, @@ -2002,6 +2005,9 @@ {"name":"s_node_color_remove","order":8,"path":"sprites/s_node_color_remove/s_node_color_remove.yy",}, {"name":"s_node_color_replace","order":57,"path":"sprites/s_node_color_replace/s_node_color_replace.yy",}, {"name":"s_node_color_separate","order":86,"path":"sprites/s_node_color_separate/s_node_color_separate.yy",}, + {"name":"s_node_color_to_hsv","order":13,"path":"sprites/s_node_color_to_hsv/s_node_color_to_hsv.yy",}, + {"name":"s_node_color_to_oklch","order":14,"path":"sprites/s_node_color_to_oklch/s_node_color_to_oklch.yy",}, + {"name":"s_node_color_to_rgb","order":12,"path":"sprites/s_node_color_to_rgb/s_node_color_to_rgb.yy",}, {"name":"s_node_colorize","order":24,"path":"sprites/s_node_colorize/s_node_colorize.yy",}, {"name":"s_node_colors_replace","order":9,"path":"sprites/s_node_colors_replace/s_node_colors_replace.yy",}, {"name":"s_node_combine_hsv","order":41,"path":"sprites/s_node_combine_hsv/s_node_combine_hsv.yy",}, diff --git a/PixelComposer.yyp b/PixelComposer.yyp index 906675623..b3e3a8a25 100644 --- a/PixelComposer.yyp +++ b/PixelComposer.yyp @@ -254,9 +254,11 @@ {"$GMFolder":"","%Name":"bool","folderPath":"folders/nodes/data/value/bool.yy","name":"bool","resourceType":"GMFolder","resourceVersion":"2.0",}, {"$GMFolder":"","%Name":"buffer","folderPath":"folders/nodes/data/value/buffer.yy","name":"buffer","resourceType":"GMFolder","resourceVersion":"2.0",}, {"$GMFolder":"","%Name":"color","folderPath":"folders/nodes/data/value/color.yy","name":"color","resourceType":"GMFolder","resourceVersion":"2.0",}, + {"$GMFolder":"","%Name":"gradient","folderPath":"folders/nodes/data/value/gradient.yy","name":"gradient","resourceType":"GMFolder","resourceVersion":"2.0",}, {"$GMFolder":"","%Name":"matrix","folderPath":"folders/nodes/data/value/matrix.yy","name":"matrix","resourceType":"GMFolder","resourceVersion":"2.0",}, {"$GMFolder":"","%Name":"mesh","folderPath":"folders/nodes/data/value/mesh.yy","name":"mesh","resourceType":"GMFolder","resourceVersion":"2.0",}, {"$GMFolder":"","%Name":"number","folderPath":"folders/nodes/data/value/number.yy","name":"number","resourceType":"GMFolder","resourceVersion":"2.0",}, + {"$GMFolder":"","%Name":"palette","folderPath":"folders/nodes/data/value/palette.yy","name":"palette","resourceType":"GMFolder","resourceVersion":"2.0",}, {"$GMFolder":"","%Name":"path","folderPath":"folders/nodes/data/value/path.yy","name":"path","resourceType":"GMFolder","resourceVersion":"2.0",}, {"$GMFolder":"","%Name":"struct","folderPath":"folders/nodes/data/value/struct.yy","name":"struct","resourceType":"GMFolder","resourceVersion":"2.0",}, {"$GMFolder":"","%Name":"surface","folderPath":"folders/nodes/data/value/surface.yy","name":"surface","resourceType":"GMFolder","resourceVersion":"2.0",}, @@ -567,6 +569,9 @@ {"$GMIncludedFile":"","%Name":"info.json","CopyToMask":-1,"filePath":"datafiles/data/Nodes/Internal/Color/Node_Color_Mix","name":"info.json","resourceType":"GMIncludedFile","resourceVersion":"2.0",}, {"$GMIncludedFile":"","%Name":"info.json","CopyToMask":-1,"filePath":"datafiles/data/Nodes/Internal/Color/Node_Color_OKLCH","name":"info.json","resourceType":"GMIncludedFile","resourceVersion":"2.0",}, {"$GMIncludedFile":"","%Name":"info.json","CopyToMask":-1,"filePath":"datafiles/data/Nodes/Internal/Color/Node_Color_RGB","name":"info.json","resourceType":"GMIncludedFile","resourceVersion":"2.0",}, + {"$GMIncludedFile":"","%Name":"info.json","CopyToMask":-1,"filePath":"datafiles/data/Nodes/Internal/Color/Node_Color_to_HSV","name":"info.json","resourceType":"GMIncludedFile","resourceVersion":"2.0",}, + {"$GMIncludedFile":"","%Name":"info.json","CopyToMask":-1,"filePath":"datafiles/data/Nodes/Internal/Color/Node_Color_to_OKLCH","name":"info.json","resourceType":"GMIncludedFile","resourceVersion":"2.0",}, + {"$GMIncludedFile":"","%Name":"info.json","CopyToMask":-1,"filePath":"datafiles/data/Nodes/Internal/Color/Node_Color_to_RGB","name":"info.json","resourceType":"GMIncludedFile","resourceVersion":"2.0",}, {"$GMIncludedFile":"","%Name":"info.json","CopyToMask":-1,"filePath":"datafiles/data/Nodes/Internal/Color/Node_Color","name":"info.json","resourceType":"GMIncludedFile","resourceVersion":"2.0",}, {"$GMIncludedFile":"","%Name":"info.json","CopyToMask":-1,"filePath":"datafiles/data/Nodes/Internal/Color/Node_Find_Pixel","name":"info.json","resourceType":"GMIncludedFile","resourceVersion":"2.0",}, {"$GMIncludedFile":"","%Name":"info.json","CopyToMask":-1,"filePath":"datafiles/data/Nodes/Internal/Color/Node_Gradient_Extract","name":"info.json","resourceType":"GMIncludedFile","resourceVersion":"2.0",}, @@ -1956,6 +1961,9 @@ {"id":{"name":"node_color_remove","path":"scripts/node_color_remove/node_color_remove.yy",},}, {"id":{"name":"node_color_replace","path":"scripts/node_color_replace/node_color_replace.yy",},}, {"id":{"name":"node_color_rgb","path":"scripts/node_color_rgb/node_color_rgb.yy",},}, + {"id":{"name":"node_color_to_hsv","path":"scripts/node_color_to_hsv/node_color_to_hsv.yy",},}, + {"id":{"name":"node_color_to_oklch","path":"scripts/node_color_to_oklch/node_color_to_oklch.yy",},}, + {"id":{"name":"node_color_to_rgb","path":"scripts/node_color_to_rgb/node_color_to_rgb.yy",},}, {"id":{"name":"node_color","path":"scripts/node_color/node_color.yy",},}, {"id":{"name":"node_colorize","path":"scripts/node_colorize/node_colorize.yy",},}, {"id":{"name":"node_colors_replace","path":"scripts/node_colors_replace/node_colors_replace.yy",},}, @@ -3323,6 +3331,9 @@ {"id":{"name":"s_node_color_remove","path":"sprites/s_node_color_remove/s_node_color_remove.yy",},}, {"id":{"name":"s_node_color_replace","path":"sprites/s_node_color_replace/s_node_color_replace.yy",},}, {"id":{"name":"s_node_color_separate","path":"sprites/s_node_color_separate/s_node_color_separate.yy",},}, + {"id":{"name":"s_node_color_to_hsv","path":"sprites/s_node_color_to_hsv/s_node_color_to_hsv.yy",},}, + {"id":{"name":"s_node_color_to_oklch","path":"sprites/s_node_color_to_oklch/s_node_color_to_oklch.yy",},}, + {"id":{"name":"s_node_color_to_rgb","path":"sprites/s_node_color_to_rgb/s_node_color_to_rgb.yy",},}, {"id":{"name":"s_node_color","path":"sprites/s_node_color/s_node_color.yy",},}, {"id":{"name":"s_node_colorize","path":"sprites/s_node_colorize/s_node_colorize.yy",},}, {"id":{"name":"s_node_colors_replace","path":"sprites/s_node_colors_replace/s_node_colors_replace.yy",},}, diff --git a/datafiles/data/Nodes/Internal.zip b/datafiles/data/Nodes/Internal.zip index fa3ec6d0d..03a68d534 100644 Binary files a/datafiles/data/Nodes/Internal.zip and b/datafiles/data/Nodes/Internal.zip differ diff --git a/datafiles/data/Nodes/Internal/Color/Node_Color_to_HSV/info.json b/datafiles/data/Nodes/Internal/Color/Node_Color_to_HSV/info.json new file mode 100644 index 000000000..c7637302f --- /dev/null +++ b/datafiles/data/Nodes/Internal/Color/Node_Color_to_HSV/info.json @@ -0,0 +1,9 @@ +{ + "name":"Color HSV", + "baseNode":"Node_Color_to_HSV", + "spr":"s_node_color_to_hsv", + "tooltip":"Return normalized HSV components of a color.", + "io":[ + "color" + ], +} \ No newline at end of file diff --git a/datafiles/data/Nodes/Internal/Color/Node_Color_to_OKLCH/info.json b/datafiles/data/Nodes/Internal/Color/Node_Color_to_OKLCH/info.json new file mode 100644 index 000000000..0acfda138 --- /dev/null +++ b/datafiles/data/Nodes/Internal/Color/Node_Color_to_OKLCH/info.json @@ -0,0 +1,9 @@ +{ + "name":"Color OKLCH", + "baseNode":"Node_Color_to_OKLCH", + "spr":"s_node_color_to_oklch", + "tooltip":"Return normalized LCH components of a color.", + "io":[ + "color" + ], +} \ No newline at end of file diff --git a/datafiles/data/Nodes/Internal/Color/Node_Color_to_RGB/info.json b/datafiles/data/Nodes/Internal/Color/Node_Color_to_RGB/info.json new file mode 100644 index 000000000..fcd51336c --- /dev/null +++ b/datafiles/data/Nodes/Internal/Color/Node_Color_to_RGB/info.json @@ -0,0 +1,9 @@ +{ + "name":"Color RGB", + "baseNode":"Node_Color_to_RGB", + "spr":"s_node_color_to_rgb", + "tooltip":"Return normalized RGB components of a color.", + "io":[ + "color" + ], +} \ No newline at end of file diff --git a/datafiles/data/Nodes/display_data.json b/datafiles/data/Nodes/display_data.json index c4866da2e..8f5e0a83d 100644 --- a/datafiles/data/Nodes/display_data.json +++ b/datafiles/data/Nodes/display_data.json @@ -623,9 +623,9 @@ "Node_Composite", "Node_Stack", "Node_Image_Grid", - "Node_Camera", "Node_Render_Sprite_Sheet", "Node_Pack_Sprites", + "Node_Camera", { "label": "Armature" }, { "label": "/Basics" }, @@ -695,9 +695,11 @@ "Node_Matrix_Det", "Node_Matrix_Invert", "Node_Matrix_Transpose", - "Node_Matrix_Color_Apply", {"label": "/Convertors"}, "Node_Matrix_To_Array", + {"label": "/Surfaces"}, + "Node_Matrix_Color_Apply", + "Node_Convolution", { "label": "Texts" }, { "label": "/Creators" }, @@ -829,6 +831,9 @@ "Node_Color_OKLCH", { "label": "/Data" }, "Node_Color_Data", + "Node_Color_to_RGB", + "Node_Color_to_HSV", + "Node_Color_to_OKLCH", { "label": "/Operators" }, "Node_Color_Mix", { "label": "/Surfaces" }, diff --git a/objects/o_dialog_add_node/Draw_64.gml b/objects/o_dialog_add_node/Draw_64.gml index 26d2353d6..2ce4ec070 100644 --- a/objects/o_dialog_add_node/Draw_64.gml +++ b/objects/o_dialog_add_node/Draw_64.gml @@ -156,7 +156,7 @@ if(DIALOG_SHOW_FOCUS) DIALOG_DRAW_FOCUS var _bgx = _sx - _sw / 2; var _bgy = _sy - _sh / 2; - draw_sprite_stretched(THEME.node_junction_name_bg, 0, _bgx - ui(8), _bgy - ui(8), _sw + ui(16), _sh + ui(16)); + draw_sprite_stretched(THEME.node_junction_name_bg, 0, _bgx - ui(10), _bgy - ui(10), _sw + ui(20), _sh + ui(20)); draw_sprite_stretched(node_icon, 0, _bgx, _bgy, _sw, _sh); } node_icon = noone; diff --git a/scripts/node_color_oklch/node_color_oklch.gml b/scripts/node_color_oklch/node_color_oklch.gml index c8318280c..3315886e9 100644 --- a/scripts/node_color_oklch/node_color_oklch.gml +++ b/scripts/node_color_oklch/node_color_oklch.gml @@ -38,12 +38,6 @@ function Node_Color_OKLCH(_x, _y, _group = noone) : Node_Processor(_x, _y, _grou var alp = _data[3]; var clp = _data[4]; - // var k1 = 0.206; - // var k2 = 0.03; - // var k3 = (1 + k1) / (1 + k2); - // l = (k3 * l - k1 * sqrt(sqr(k3 * l - k1) + 4 * k2 * k3 * l)) / 2; - // l = (l * (l + k1)) / (k3 * (l + k2)); - var rgb = oklch2rgb([ l, c, h ]); var _inrange = rgb[0] >= 0 && rgb[0] <= 1 && diff --git a/scripts/node_color_to_hsv/node_color_to_hsv.gml b/scripts/node_color_to_hsv/node_color_to_hsv.gml new file mode 100644 index 000000000..d0ad6ae86 --- /dev/null +++ b/scripts/node_color_to_hsv/node_color_to_hsv.gml @@ -0,0 +1,39 @@ +function Node_Color_to_HSV(_x, _y, _group = noone) : Node_Processor(_x, _y, _group) constructor { + name = "Color HSV"; + setDimension(96, 48); + + newInput(0, nodeValue_Color("Color", self, cola(c_white))) + .setVisible(true, true); + + newOutput(0, nodeValue_Output("Hue", self, VALUE_TYPE.float, 0)); + newOutput(1, nodeValue_Output("Saturation", self, VALUE_TYPE.float, 0)); + newOutput(2, nodeValue_Output("Value", self, VALUE_TYPE.float, 0)); + + static processData = function(_outData, _data, _output_index, _array_index = 0) { + var _c = _data[0]; + + if(!is_numeric(_c)) return _outData; + + _outData[0] = _color_get_hue(_c); + _outData[1] = _color_get_saturation(_c); + _outData[2] = _color_get_value(_c); + + return _outData; + } + + static onDrawNode = function(xx, yy, _mx, _my, _s, _hover, _focus) { + var bbox = drawGetBbox(xx, yy, _s); + draw_set_text(f_sdf, fa_right, fa_center, COLORS._main_text); + + for(var i = 0; i < array_length(outputs); i++) { + var val = outputs[i]; + if(!val.isVisible()) continue; + + var tx = bbox.x1 - 8 * _s; + var ty = val.y; + + draw_text_ext_add(tx, ty, string_char_at(val.name, 1), -1, w * _s, _s * .25); + } + } + +} \ No newline at end of file diff --git a/scripts/node_color_to_hsv/node_color_to_hsv.yy b/scripts/node_color_to_hsv/node_color_to_hsv.yy new file mode 100644 index 000000000..2e3af5e9c --- /dev/null +++ b/scripts/node_color_to_hsv/node_color_to_hsv.yy @@ -0,0 +1,14 @@ +{ + "$GMScript":"v1", + "%Name":"node_color_to_hsv", + "isCompatibility":false, + "isDnD":false, + "name":"node_color_to_hsv", + "parent":{ + "name":"color", + "path":"folders/nodes/data/value/color.yy", + }, + "resourceType":"GMScript", + "resourceVersion":"2.0", + "tags":[], +} \ No newline at end of file diff --git a/scripts/node_color_to_oklch/node_color_to_oklch.gml b/scripts/node_color_to_oklch/node_color_to_oklch.gml new file mode 100644 index 000000000..20498f794 --- /dev/null +++ b/scripts/node_color_to_oklch/node_color_to_oklch.gml @@ -0,0 +1,44 @@ +function Node_Color_to_OKLCH(_x, _y, _group = noone) : Node_Processor(_x, _y, _group) constructor { + name = "Color OKLCH"; + setDimension(96, 48); + + newInput(0, nodeValue_Color("Color", self, cola(c_white))) + .setVisible(true, true); + + newOutput(0, nodeValue_Output("Lightness", self, VALUE_TYPE.float, 0)); + newOutput(1, nodeValue_Output("Chroma", self, VALUE_TYPE.float, 0)); + newOutput(2, nodeValue_Output("Hue", self, VALUE_TYPE.float, 0)); + + static processData = function(_outData, _data, _output_index, _array_index = 0) { + var _c = _data[0]; + + if(!is_numeric(_c)) return _outData; + + var _lch = rgb2oklch([ + _color_get_red(_c), + _color_get_green(_c), + _color_get_blue(_c), + ]); + + _outData[0] = _lch[0]; + _outData[1] = _lch[1]; + _outData[2] = _lch[2]; + + return _outData; + } + + static onDrawNode = function(xx, yy, _mx, _my, _s, _hover, _focus) { + var bbox = drawGetBbox(xx, yy, _s); + draw_set_text(f_sdf, fa_right, fa_center, COLORS._main_text); + + for(var i = 0; i < array_length(outputs); i++) { + var val = outputs[i]; + if(!val.isVisible()) continue; + + var tx = bbox.x1 - 8 * _s; + var ty = val.y; + + draw_text_ext_add(tx, ty, string_char_at(val.name, 1), -1, w * _s, _s * .25); + } + } +} \ No newline at end of file diff --git a/scripts/node_color_to_oklch/node_color_to_oklch.yy b/scripts/node_color_to_oklch/node_color_to_oklch.yy new file mode 100644 index 000000000..15283ba82 --- /dev/null +++ b/scripts/node_color_to_oklch/node_color_to_oklch.yy @@ -0,0 +1,14 @@ +{ + "$GMScript":"v1", + "%Name":"node_color_to_oklch", + "isCompatibility":false, + "isDnD":false, + "name":"node_color_to_oklch", + "parent":{ + "name":"color", + "path":"folders/nodes/data/value/color.yy", + }, + "resourceType":"GMScript", + "resourceVersion":"2.0", + "tags":[], +} \ No newline at end of file diff --git a/scripts/node_color_to_rgb/node_color_to_rgb.gml b/scripts/node_color_to_rgb/node_color_to_rgb.gml new file mode 100644 index 000000000..62b164c0b --- /dev/null +++ b/scripts/node_color_to_rgb/node_color_to_rgb.gml @@ -0,0 +1,39 @@ +function Node_Color_to_RGB(_x, _y, _group = noone) : Node_Processor(_x, _y, _group) constructor { + name = "Color RGB"; + setDimension(96, 48); + + newInput(0, nodeValue_Color("Color", self, cola(c_white))) + .setVisible(true, true); + + newOutput(0, nodeValue_Output("Red", self, VALUE_TYPE.float, 0)); + newOutput(1, nodeValue_Output("Green", self, VALUE_TYPE.float, 0)); + newOutput(2, nodeValue_Output("Blue", self, VALUE_TYPE.float, 0)); + + static processData = function(_outData, _data, _output_index, _array_index = 0) { + var _c = _data[0]; + + if(!is_numeric(_c)) return _outData; + + _outData[0] = _color_get_red(_c); + _outData[1] = _color_get_green(_c); + _outData[2] = _color_get_blue(_c); + + return _outData; + } + + static onDrawNode = function(xx, yy, _mx, _my, _s, _hover, _focus) { + var bbox = drawGetBbox(xx, yy, _s); + draw_set_text(f_sdf, fa_right, fa_center, COLORS._main_text); + + for(var i = 0; i < array_length(outputs); i++) { + var val = outputs[i]; + if(!val.isVisible()) continue; + + var tx = bbox.x1 - 8 * _s; + var ty = val.y; + + draw_text_ext_add(tx, ty, string_char_at(val.name, 1), -1, w * _s, _s * .25); + } + } + +} \ No newline at end of file diff --git a/scripts/node_color_to_rgb/node_color_to_rgb.yy b/scripts/node_color_to_rgb/node_color_to_rgb.yy new file mode 100644 index 000000000..a3b9de404 --- /dev/null +++ b/scripts/node_color_to_rgb/node_color_to_rgb.yy @@ -0,0 +1,14 @@ +{ + "$GMScript":"v1", + "%Name":"node_color_to_rgb", + "isCompatibility":false, + "isDnD":false, + "name":"node_color_to_rgb", + "parent":{ + "name":"color", + "path":"folders/nodes/data/value/color.yy", + }, + "resourceType":"GMScript", + "resourceVersion":"2.0", + "tags":[], +} \ No newline at end of file diff --git a/scripts/node_gradient_extract/node_gradient_extract.yy b/scripts/node_gradient_extract/node_gradient_extract.yy index e41a04817..ed5cfbe30 100644 --- a/scripts/node_gradient_extract/node_gradient_extract.yy +++ b/scripts/node_gradient_extract/node_gradient_extract.yy @@ -5,8 +5,8 @@ "isDnD":false, "name":"node_gradient_extract", "parent":{ - "name":"color", - "path":"folders/nodes/data/value/color.yy", + "name":"gradient", + "path":"folders/nodes/data/value/gradient.yy", }, "resourceType":"GMScript", "resourceVersion":"2.0", diff --git a/scripts/node_gradient_out/node_gradient_out.yy b/scripts/node_gradient_out/node_gradient_out.yy index 471d4da1b..24bc1cff1 100644 --- a/scripts/node_gradient_out/node_gradient_out.yy +++ b/scripts/node_gradient_out/node_gradient_out.yy @@ -5,8 +5,8 @@ "isDnD":false, "name":"node_gradient_out", "parent":{ - "name":"color", - "path":"folders/nodes/data/value/color.yy", + "name":"gradient", + "path":"folders/nodes/data/value/gradient.yy", }, "resourceType":"GMScript", "resourceVersion":"2.0", diff --git a/scripts/node_gradient_palette/node_gradient_palette.yy b/scripts/node_gradient_palette/node_gradient_palette.yy index e54e17ab8..903a96d34 100644 --- a/scripts/node_gradient_palette/node_gradient_palette.yy +++ b/scripts/node_gradient_palette/node_gradient_palette.yy @@ -5,8 +5,8 @@ "isDnD":false, "name":"node_gradient_palette", "parent":{ - "name":"color", - "path":"folders/nodes/data/value/color.yy", + "name":"gradient", + "path":"folders/nodes/data/value/gradient.yy", }, "resourceType":"GMScript", "resourceVersion":"2.0", diff --git a/scripts/node_gradient_replace_color/node_gradient_replace_color.yy b/scripts/node_gradient_replace_color/node_gradient_replace_color.yy index c77015ea7..deeb02165 100644 --- a/scripts/node_gradient_replace_color/node_gradient_replace_color.yy +++ b/scripts/node_gradient_replace_color/node_gradient_replace_color.yy @@ -5,8 +5,8 @@ "isDnD":false, "name":"node_gradient_replace_color", "parent":{ - "name":"color", - "path":"folders/nodes/data/value/color.yy", + "name":"gradient", + "path":"folders/nodes/data/value/gradient.yy", }, "resourceType":"GMScript", "resourceVersion":"2.0", diff --git a/scripts/node_gradient_sample/node_gradient_sample.yy b/scripts/node_gradient_sample/node_gradient_sample.yy index 75c53bde6..fc4c419cb 100644 --- a/scripts/node_gradient_sample/node_gradient_sample.yy +++ b/scripts/node_gradient_sample/node_gradient_sample.yy @@ -5,8 +5,8 @@ "isDnD":false, "name":"node_gradient_sample", "parent":{ - "name":"color", - "path":"folders/nodes/data/value/color.yy", + "name":"gradient", + "path":"folders/nodes/data/value/gradient.yy", }, "resourceType":"GMScript", "resourceVersion":"2.0", diff --git a/scripts/node_gradient_shift/node_gradient_shift.yy b/scripts/node_gradient_shift/node_gradient_shift.yy index dfe0cbfef..8e5d470c8 100644 --- a/scripts/node_gradient_shift/node_gradient_shift.yy +++ b/scripts/node_gradient_shift/node_gradient_shift.yy @@ -5,8 +5,8 @@ "isDnD":false, "name":"node_gradient_shift", "parent":{ - "name":"color", - "path":"folders/nodes/data/value/color.yy", + "name":"gradient", + "path":"folders/nodes/data/value/gradient.yy", }, "resourceType":"GMScript", "resourceVersion":"2.0", diff --git a/scripts/node_palette/node_palette.yy b/scripts/node_palette/node_palette.yy index a7e1ebf52..7b1566f19 100644 --- a/scripts/node_palette/node_palette.yy +++ b/scripts/node_palette/node_palette.yy @@ -5,8 +5,8 @@ "isDnD":false, "name":"node_palette", "parent":{ - "name":"color", - "path":"folders/nodes/data/value/color.yy", + "name":"palette", + "path":"folders/nodes/data/value/palette.yy", }, "resourceType":"GMScript", "resourceVersion":"2.0", diff --git a/scripts/node_palette_replace/node_palette_replace.yy b/scripts/node_palette_replace/node_palette_replace.yy index da9efabfc..7185a7817 100644 --- a/scripts/node_palette_replace/node_palette_replace.yy +++ b/scripts/node_palette_replace/node_palette_replace.yy @@ -5,8 +5,8 @@ "isDnD":false, "name":"node_palette_replace", "parent":{ - "name":"color", - "path":"folders/nodes/data/value/color.yy", + "name":"palette", + "path":"folders/nodes/data/value/palette.yy", }, "resourceType":"GMScript", "resourceVersion":"2.0", diff --git a/scripts/node_palette_shrink/node_palette_shrink.yy b/scripts/node_palette_shrink/node_palette_shrink.yy index 0531ce856..20c690f08 100644 --- a/scripts/node_palette_shrink/node_palette_shrink.yy +++ b/scripts/node_palette_shrink/node_palette_shrink.yy @@ -5,8 +5,8 @@ "isDnD":false, "name":"node_palette_shrink", "parent":{ - "name":"color", - "path":"folders/nodes/data/value/color.yy", + "name":"palette", + "path":"folders/nodes/data/value/palette.yy", }, "resourceType":"GMScript", "resourceVersion":"2.0", diff --git a/scripts/node_palette_sort/node_palette_sort.yy b/scripts/node_palette_sort/node_palette_sort.yy index 998b3c4c9..cb70eb666 100644 --- a/scripts/node_palette_sort/node_palette_sort.yy +++ b/scripts/node_palette_sort/node_palette_sort.yy @@ -5,8 +5,8 @@ "isDnD":false, "name":"node_palette_sort", "parent":{ - "name":"color", - "path":"folders/nodes/data/value/color.yy", + "name":"palette", + "path":"folders/nodes/data/value/palette.yy", }, "resourceType":"GMScript", "resourceVersion":"2.0", diff --git a/scripts/sliderRange/sliderRange.gml b/scripts/sliderRange/sliderRange.gml index 9b556cb1e..aff377d07 100644 --- a/scripts/sliderRange/sliderRange.gml +++ b/scripts/sliderRange/sliderRange.gml @@ -6,10 +6,10 @@ function sliderRange(_step, _int, _range, _onModify) : widget() constructor { onModify = _onModify; - tb_value_min = new textBox(TEXTBOX_INPUT.number, function(val) /*=>*/ {return onModify(clamp(val, curr_range[0], curr_range[1]), 0)}) + tb_value_min = new textBox(TEXTBOX_INPUT.number, function(val) /*=>*/ {return onModify(val, 0)}) .setSlideType(_int).setSlideStep(_step).setSlideRange(_range[0], _range[1]); - tb_value_max = new textBox(TEXTBOX_INPUT.number, function(val) /*=>*/ {return onModify(clamp(val, curr_range[0], curr_range[1]), 1)}) + tb_value_max = new textBox(TEXTBOX_INPUT.number, function(val) /*=>*/ {return onModify(val, 1)}) .setSlideType(_int).setSlideStep(_step).setSlideRange(_range[0], _range[1]); tb_value_min.hide = true; diff --git a/sprites/s_node_color_data/7efde473-a4d0-42c1-b6cc-0dd0132fdd5c.png b/sprites/s_node_color_data/7efde473-a4d0-42c1-b6cc-0dd0132fdd5c.png deleted file mode 100644 index fc1fa5c28..000000000 Binary files a/sprites/s_node_color_data/7efde473-a4d0-42c1-b6cc-0dd0132fdd5c.png and /dev/null differ diff --git a/sprites/s_node_color_data/edb72814-6570-49fc-9a67-091a2197522b.png b/sprites/s_node_color_data/edb72814-6570-49fc-9a67-091a2197522b.png new file mode 100644 index 000000000..a58fd6ad3 Binary files /dev/null and b/sprites/s_node_color_data/edb72814-6570-49fc-9a67-091a2197522b.png differ diff --git a/sprites/s_node_color_data/layers/7efde473-a4d0-42c1-b6cc-0dd0132fdd5c/71fe648f-342f-4c98-92b2-91d8fcd8017a.png b/sprites/s_node_color_data/layers/7efde473-a4d0-42c1-b6cc-0dd0132fdd5c/71fe648f-342f-4c98-92b2-91d8fcd8017a.png deleted file mode 100644 index e9db0cc24..000000000 Binary files a/sprites/s_node_color_data/layers/7efde473-a4d0-42c1-b6cc-0dd0132fdd5c/71fe648f-342f-4c98-92b2-91d8fcd8017a.png and /dev/null differ diff --git a/sprites/s_node_color_data/layers/edb72814-6570-49fc-9a67-091a2197522b/5ff31ec4-20e3-4ea9-a8d3-e832e052f71e.png b/sprites/s_node_color_data/layers/edb72814-6570-49fc-9a67-091a2197522b/5ff31ec4-20e3-4ea9-a8d3-e832e052f71e.png new file mode 100644 index 000000000..a58fd6ad3 Binary files /dev/null and b/sprites/s_node_color_data/layers/edb72814-6570-49fc-9a67-091a2197522b/5ff31ec4-20e3-4ea9-a8d3-e832e052f71e.png differ diff --git a/sprites/s_node_color_data/s_node_color_data.yy b/sprites/s_node_color_data/s_node_color_data.yy index c5c095233..fe20c64a5 100644 --- a/sprites/s_node_color_data/s_node_color_data.yy +++ b/sprites/s_node_color_data/s_node_color_data.yy @@ -2,24 +2,24 @@ "$GMSprite":"", "%Name":"s_node_color_data", "bboxMode":0, - "bbox_bottom":63, - "bbox_left":0, - "bbox_right":63, - "bbox_top":0, + "bbox_bottom":56, + "bbox_left":4, + "bbox_right":58, + "bbox_top":7, "collisionKind":1, "collisionTolerance":0, "DynamicTexturePage":false, "edgeFiltering":false, "For3D":false, "frames":[ - {"$GMSpriteFrame":"","%Name":"7efde473-a4d0-42c1-b6cc-0dd0132fdd5c","name":"7efde473-a4d0-42c1-b6cc-0dd0132fdd5c","resourceType":"GMSpriteFrame","resourceVersion":"2.0",}, + {"$GMSpriteFrame":"","%Name":"edb72814-6570-49fc-9a67-091a2197522b","name":"edb72814-6570-49fc-9a67-091a2197522b","resourceType":"GMSpriteFrame","resourceVersion":"2.0",}, ], "gridX":0, "gridY":0, "height":64, "HTile":false, "layers":[ - {"$GMImageLayer":"","%Name":"71fe648f-342f-4c98-92b2-91d8fcd8017a","blendMode":0,"displayName":"default","isLocked":false,"name":"71fe648f-342f-4c98-92b2-91d8fcd8017a","opacity":100.0,"resourceType":"GMImageLayer","resourceVersion":"2.0","visible":true,}, + {"$GMImageLayer":"","%Name":"5ff31ec4-20e3-4ea9-a8d3-e832e052f71e","blendMode":0,"displayName":"default","isLocked":false,"name":"5ff31ec4-20e3-4ea9-a8d3-e832e052f71e","opacity":100.0,"resourceType":"GMImageLayer","resourceVersion":"2.0","visible":true,}, ], "name":"s_node_color_data", "nineSlice":null, @@ -69,14 +69,11 @@ "tracks":[ {"$GMSpriteFramesTrack":"","builtinName":0,"events":[],"inheritsTrackColour":true,"interpolation":1,"isCreationTrack":false,"keyframes":{"$KeyframeStore":"","Keyframes":[ {"$Keyframe":"","Channels":{ - "0":{"$SpriteFrameKeyframe":"","Id":{"name":"7efde473-a4d0-42c1-b6cc-0dd0132fdd5c","path":"sprites/s_node_color_data/s_node_color_data.yy",},"resourceType":"SpriteFrameKeyframe","resourceVersion":"2.0",}, - },"Disabled":false,"id":"3ce2a3cd-dc5a-45c1-b6fa-673163aa5a73","IsCreationKey":false,"Key":0.0,"Length":1.0,"resourceType":"Keyframe","resourceVersion":"2.0","Stretch":false,}, + "0":{"$SpriteFrameKeyframe":"","Id":{"name":"edb72814-6570-49fc-9a67-091a2197522b","path":"sprites/s_node_color_data/s_node_color_data.yy",},"resourceType":"SpriteFrameKeyframe","resourceVersion":"2.0",}, + },"Disabled":false,"id":"8bde481d-a695-40af-9547-90e6d5fcfc44","IsCreationKey":false,"Key":0.0,"Length":1.0,"resourceType":"Keyframe","resourceVersion":"2.0","Stretch":false,}, ],"resourceType":"KeyframeStore","resourceVersion":"2.0",},"modifiers":[],"name":"frames","resourceType":"GMSpriteFramesTrack","resourceVersion":"2.0","spriteId":null,"trackColour":0,"tracks":[],"traits":0,}, ], - "visibleRange":{ - "x":0.0, - "y":0.0, - }, + "visibleRange":null, "volume":1.0, "xorigin":32, "yorigin":32, diff --git a/sprites/s_node_color_to_hsv/a1b3ae97-4a82-4471-9bab-f13df9d9b4d1.png b/sprites/s_node_color_to_hsv/a1b3ae97-4a82-4471-9bab-f13df9d9b4d1.png new file mode 100644 index 000000000..0aefd2714 Binary files /dev/null and b/sprites/s_node_color_to_hsv/a1b3ae97-4a82-4471-9bab-f13df9d9b4d1.png differ diff --git a/sprites/s_node_color_to_hsv/layers/a1b3ae97-4a82-4471-9bab-f13df9d9b4d1/7d0dbc9e-8e39-4cf6-b808-26d273c10cd0.png b/sprites/s_node_color_to_hsv/layers/a1b3ae97-4a82-4471-9bab-f13df9d9b4d1/7d0dbc9e-8e39-4cf6-b808-26d273c10cd0.png new file mode 100644 index 000000000..0aefd2714 Binary files /dev/null and b/sprites/s_node_color_to_hsv/layers/a1b3ae97-4a82-4471-9bab-f13df9d9b4d1/7d0dbc9e-8e39-4cf6-b808-26d273c10cd0.png differ diff --git a/sprites/s_node_color_to_hsv/s_node_color_to_hsv.yy b/sprites/s_node_color_to_hsv/s_node_color_to_hsv.yy new file mode 100644 index 000000000..99d33ae72 --- /dev/null +++ b/sprites/s_node_color_to_hsv/s_node_color_to_hsv.yy @@ -0,0 +1,90 @@ +{ + "$GMSprite":"", + "%Name":"s_node_color_to_hsv", + "bboxMode":0, + "bbox_bottom":63, + "bbox_left":2, + "bbox_right":61, + "bbox_top":0, + "collisionKind":1, + "collisionTolerance":0, + "DynamicTexturePage":false, + "edgeFiltering":false, + "For3D":false, + "frames":[ + {"$GMSpriteFrame":"","%Name":"a1b3ae97-4a82-4471-9bab-f13df9d9b4d1","name":"a1b3ae97-4a82-4471-9bab-f13df9d9b4d1","resourceType":"GMSpriteFrame","resourceVersion":"2.0",}, + ], + "gridX":0, + "gridY":0, + "height":64, + "HTile":false, + "layers":[ + {"$GMImageLayer":"","%Name":"7d0dbc9e-8e39-4cf6-b808-26d273c10cd0","blendMode":0,"displayName":"default","isLocked":false,"name":"7d0dbc9e-8e39-4cf6-b808-26d273c10cd0","opacity":100.0,"resourceType":"GMImageLayer","resourceVersion":"2.0","visible":true,}, + ], + "name":"s_node_color_to_hsv", + "nineSlice":null, + "origin":4, + "parent":{ + "name":"color", + "path":"folders/nodes/icons/value/color.yy", + }, + "preMultiplyAlpha":false, + "resourceType":"GMSprite", + "resourceVersion":"2.0", + "sequence":{ + "$GMSequence":"", + "%Name":"s_node_color_to_hsv", + "autoRecord":true, + "backdropHeight":768, + "backdropImageOpacity":0.5, + "backdropImagePath":"", + "backdropWidth":1366, + "backdropXOffset":0.0, + "backdropYOffset":0.0, + "events":{ + "$KeyframeStore":"", + "Keyframes":[], + "resourceType":"KeyframeStore", + "resourceVersion":"2.0", + }, + "eventStubScript":null, + "eventToFunction":{}, + "length":1.0, + "lockOrigin":false, + "moments":{ + "$KeyframeStore":"", + "Keyframes":[], + "resourceType":"KeyframeStore", + "resourceVersion":"2.0", + }, + "name":"s_node_color_to_hsv", + "playback":1, + "playbackSpeed":30.0, + "playbackSpeedType":0, + "resourceType":"GMSequence", + "resourceVersion":"2.0", + "showBackdrop":true, + "showBackdropImage":false, + "timeUnits":1, + "tracks":[ + {"$GMSpriteFramesTrack":"","builtinName":0,"events":[],"inheritsTrackColour":true,"interpolation":1,"isCreationTrack":false,"keyframes":{"$KeyframeStore":"","Keyframes":[ + {"$Keyframe":"","Channels":{ + "0":{"$SpriteFrameKeyframe":"","Id":{"name":"a1b3ae97-4a82-4471-9bab-f13df9d9b4d1","path":"sprites/s_node_color_to_hsv/s_node_color_to_hsv.yy",},"resourceType":"SpriteFrameKeyframe","resourceVersion":"2.0",}, + },"Disabled":false,"id":"1fa15aa0-586a-43a9-94da-f2197cce443f","IsCreationKey":false,"Key":0.0,"Length":1.0,"resourceType":"Keyframe","resourceVersion":"2.0","Stretch":false,}, + ],"resourceType":"KeyframeStore","resourceVersion":"2.0",},"modifiers":[],"name":"frames","resourceType":"GMSpriteFramesTrack","resourceVersion":"2.0","spriteId":null,"trackColour":0,"tracks":[],"traits":0,}, + ], + "visibleRange":null, + "volume":1.0, + "xorigin":32, + "yorigin":32, + }, + "swatchColours":null, + "swfPrecision":0.5, + "textureGroupId":{ + "name":"Default", + "path":"texturegroups/Default", + }, + "type":0, + "VTile":false, + "width":64, +} \ No newline at end of file diff --git a/sprites/s_node_color_to_oklch/f56336e1-289b-4975-a00c-94bcec708037.png b/sprites/s_node_color_to_oklch/f56336e1-289b-4975-a00c-94bcec708037.png new file mode 100644 index 000000000..4ead82ba6 Binary files /dev/null and b/sprites/s_node_color_to_oklch/f56336e1-289b-4975-a00c-94bcec708037.png differ diff --git a/sprites/s_node_color_to_oklch/layers/f56336e1-289b-4975-a00c-94bcec708037/0440a95a-77c0-4bbd-a411-6325ab6d9ab6.png b/sprites/s_node_color_to_oklch/layers/f56336e1-289b-4975-a00c-94bcec708037/0440a95a-77c0-4bbd-a411-6325ab6d9ab6.png new file mode 100644 index 000000000..4ead82ba6 Binary files /dev/null and b/sprites/s_node_color_to_oklch/layers/f56336e1-289b-4975-a00c-94bcec708037/0440a95a-77c0-4bbd-a411-6325ab6d9ab6.png differ diff --git a/sprites/s_node_color_to_oklch/s_node_color_to_oklch.yy b/sprites/s_node_color_to_oklch/s_node_color_to_oklch.yy new file mode 100644 index 000000000..67560ac6d --- /dev/null +++ b/sprites/s_node_color_to_oklch/s_node_color_to_oklch.yy @@ -0,0 +1,90 @@ +{ + "$GMSprite":"", + "%Name":"s_node_color_to_oklch", + "bboxMode":0, + "bbox_bottom":60, + "bbox_left":1, + "bbox_right":63, + "bbox_top":0, + "collisionKind":1, + "collisionTolerance":0, + "DynamicTexturePage":false, + "edgeFiltering":false, + "For3D":false, + "frames":[ + {"$GMSpriteFrame":"","%Name":"f56336e1-289b-4975-a00c-94bcec708037","name":"f56336e1-289b-4975-a00c-94bcec708037","resourceType":"GMSpriteFrame","resourceVersion":"2.0",}, + ], + "gridX":0, + "gridY":0, + "height":64, + "HTile":false, + "layers":[ + {"$GMImageLayer":"","%Name":"0440a95a-77c0-4bbd-a411-6325ab6d9ab6","blendMode":0,"displayName":"default","isLocked":false,"name":"0440a95a-77c0-4bbd-a411-6325ab6d9ab6","opacity":100.0,"resourceType":"GMImageLayer","resourceVersion":"2.0","visible":true,}, + ], + "name":"s_node_color_to_oklch", + "nineSlice":null, + "origin":4, + "parent":{ + "name":"color", + "path":"folders/nodes/icons/value/color.yy", + }, + "preMultiplyAlpha":false, + "resourceType":"GMSprite", + "resourceVersion":"2.0", + "sequence":{ + "$GMSequence":"", + "%Name":"s_node_color_to_oklch", + "autoRecord":true, + "backdropHeight":768, + "backdropImageOpacity":0.5, + "backdropImagePath":"", + "backdropWidth":1366, + "backdropXOffset":0.0, + "backdropYOffset":0.0, + "events":{ + "$KeyframeStore":"", + "Keyframes":[], + "resourceType":"KeyframeStore", + "resourceVersion":"2.0", + }, + "eventStubScript":null, + "eventToFunction":{}, + "length":1.0, + "lockOrigin":false, + "moments":{ + "$KeyframeStore":"", + "Keyframes":[], + "resourceType":"KeyframeStore", + "resourceVersion":"2.0", + }, + "name":"s_node_color_to_oklch", + "playback":1, + "playbackSpeed":30.0, + "playbackSpeedType":0, + "resourceType":"GMSequence", + "resourceVersion":"2.0", + "showBackdrop":true, + "showBackdropImage":false, + "timeUnits":1, + "tracks":[ + {"$GMSpriteFramesTrack":"","builtinName":0,"events":[],"inheritsTrackColour":true,"interpolation":1,"isCreationTrack":false,"keyframes":{"$KeyframeStore":"","Keyframes":[ + {"$Keyframe":"","Channels":{ + "0":{"$SpriteFrameKeyframe":"","Id":{"name":"f56336e1-289b-4975-a00c-94bcec708037","path":"sprites/s_node_color_to_oklch/s_node_color_to_oklch.yy",},"resourceType":"SpriteFrameKeyframe","resourceVersion":"2.0",}, + },"Disabled":false,"id":"8331a440-87c2-415c-9b9e-97da32a0d6ec","IsCreationKey":false,"Key":0.0,"Length":1.0,"resourceType":"Keyframe","resourceVersion":"2.0","Stretch":false,}, + ],"resourceType":"KeyframeStore","resourceVersion":"2.0",},"modifiers":[],"name":"frames","resourceType":"GMSpriteFramesTrack","resourceVersion":"2.0","spriteId":null,"trackColour":0,"tracks":[],"traits":0,}, + ], + "visibleRange":null, + "volume":1.0, + "xorigin":32, + "yorigin":32, + }, + "swatchColours":null, + "swfPrecision":0.5, + "textureGroupId":{ + "name":"Default", + "path":"texturegroups/Default", + }, + "type":0, + "VTile":false, + "width":64, +} \ No newline at end of file diff --git a/sprites/s_node_color_to_rgb/706bbe5e-be3b-4a4b-b1f6-cf7958361068.png b/sprites/s_node_color_to_rgb/706bbe5e-be3b-4a4b-b1f6-cf7958361068.png new file mode 100644 index 000000000..b7ff4a963 Binary files /dev/null and b/sprites/s_node_color_to_rgb/706bbe5e-be3b-4a4b-b1f6-cf7958361068.png differ diff --git a/sprites/s_node_color_to_rgb/layers/706bbe5e-be3b-4a4b-b1f6-cf7958361068/1e80833a-2bb9-44f5-8c89-4b2a0c96b965.png b/sprites/s_node_color_to_rgb/layers/706bbe5e-be3b-4a4b-b1f6-cf7958361068/1e80833a-2bb9-44f5-8c89-4b2a0c96b965.png new file mode 100644 index 000000000..b7ff4a963 Binary files /dev/null and b/sprites/s_node_color_to_rgb/layers/706bbe5e-be3b-4a4b-b1f6-cf7958361068/1e80833a-2bb9-44f5-8c89-4b2a0c96b965.png differ diff --git a/sprites/s_node_color_to_rgb/s_node_color_to_rgb.yy b/sprites/s_node_color_to_rgb/s_node_color_to_rgb.yy new file mode 100644 index 000000000..9bfb184b3 --- /dev/null +++ b/sprites/s_node_color_to_rgb/s_node_color_to_rgb.yy @@ -0,0 +1,90 @@ +{ + "$GMSprite":"", + "%Name":"s_node_color_to_rgb", + "bboxMode":0, + "bbox_bottom":63, + "bbox_left":2, + "bbox_right":61, + "bbox_top":0, + "collisionKind":1, + "collisionTolerance":0, + "DynamicTexturePage":false, + "edgeFiltering":false, + "For3D":false, + "frames":[ + {"$GMSpriteFrame":"","%Name":"706bbe5e-be3b-4a4b-b1f6-cf7958361068","name":"706bbe5e-be3b-4a4b-b1f6-cf7958361068","resourceType":"GMSpriteFrame","resourceVersion":"2.0",}, + ], + "gridX":0, + "gridY":0, + "height":64, + "HTile":false, + "layers":[ + {"$GMImageLayer":"","%Name":"1e80833a-2bb9-44f5-8c89-4b2a0c96b965","blendMode":0,"displayName":"default","isLocked":false,"name":"1e80833a-2bb9-44f5-8c89-4b2a0c96b965","opacity":100.0,"resourceType":"GMImageLayer","resourceVersion":"2.0","visible":true,}, + ], + "name":"s_node_color_to_rgb", + "nineSlice":null, + "origin":4, + "parent":{ + "name":"color", + "path":"folders/nodes/icons/value/color.yy", + }, + "preMultiplyAlpha":false, + "resourceType":"GMSprite", + "resourceVersion":"2.0", + "sequence":{ + "$GMSequence":"", + "%Name":"s_node_color_to_rgb", + "autoRecord":true, + "backdropHeight":768, + "backdropImageOpacity":0.5, + "backdropImagePath":"", + "backdropWidth":1366, + "backdropXOffset":0.0, + "backdropYOffset":0.0, + "events":{ + "$KeyframeStore":"", + "Keyframes":[], + "resourceType":"KeyframeStore", + "resourceVersion":"2.0", + }, + "eventStubScript":null, + "eventToFunction":{}, + "length":1.0, + "lockOrigin":false, + "moments":{ + "$KeyframeStore":"", + "Keyframes":[], + "resourceType":"KeyframeStore", + "resourceVersion":"2.0", + }, + "name":"s_node_color_to_rgb", + "playback":1, + "playbackSpeed":30.0, + "playbackSpeedType":0, + "resourceType":"GMSequence", + "resourceVersion":"2.0", + "showBackdrop":true, + "showBackdropImage":false, + "timeUnits":1, + "tracks":[ + {"$GMSpriteFramesTrack":"","builtinName":0,"events":[],"inheritsTrackColour":true,"interpolation":1,"isCreationTrack":false,"keyframes":{"$KeyframeStore":"","Keyframes":[ + {"$Keyframe":"","Channels":{ + "0":{"$SpriteFrameKeyframe":"","Id":{"name":"706bbe5e-be3b-4a4b-b1f6-cf7958361068","path":"sprites/s_node_color_to_rgb/s_node_color_to_rgb.yy",},"resourceType":"SpriteFrameKeyframe","resourceVersion":"2.0",}, + },"Disabled":false,"id":"2db4004d-e8e1-40b2-b302-2c620797a653","IsCreationKey":false,"Key":0.0,"Length":1.0,"resourceType":"Keyframe","resourceVersion":"2.0","Stretch":false,}, + ],"resourceType":"KeyframeStore","resourceVersion":"2.0",},"modifiers":[],"name":"frames","resourceType":"GMSpriteFramesTrack","resourceVersion":"2.0","spriteId":null,"trackColour":0,"tracks":[],"traits":0,}, + ], + "visibleRange":null, + "volume":1.0, + "xorigin":32, + "yorigin":32, + }, + "swatchColours":null, + "swfPrecision":0.5, + "textureGroupId":{ + "name":"Default", + "path":"texturegroups/Default", + }, + "type":0, + "VTile":false, + "width":64, +} \ No newline at end of file