From 7de5a3a7be08300f73ef4255faca0ea6881998e5 Mon Sep 17 00:00:00 2001 From: Tanasart Date: Fri, 1 Dec 2023 16:30:48 +0700 Subject: [PATCH] MK Saber --- PixelComposer.resource_order | 8 +- PixelComposer.yyp | 8 +- datafiles/data/Collections.zip | Bin 321711 -> 314262 bytes .../node_mk_grid_balls/node_mk_grid_balls.gml | 10 +- .../node_mk_grid_flip/node_mk_grid_flip.gml | 149 +++++++++++++ .../node_mk_grid_flip/node_mk_grid_flip.yy | 11 + scripts/node_mk_saber/node_mk_saber.gml | 197 ++++++++++++++++++ scripts/node_mk_saber/node_mk_saber.yy | 11 + scripts/node_registry/node_registry.gml | 2 + shaders/sh_mk_flipGrid/sh_mk_flipGrid.fsh | 30 +++ shaders/sh_mk_flipGrid/sh_mk_flipGrid.vsh | 16 ++ shaders/sh_mk_flipGrid/sh_mk_flipGrid.yy | 10 + shaders/sh_mk_saber_glow/sh_mk_saber_glow.fsh | 14 ++ shaders/sh_mk_saber_glow/sh_mk_saber_glow.vsh | 19 ++ shaders/sh_mk_saber_glow/sh_mk_saber_glow.yy | 10 + .../9346723f-9bfe-4d65-a80e-4ce2643a5b3f.png | Bin 0 -> 1444 bytes .../0abbdf26-32ca-4411-999b-57beff9ac021.png | Bin 0 -> 1444 bytes .../s_node_mk_flip_grid.yy | 74 +++++++ .../738a7dcd-3806-4941-ad43-fb97ce09c4e8.png | Bin 0 -> 2048 bytes .../97534089-2439-4d31-a905-7f8ab255ac71.png | Bin 0 -> 2048 bytes sprites/s_node_mk_saber/s_node_mk_saber.yy | 74 +++++++ 21 files changed, 635 insertions(+), 8 deletions(-) create mode 100644 scripts/node_mk_grid_flip/node_mk_grid_flip.gml create mode 100644 scripts/node_mk_grid_flip/node_mk_grid_flip.yy create mode 100644 scripts/node_mk_saber/node_mk_saber.gml create mode 100644 scripts/node_mk_saber/node_mk_saber.yy create mode 100644 shaders/sh_mk_flipGrid/sh_mk_flipGrid.fsh create mode 100644 shaders/sh_mk_flipGrid/sh_mk_flipGrid.vsh create mode 100644 shaders/sh_mk_flipGrid/sh_mk_flipGrid.yy create mode 100644 shaders/sh_mk_saber_glow/sh_mk_saber_glow.fsh create mode 100644 shaders/sh_mk_saber_glow/sh_mk_saber_glow.vsh create mode 100644 shaders/sh_mk_saber_glow/sh_mk_saber_glow.yy create mode 100644 sprites/s_node_mk_flip_grid/9346723f-9bfe-4d65-a80e-4ce2643a5b3f.png create mode 100644 sprites/s_node_mk_flip_grid/layers/9346723f-9bfe-4d65-a80e-4ce2643a5b3f/0abbdf26-32ca-4411-999b-57beff9ac021.png create mode 100644 sprites/s_node_mk_flip_grid/s_node_mk_flip_grid.yy create mode 100644 sprites/s_node_mk_saber/738a7dcd-3806-4941-ad43-fb97ce09c4e8.png create mode 100644 sprites/s_node_mk_saber/layers/738a7dcd-3806-4941-ad43-fb97ce09c4e8/97534089-2439-4d31-a905-7f8ab255ac71.png create mode 100644 sprites/s_node_mk_saber/s_node_mk_saber.yy diff --git a/PixelComposer.resource_order b/PixelComposer.resource_order index a11065e23..49937924b 100644 --- a/PixelComposer.resource_order +++ b/PixelComposer.resource_order @@ -224,6 +224,7 @@ {"name":"mask","order":10,"path":"folders/shader/mask.yy",}, {"name":"misc","order":13,"path":"folders/shader/misc.yy",}, {"name":"find boundary","order":9,"path":"folders/shader/misc/find boundary.yy",}, + {"name":"MK effects","order":22,"path":"folders/shader/MK effects.yy",}, {"name":"morph","order":17,"path":"folders/shader/morph.yy",}, {"name":"pixel builder","order":18,"path":"folders/shader/pixel builder.yy",}, {"name":"shape seperator","order":5,"path":"folders/shader/shape seperator.yy",}, @@ -243,7 +244,6 @@ {"name":"button","order":34,"path":"folders/widgets/button.yy",}, {"name":"rotator","order":35,"path":"folders/widgets/rotator.yy",}, {"name":"text","order":36,"path":"folders/widgets/text.yy",}, - {"name":"MK effects","order":22,"path":"folders/shader/MK effects.yy",}, ], "ResourceOrderSettings": [ {"name":"s_node_corner","order":16,"path":"sprites/s_node_corner/s_node_corner.yy",}, @@ -558,6 +558,7 @@ {"name":"s_node_rigidSim_global","order":4,"path":"sprites/s_node_rigidSim_global/s_node_rigidSim_global.yy",}, {"name":"sh_channel_G_grey","order":8,"path":"shaders/sh_channel_G_grey/sh_channel_G_grey.yy",}, {"name":"s_node_smokeSim_update","order":10,"path":"sprites/s_node_smokeSim_update/s_node_smokeSim_update.yy",}, + {"name":"s_node_mk_flip_grid","order":2,"path":"sprites/s_node_mk_flip_grid/s_node_mk_flip_grid.yy",}, {"name":"node_3d_depth","order":15,"path":"scripts/node_3d_depth/node_3d_depth.yy",}, {"name":"s_node_vec4","order":9,"path":"sprites/s_node_vec4/s_node_vec4.yy",}, {"name":"vct_knob","order":2,"path":"scripts/vct_knob/vct_knob.yy",}, @@ -879,6 +880,7 @@ {"name":"s_node_vfx_trail","order":13,"path":"sprites/s_node_vfx_trail/s_node_vfx_trail.yy",}, {"name":"s_node_base_conversion","order":10,"path":"sprites/s_node_base_conversion/s_node_base_conversion.yy",}, {"name":"node_transform_array","order":15,"path":"scripts/node_transform_array/node_transform_array.yy",}, + {"name":"sh_mk_saber_glow","order":2,"path":"shaders/sh_mk_saber_glow/sh_mk_saber_glow.yy",}, {"name":"s_node_loop_array","order":23,"path":"sprites/s_node_loop_array/s_node_loop_array.yy",}, {"name":"node_pb_fx_stack","order":8,"path":"scripts/node_pb_fx_stack/node_pb_fx_stack.yy",}, {"name":"s_node_iterator_amount","order":26,"path":"sprites/s_node_iterator_amount/s_node_iterator_amount.yy",}, @@ -1194,6 +1196,7 @@ {"name":"s_node_crop_content","order":13,"path":"sprites/s_node_crop_content/s_node_crop_content.yy",}, {"name":"draw_line_zigzag","order":20,"path":"scripts/draw_line_zigzag/draw_line_zigzag.yy",}, {"name":"sh_alpha_grey","order":1,"path":"shaders/sh_alpha_grey/sh_alpha_grey.yy",}, + {"name":"sh_mk_flipGrid","order":1,"path":"shaders/sh_mk_flipGrid/sh_mk_flipGrid.yy",}, {"name":"sh_channel_R2B","order":12,"path":"shaders/sh_channel_R2B/sh_channel_R2B.yy",}, {"name":"s_node_voronoi_extra","order":36,"path":"sprites/s_node_voronoi_extra/s_node_voronoi_extra.yy",}, {"name":"s_node_smokeSim_domain","order":11,"path":"sprites/s_node_smokeSim_domain/s_node_smokeSim_domain.yy",}, @@ -1239,6 +1242,7 @@ {"name":"node_convolution","order":5,"path":"scripts/node_convolution/node_convolution.yy",}, {"name":"node_pb_draw_ellipse","order":2,"path":"scripts/node_pb_draw_ellipse/node_pb_draw_ellipse.yy",}, {"name":"sh_outline_only","order":35,"path":"shaders/sh_outline_only/sh_outline_only.yy",}, + {"name":"node_mk_saber","order":3,"path":"scripts/node_mk_saber/node_mk_saber.yy",}, {"name":"lcd_function","order":13,"path":"scripts/lcd_function/lcd_function.yy",}, {"name":"d3d_gizmo_line","order":1,"path":"scripts/d3d_gizmo_line/d3d_gizmo_line.yy",}, {"name":"s_node_destray","order":18,"path":"sprites/s_node_destray/s_node_destray.yy",}, @@ -1400,6 +1404,7 @@ {"name":"s_node_separate_file_path","order":14,"path":"sprites/s_node_separate_file_path/s_node_separate_file_path.yy",}, {"name":"node_scale_algo","order":12,"path":"scripts/node_scale_algo/node_scale_algo.yy",}, {"name":"s_node_image_replace","order":55,"path":"sprites/s_node_image_replace/s_node_image_replace.yy",}, + {"name":"s_node_mk_saber","order":3,"path":"sprites/s_node_mk_saber/s_node_mk_saber.yy",}, {"name":"node_alpha_hash","order":11,"path":"scripts/node_alpha_hash/node_alpha_hash.yy",}, {"name":"sh_mask_modify","order":2,"path":"shaders/sh_mask_modify/sh_mask_modify.yy",}, {"name":"toggleGroup","order":31,"path":"scripts/toggleGroup/toggleGroup.yy",}, @@ -1720,6 +1725,7 @@ {"name":"s_node_json_file_write","order":10,"path":"sprites/s_node_json_file_write/s_node_json_file_write.yy",}, {"name":"node_pb_fx_intersect","order":5,"path":"scripts/node_pb_fx_intersect/node_pb_fx_intersect.yy",}, {"name":"fd_rectangle_get_material_time_step","order":13,"path":"scripts/fd_rectangle_get_material_time_step/fd_rectangle_get_material_time_step.yy",}, + {"name":"node_mk_grid_flip","order":2,"path":"scripts/node_mk_grid_flip/node_mk_grid_flip.yy",}, {"name":"node_pack_sprites","order":4,"path":"scripts/node_pack_sprites/node_pack_sprites.yy",}, {"name":"font_data","order":10,"path":"scripts/font_data/font_data.yy",}, {"name":"node_camera","order":3,"path":"scripts/node_camera/node_camera.yy",}, diff --git a/PixelComposer.yyp b/PixelComposer.yyp index bb2f652a8..7abf25b90 100644 --- a/PixelComposer.yyp +++ b/PixelComposer.yyp @@ -256,6 +256,7 @@ {"resourceType":"GMFolder","resourceVersion":"1.0","name":"mask","folderPath":"folders/shader/mask.yy",}, {"resourceType":"GMFolder","resourceVersion":"1.0","name":"misc","folderPath":"folders/shader/misc.yy",}, {"resourceType":"GMFolder","resourceVersion":"1.0","name":"find boundary","folderPath":"folders/shader/misc/find boundary.yy",}, + {"resourceType":"GMFolder","resourceVersion":"1.0","name":"MK effects","folderPath":"folders/shader/MK effects.yy",}, {"resourceType":"GMFolder","resourceVersion":"1.0","name":"morph","folderPath":"folders/shader/morph.yy",}, {"resourceType":"GMFolder","resourceVersion":"1.0","name":"pixel builder","folderPath":"folders/shader/pixel builder.yy",}, {"resourceType":"GMFolder","resourceVersion":"1.0","name":"shape seperator","folderPath":"folders/shader/shape seperator.yy",}, @@ -278,7 +279,6 @@ {"resourceType":"GMFolder","resourceVersion":"1.0","name":"button","folderPath":"folders/widgets/button.yy",}, {"resourceType":"GMFolder","resourceVersion":"1.0","name":"rotator","folderPath":"folders/widgets/rotator.yy",}, {"resourceType":"GMFolder","resourceVersion":"1.0","name":"text","folderPath":"folders/widgets/text.yy",}, - {"resourceType":"GMFolder","resourceVersion":"1.0","name":"MK effects","folderPath":"folders/shader/MK effects.yy",}, ], "IncludedFiles": [ {"resourceType":"GMIncludedFile","resourceVersion":"1.0","name":"ApolloHelp.html","ConfigValues":{"Itch":{"CopyToMask":"0",},},"CopyToMask":-1,"filePath":"datafiles",}, @@ -1163,6 +1163,7 @@ {"id":{"name":"s_node_rigidSim_global","path":"sprites/s_node_rigidSim_global/s_node_rigidSim_global.yy",},}, {"id":{"name":"sh_channel_G_grey","path":"shaders/sh_channel_G_grey/sh_channel_G_grey.yy",},}, {"id":{"name":"s_node_smokeSim_update","path":"sprites/s_node_smokeSim_update/s_node_smokeSim_update.yy",},}, + {"id":{"name":"s_node_mk_flip_grid","path":"sprites/s_node_mk_flip_grid/s_node_mk_flip_grid.yy",},}, {"id":{"name":"node_3d_depth","path":"scripts/node_3d_depth/node_3d_depth.yy",},}, {"id":{"name":"s_node_vec4","path":"sprites/s_node_vec4/s_node_vec4.yy",},}, {"id":{"name":"vct_knob","path":"scripts/vct_knob/vct_knob.yy",},}, @@ -1539,6 +1540,7 @@ {"id":{"name":"assets_data","path":"scripts/assets_data/assets_data.yy",},}, {"id":{"name":"s_node_base_conversion","path":"sprites/s_node_base_conversion/s_node_base_conversion.yy",},}, {"id":{"name":"node_transform_array","path":"scripts/node_transform_array/node_transform_array.yy",},}, + {"id":{"name":"sh_mk_saber_glow","path":"shaders/sh_mk_saber_glow/sh_mk_saber_glow.yy",},}, {"id":{"name":"s_node_loop_array","path":"sprites/s_node_loop_array/s_node_loop_array.yy",},}, {"id":{"name":"node_pb_fx_stack","path":"scripts/node_pb_fx_stack/node_pb_fx_stack.yy",},}, {"id":{"name":"s_node_iterator_amount","path":"sprites/s_node_iterator_amount/s_node_iterator_amount.yy",},}, @@ -1889,6 +1891,7 @@ {"id":{"name":"s_node_crop_content","path":"sprites/s_node_crop_content/s_node_crop_content.yy",},}, {"id":{"name":"draw_line_zigzag","path":"scripts/draw_line_zigzag/draw_line_zigzag.yy",},}, {"id":{"name":"sh_alpha_grey","path":"shaders/sh_alpha_grey/sh_alpha_grey.yy",},}, + {"id":{"name":"sh_mk_flipGrid","path":"shaders/sh_mk_flipGrid/sh_mk_flipGrid.yy",},}, {"id":{"name":"sh_channel_R2B","path":"shaders/sh_channel_R2B/sh_channel_R2B.yy",},}, {"id":{"name":"s_node_voronoi_extra","path":"sprites/s_node_voronoi_extra/s_node_voronoi_extra.yy",},}, {"id":{"name":"s_node_smokeSim_domain","path":"sprites/s_node_smokeSim_domain/s_node_smokeSim_domain.yy",},}, @@ -1941,6 +1944,7 @@ {"id":{"name":"node_pb_draw_ellipse","path":"scripts/node_pb_draw_ellipse/node_pb_draw_ellipse.yy",},}, {"id":{"name":"sh_blink_extract","path":"shaders/sh_blink_extract/sh_blink_extract.yy",},}, {"id":{"name":"sh_outline_only","path":"shaders/sh_outline_only/sh_outline_only.yy",},}, + {"id":{"name":"node_mk_saber","path":"scripts/node_mk_saber/node_mk_saber.yy",},}, {"id":{"name":"lcd_function","path":"scripts/lcd_function/lcd_function.yy",},}, {"id":{"name":"d3d_gizmo_line","path":"scripts/d3d_gizmo_line/d3d_gizmo_line.yy",},}, {"id":{"name":"s_node_destray","path":"sprites/s_node_destray/s_node_destray.yy",},}, @@ -2130,6 +2134,7 @@ {"id":{"name":"s_node_separate_file_path","path":"sprites/s_node_separate_file_path/s_node_separate_file_path.yy",},}, {"id":{"name":"node_scale_algo","path":"scripts/node_scale_algo/node_scale_algo.yy",},}, {"id":{"name":"s_node_image_replace","path":"sprites/s_node_image_replace/s_node_image_replace.yy",},}, + {"id":{"name":"s_node_mk_saber","path":"sprites/s_node_mk_saber/s_node_mk_saber.yy",},}, {"id":{"name":"node_alpha_hash","path":"scripts/node_alpha_hash/node_alpha_hash.yy",},}, {"id":{"name":"node_PCX_condition","path":"scripts/node_PCX_condition/node_PCX_condition.yy",},}, {"id":{"name":"sh_mask_modify","path":"shaders/sh_mask_modify/sh_mask_modify.yy",},}, @@ -2500,6 +2505,7 @@ {"id":{"name":"timer_function","path":"scripts/timer_function/timer_function.yy",},}, {"id":{"name":"fd_rectangle_get_material_time_step","path":"scripts/fd_rectangle_get_material_time_step/fd_rectangle_get_material_time_step.yy",},}, {"id":{"name":"FirebasePathsUserFunctions","path":"scripts/FirebasePathsUserFunctions/FirebasePathsUserFunctions.yy",},}, + {"id":{"name":"node_mk_grid_flip","path":"scripts/node_mk_grid_flip/node_mk_grid_flip.yy",},}, {"id":{"name":"node_pack_sprites","path":"scripts/node_pack_sprites/node_pack_sprites.yy",},}, {"id":{"name":"font_data","path":"scripts/font_data/font_data.yy",},}, {"id":{"name":"animation_curve","path":"scripts/animation_curve/animation_curve.yy",},}, diff --git a/datafiles/data/Collections.zip b/datafiles/data/Collections.zip index b477cc0558c18ad4ea3d7750b1342742481aa55a..7f2fb811d79b7dbf66a5bd41c95a487fcfbb495b 100644 GIT binary patch delta 5885 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 z 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 0 && CURRENT_FRAME > 0 && prev_points != noone) { #region + var _prevArr = prev_points[_array_index]; + var _inds = max(0, array_length(_prevArr) - _trac); + + for( var i = _inds, n = array_length(_prevArr); i < n; i++ ) { + var _prev = _prevArr[i]; + var _curr = i + 1 == n? _cur : _prevArr[i + 1]; + + var _pr1x = _prev[0][0]; + var _pr1y = _prev[0][1]; + var _pr2x = _prev[1][0]; + var _pr2y = _prev[1][1]; + + var _pp1x = _curr[0][0]; + var _pp1y = _curr[0][1]; + var _pp2x = _curr[1][0]; + var _pp2y = _curr[1][1]; + + draw_triangle(_pr1x, _pr1y, _pr2x, _pr2y, _pp1x, _pp1y, false); + draw_triangle(_pr2x, _pr2y, _pp1x, _pp1y, _pp2x, _pp2y, false); + } + } #endregion + + if(_thck == 1) { + draw_set_color(_colr.eval(1)); + draw_line(_p1x, _p1y, _p2x, _p2y); + } else { + for( var i = _thck; i > 0; i -= _grds ) { + draw_set_color(_colr.eval((i - 1) / (_thck - 1))); + draw_line_round(_p1x, _p1y, _p2x, _p2y, i); + } + } + surface_reset_target(); + + if(_gint > 0) { #region + surface_set_target(temp_surface[1]); + draw_clear(c_black); + draw_surface(temp_surface[0], 0, 0); + surface_reset_target(); + + temp_surface[2] = surface_apply_gaussian(temp_surface[1], _grad, false, 0, 1); + } #endregion + + surface_set_target(_outSurf); + DRAW_CLEAR + + if(_gint > 0) { + BLEND_OVERRIDE + shader_set(sh_mk_saber_glow); + shader_set_color("color", _colr.eval(1)); + shader_set_f("intensity", _gint); + draw_surface(temp_surface[2], 0, 0); + shader_reset(); + } + + BLEND_ALPHA_MULP + draw_surface(temp_surface[0], 0, 0); + + BLEND_NORMAL + surface_reset_target(); + + array_push(prev_points[_array_index], _cur); + + return _outSurf; + } +} \ No newline at end of file diff --git a/scripts/node_mk_saber/node_mk_saber.yy b/scripts/node_mk_saber/node_mk_saber.yy new file mode 100644 index 000000000..d7f9cba0b --- /dev/null +++ b/scripts/node_mk_saber/node_mk_saber.yy @@ -0,0 +1,11 @@ +{ + "resourceType": "GMScript", + "resourceVersion": "1.0", + "name": "node_mk_saber", + "isCompatibility": false, + "isDnD": false, + "parent": { + "name": "MK effects", + "path": "folders/nodes/data/MK effects.yy", + }, +} \ No newline at end of file diff --git a/scripts/node_registry/node_registry.gml b/scripts/node_registry/node_registry.gml index dbd82d5ee..cd887956e 100644 --- a/scripts/node_registry/node_registry.gml +++ b/scripts/node_registry/node_registry.gml @@ -616,6 +616,8 @@ function NodeObject(_name, _spr, _node, _create, tags = []) constructor { #regio ds_list_add(generator, "MK Effects"); addNodeObject(generator, "MK Rains", s_node_mk_rain, "Node_MK_Rain", [1, Node_MK_Rain]).setVersion(11600); addNodeObject(generator, "MK GridBalls", s_node_mk_ball_grid, "Node_MK_GridBalls", [1, Node_MK_GridBalls]).setVersion(11600); + addNodeObject(generator, "MK GridFlip", s_node_mk_flip_grid, "Node_MK_GridFlip", [1, Node_MK_GridFlip]).setVersion(11600); + addNodeObject(generator, "MK Saber", s_node_mk_saber, "Node_MK_Saber", [1, Node_MK_Saber]).setVersion(11600); #endregion var compose = ds_list_create(); #region diff --git a/shaders/sh_mk_flipGrid/sh_mk_flipGrid.fsh b/shaders/sh_mk_flipGrid/sh_mk_flipGrid.fsh new file mode 100644 index 000000000..f397656dc --- /dev/null +++ b/shaders/sh_mk_flipGrid/sh_mk_flipGrid.fsh @@ -0,0 +1,30 @@ +varying vec4 v_vColour; +varying vec2 v_vPosition; + +uniform sampler2D texture; +uniform sampler2D textureBack; +uniform vec2 dimension; +uniform vec2 fr_flipPos; +uniform vec2 fr_flipSize; +uniform int hasBack; +uniform int axis; +uniform int flip; + +void main() { + vec2 flSiz = fr_flipSize / dimension; + vec2 flPos = fr_flipPos / dimension; + vec2 pos = v_vPosition; + + if(flip == 1) { + if(axis == 0) pos.y = 1. - pos.y; + if(axis == 1) pos.x = 1. - pos.x; + } + + vec2 coord = flPos + pos * flSiz; + vec4 col; + + if(hasBack == 1 && flip == 1) col = texture2D( textureBack, coord ); + else col = texture2D( texture, coord ); + + gl_FragColor = col; +} \ No newline at end of file diff --git a/shaders/sh_mk_flipGrid/sh_mk_flipGrid.vsh b/shaders/sh_mk_flipGrid/sh_mk_flipGrid.vsh new file mode 100644 index 000000000..60c76f08a --- /dev/null +++ b/shaders/sh_mk_flipGrid/sh_mk_flipGrid.vsh @@ -0,0 +1,16 @@ +attribute vec3 in_Position; // (x,y,z) +attribute vec4 in_Colour; // (r,g,b,a) + +varying vec4 v_vColour; +varying vec2 v_vPosition; + +uniform vec2 flipPos; +uniform vec2 flipSize; + +void main() { + vec4 object_space_pos = vec4( in_Position, 1.0); + gl_Position = gm_Matrices[MATRIX_WORLD_VIEW_PROJECTION] * object_space_pos; + + v_vColour = in_Colour; + v_vPosition = (in_Position.xy - flipPos) / flipSize; +} diff --git a/shaders/sh_mk_flipGrid/sh_mk_flipGrid.yy b/shaders/sh_mk_flipGrid/sh_mk_flipGrid.yy new file mode 100644 index 000000000..29ccc433c --- /dev/null +++ b/shaders/sh_mk_flipGrid/sh_mk_flipGrid.yy @@ -0,0 +1,10 @@ +{ + "resourceType": "GMShader", + "resourceVersion": "1.0", + "name": "sh_mk_flipGrid", + "parent": { + "name": "MK effects", + "path": "folders/shader/MK effects.yy", + }, + "type": 1, +} \ No newline at end of file diff --git a/shaders/sh_mk_saber_glow/sh_mk_saber_glow.fsh b/shaders/sh_mk_saber_glow/sh_mk_saber_glow.fsh new file mode 100644 index 000000000..bdb7c50e0 --- /dev/null +++ b/shaders/sh_mk_saber_glow/sh_mk_saber_glow.fsh @@ -0,0 +1,14 @@ +// +// Simple passthrough fragment shader +// +varying vec2 v_vTexcoord; +varying vec4 v_vColour; + +uniform float intensity; +uniform vec4 color; + +void main() { + vec4 col = texture2D( gm_BaseTexture, v_vTexcoord ); + float lum = (col.x + col.y + col.z) / 3. * col.a; + gl_FragColor = vec4(color.rgb, lum * intensity); +} diff --git a/shaders/sh_mk_saber_glow/sh_mk_saber_glow.vsh b/shaders/sh_mk_saber_glow/sh_mk_saber_glow.vsh new file mode 100644 index 000000000..3900c20f4 --- /dev/null +++ b/shaders/sh_mk_saber_glow/sh_mk_saber_glow.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_mk_saber_glow/sh_mk_saber_glow.yy b/shaders/sh_mk_saber_glow/sh_mk_saber_glow.yy new file mode 100644 index 000000000..de680dd9f --- /dev/null +++ b/shaders/sh_mk_saber_glow/sh_mk_saber_glow.yy @@ -0,0 +1,10 @@ +{ + "resourceType": "GMShader", + "resourceVersion": "1.0", + "name": "sh_mk_saber_glow", + "parent": { + "name": "MK effects", + "path": "folders/shader/MK effects.yy", + }, + "type": 1, +} \ No newline at end of file diff --git a/sprites/s_node_mk_flip_grid/9346723f-9bfe-4d65-a80e-4ce2643a5b3f.png b/sprites/s_node_mk_flip_grid/9346723f-9bfe-4d65-a80e-4ce2643a5b3f.png new file mode 100644 index 0000000000000000000000000000000000000000..775943bb8271e45a22e2953cbd490a10cad09860 GIT binary patch literal 1444 zcmZ{kc{CJy6vuyKUmII^lVymS2s0$ccB~oMciH#MvukYQ#n?wAl`XQTd1eU7T2pvr z=hT!4B|KX~mS`-!>AZ8^Iq#3oJ@bs z8zYjj;U5?R_rchh1AspR03ihcI-^8b1|Sj%z^W$z8ifFegx&A3)?zf+yiJV_!H=I- zP9@z1fTh61P|q&r{TCO@fGG#D?%h!Ux~xa8E~b}rZiq?5_e|r)BMv!mU`Cy zPO!G-c=Y3)}O>u!Co?Qm3f?0J3ZUb9Z56l{SX zdJtee9j1$I|ig=Xj-YcZS2?5+GK60pCUDeeh4)_(}< z2y#8LeWDiBNWdf2m($_<=C_8H)U4&MYZW(ZL1;AFe5TFrZgT@j+q_%(JZC_x2w$%e zan75z7=6AoJAGlhxFrjFg-IYIy#?XJn$0b`k~D~Z3EABdo34EJrtUIpz3`c@inDy3&S3oCffuNJu+Mv)OOgD0 zt(WbC@+famI!ft{@itGqtJ8L8m}lBmrWS4Psiu2E?FW<=6xB#XZy@_THn{}gM;lgHq_Uexeh0E&&+Vbo98Wp4K0-ET7;VIxw`P8>o+~m^awuC zah8{VO)3Jt?pvKJFInK){o6krnaivOCgdDdQ^%97X$68gcRz~m1&Z+A)b~Fq(O;>u zFCe`b{`NG@H@PwXR)|!Oo`!Q&RzL%3g{78EZXWm)B7Ib6Bd0+r_};vQyV5`N2M5t2{unP6N@v9wz0{NAzEryGa1@b>2IMf&GANy-y9hFIC0EquK;IP4d*Kl6J WVZUbDWyszP2ACLG7(UYXO!^0#D1GPv literal 0 HcmV?d00001 diff --git a/sprites/s_node_mk_flip_grid/layers/9346723f-9bfe-4d65-a80e-4ce2643a5b3f/0abbdf26-32ca-4411-999b-57beff9ac021.png b/sprites/s_node_mk_flip_grid/layers/9346723f-9bfe-4d65-a80e-4ce2643a5b3f/0abbdf26-32ca-4411-999b-57beff9ac021.png new file mode 100644 index 0000000000000000000000000000000000000000..775943bb8271e45a22e2953cbd490a10cad09860 GIT binary patch literal 1444 zcmZ{kc{CJy6vuyKUmII^lVymS2s0$ccB~oMciH#MvukYQ#n?wAl`XQTd1eU7T2pvr z=hT!4B|KX~mS`-!>AZ8^Iq#3oJ@bs z8zYjj;U5?R_rchh1AspR03ihcI-^8b1|Sj%z^W$z8ifFegx&A3)?zf+yiJV_!H=I- zP9@z1fTh61P|q&r{TCO@fGG#D?%h!Ux~xa8E~b}rZiq?5_e|r)BMv!mU`Cy zPO!G-c=Y3)}O>u!Co?Qm3f?0J3ZUb9Z56l{SX zdJtee9j1$I|ig=Xj-YcZS2?5+GK60pCUDeeh4)_(}< z2y#8LeWDiBNWdf2m($_<=C_8H)U4&MYZW(ZL1;AFe5TFrZgT@j+q_%(JZC_x2w$%e zan75z7=6AoJAGlhxFrjFg-IYIy#?XJn$0b`k~D~Z3EABdo34EJrtUIpz3`c@inDy3&S3oCffuNJu+Mv)OOgD0 zt(WbC@+famI!ft{@itGqtJ8L8m}lBmrWS4Psiu2E?FW<=6xB#XZy@_THn{}gM;lgHq_Uexeh0E&&+Vbo98Wp4K0-ET7;VIxw`P8>o+~m^awuC zah8{VO)3Jt?pvKJFInK){o6krnaivOCgdDdQ^%97X$68gcRz~m1&Z+A)b~Fq(O;>u zFCe`b{`NG@H@PwXR)|!Oo`!Q&RzL%3g{78EZXWm)B7Ib6Bd0+r_};vQyV5`N2M5t2{unP6N@v9wz0{NAzEryGa1@b>2IMf&GANy-y9hFIC0EquK;IP4d*Kl6J WVZUbDWyszP2ACLG7(UYXO!^0#D1GPv literal 0 HcmV?d00001 diff --git a/sprites/s_node_mk_flip_grid/s_node_mk_flip_grid.yy b/sprites/s_node_mk_flip_grid/s_node_mk_flip_grid.yy new file mode 100644 index 000000000..d719a5b7f --- /dev/null +++ b/sprites/s_node_mk_flip_grid/s_node_mk_flip_grid.yy @@ -0,0 +1,74 @@ +{ + "resourceType": "GMSprite", + "resourceVersion": "1.0", + "name": "s_node_mk_flip_grid", + "bbox_bottom": 63, + "bbox_left": 0, + "bbox_right": 63, + "bbox_top": 0, + "bboxMode": 0, + "collisionKind": 1, + "collisionTolerance": 0, + "DynamicTexturePage": false, + "edgeFiltering": false, + "For3D": false, + "frames": [ + {"resourceType":"GMSpriteFrame","resourceVersion":"1.1","name":"9346723f-9bfe-4d65-a80e-4ce2643a5b3f",}, + ], + "gridX": 0, + "gridY": 0, + "height": 64, + "HTile": false, + "layers": [ + {"resourceType":"GMImageLayer","resourceVersion":"1.0","name":"0abbdf26-32ca-4411-999b-57beff9ac021","blendMode":0,"displayName":"default","isLocked":false,"opacity":100.0,"visible":true,}, + ], + "nineSlice": null, + "origin": 4, + "parent": { + "name": "MK effects", + "path": "folders/nodes/icons/MK effects.yy", + }, + "preMultiplyAlpha": false, + "sequence": { + "resourceType": "GMSequence", + "resourceVersion": "1.4", + "name": "s_node_mk_flip_grid", + "autoRecord": true, + "backdropHeight": 768, + "backdropImageOpacity": 0.5, + "backdropImagePath": "", + "backdropWidth": 1366, + "backdropXOffset": 0.0, + "backdropYOffset": 0.0, + "events": {"resourceType":"KeyframeStore","resourceVersion":"1.0","Keyframes":[],}, + "eventStubScript": null, + "eventToFunction": {}, + "length": 1.0, + "lockOrigin": false, + "moments": {"resourceType":"KeyframeStore","resourceVersion":"1.0","Keyframes":[],}, + "playback": 1, + "playbackSpeed": 30.0, + "playbackSpeedType": 0, + "showBackdrop": true, + "showBackdropImage": false, + "timeUnits": 1, + "tracks": [ + {"resourceType":"GMSpriteFramesTrack","resourceVersion":"1.0","name":"frames","builtinName":0,"events":[],"inheritsTrackColour":true,"interpolation":1,"isCreationTrack":false,"keyframes":{"resourceType":"KeyframeStore","resourceVersion":"1.0","Keyframes":[ + {"resourceType":"Keyframe","resourceVersion":"1.0","Channels":{"0":{"resourceType":"SpriteFrameKeyframe","resourceVersion":"1.0","Id":{"name":"9346723f-9bfe-4d65-a80e-4ce2643a5b3f","path":"sprites/s_node_mk_flip_grid/s_node_mk_flip_grid.yy",},},},"Disabled":false,"id":"47e778b6-b6b8-4972-9d4f-a5ae19e40300","IsCreationKey":false,"Key":0.0,"Length":1.0,"Stretch":false,}, + ],},"modifiers":[],"spriteId":null,"trackColour":0,"tracks":[],"traits":0,}, + ], + "visibleRange": null, + "volume": 1.0, + "xorigin": 32, + "yorigin": 32, + }, + "swatchColours": null, + "swfPrecision": 2.525, + "textureGroupId": { + "name": "Default", + "path": "texturegroups/Default", + }, + "type": 0, + "VTile": false, + "width": 64, +} \ No newline at end of file diff --git a/sprites/s_node_mk_saber/738a7dcd-3806-4941-ad43-fb97ce09c4e8.png b/sprites/s_node_mk_saber/738a7dcd-3806-4941-ad43-fb97ce09c4e8.png new file mode 100644 index 0000000000000000000000000000000000000000..9b7f98c7fd3c9983e2a66a4d41e268ff3b682147 GIT binary patch literal 2048 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","resourceVersion":"1.0","Keyframes":[],}, + "eventStubScript": null, + "eventToFunction": {}, + "length": 1.0, + "lockOrigin": false, + "moments": {"resourceType":"KeyframeStore","resourceVersion":"1.0","Keyframes":[],}, + "playback": 1, + "playbackSpeed": 30.0, + "playbackSpeedType": 0, + "showBackdrop": true, + "showBackdropImage": false, + "timeUnits": 1, + "tracks": [ + {"resourceType":"GMSpriteFramesTrack","resourceVersion":"1.0","name":"frames","builtinName":0,"events":[],"inheritsTrackColour":true,"interpolation":1,"isCreationTrack":false,"keyframes":{"resourceType":"KeyframeStore","resourceVersion":"1.0","Keyframes":[ + {"resourceType":"Keyframe","resourceVersion":"1.0","Channels":{"0":{"resourceType":"SpriteFrameKeyframe","resourceVersion":"1.0","Id":{"name":"738a7dcd-3806-4941-ad43-fb97ce09c4e8","path":"sprites/s_node_mk_saber/s_node_mk_saber.yy",},},},"Disabled":false,"id":"04252012-20e2-42a9-b7a7-6a71b7b9c596","IsCreationKey":false,"Key":0.0,"Length":1.0,"Stretch":false,}, + ],},"modifiers":[],"spriteId":null,"trackColour":0,"tracks":[],"traits":0,}, + ], + "visibleRange": null, + "volume": 1.0, + "xorigin": 32, + "yorigin": 32, + }, + "swatchColours": null, + "swfPrecision": 2.525, + "textureGroupId": { + "name": "Default", + "path": "texturegroups/Default", + }, + "type": 0, + "VTile": false, + "width": 64, +} \ No newline at end of file