Go wild, just don't ask me how to use it! This isn't officially supported but is included for advanced users. The multi-layered multi-framed source file, to assist you in making your own outfits, hairstyles, and more (requires Aseprite).Detailed instructions explaining animation order and timing.Separated effect/tool sprites for making your own equipment.A big batch of color ramps for making your own compatible outfits.Two simple outfits: a pair of boxers and a bra/panties combo.Two different hairstyles (one male, one female) in 13 color swaps.If that wasn't enough, this package also includes some significant extras: Full alternate of page 1 while holding a 2-hand weapon.Full alternate of page 1 while holding a spear or polearm.Optional files (unsupported after version 2.4).4 sleeping poses (in one direction, to fit in Mana Seed beds).2-frame alternate idle standing (arms crossed, toe-tapping).1-frame alternate idle standing (hand on hip).2-frame drinking at a bar (facing left/right only).2-frame looking left and right while facing down.5-frame climbing (in one direction, up). 5-frame blacksmithing (only 2 directions, left/right).Fishing rod, bobber, water splash, and sample fish sprites included.8-frame fishing (cast, struggle, reel-in, show off).4-frame pulling up crops ( veggies sold separately).4-frame tilling soil, woodcutting, or mining.It currently includes the following animations in 4 directions (up, down, left, right) in 10 different skin tones: all with identical layouts so they can be swapped out at runtime. This is a "paper doll" style layered sprite system that uses separate sheets for clothes, hair, tools, etc. I just wanted to share in case any one else could get any value out of this.This is an animated base for pixel art characters in an RPG, farming sim, or adventure game. There are a few places it could be better, like the currentpalette/15.0 in the draw event should be in the shader, but I figured you can fix that stuff on your own. In your game just change the currentpalette value to something within your palette sprite's bounds and make sure it is a float with. Shader_set_uniform_f(currentcolumn,currentpalette/15.0) ĭraw_sprite_ext(sprite_index, image_index, floor(x), floor(y), image_xscale, image_yscale, image_angle, image_blend, image_alpha) Īnd in the create event i have this palette = shader_get_sampler_index(shd_paletteswap,"palette") Ĭurrentcolumn = shader_get_uniform(shd_paletteswap,"currentcolumn") Texture_set_stage(palette,sprite_get_texture(sPlayerPalette, 0)) I did it this way in the draw event i have shader_set(shd_paletteswap) Just create a sprite with your palettes starting top left and going down and the next palette to the right of the first and so on.įeed the shader the palette and the maximum amount of colors in your palettes Test_color = texture2D( palette,vec2(0.0/maxcolors,x_x/maxcolors)) New_color = texture2D( palette, vec2(currentcolumn,x_x/maxcolors)) Vec4 new_color = texture2D( palette, vec2(0.0/maxcolors,0.0/maxcolors)) Vec4 test_color = texture2D( palette, vec2(0.0/maxcolors,0.0 /maxcolors)) Vec4 base_color = texture2D( gm_BaseTexture, v_vTexcoord) Vec2 newcoords = vec2(currentcolumn, 0.0 ) I figured I would share it here and other people could tear it down and make it better if need be. I'm not really sure if what I got here is any good performance wise or anything like that. There were several great shaders, an awesome looking one by u/pixelatedpope especially, but none of them were simple enough for what I wanted. After searching up all the ways other people have accomplished this I couldn't find a simple solution. I am working on a Megaman clone project to learn Gamemaker and I wanted to work on the palette swapping from the original game.
0 Comments
Leave a Reply. |
AuthorWrite something about yourself. No need to be fancy, just an overview. ArchivesCategories |