Retro Palette Swapper is a bit more than just a shader; it is an entire system for drawing sprites, surfaces, tiles, and backgrounds with a manipulated palette.
Have you ever created a character in your game and wished you could change the character's hair or clothing color without uploading a complete new set of sprites for every single one of that character's animations? What about making a sprite appear on fire in a much more vibrant way than just putting a red or orange image_blend on it? Maybe you've got a black outline around your sprite and want to make it red when the player mouses over it?
All of this and much more is possible with Retro Palette Swapper!
BEFORE BUYING RUN THE DEMO!!
HTML5 Demo: https://v6p9d9t4.ssl.hwcdn.net/html/1056564/index.html
All Platforms Supported (As far as I know. Desktop, Mobile, and HTML5) HTML5 is currently not FULLY supported due to bugs within GMS2, so it might magically work perfectly after a future update*
This shader will make your project require a video card that supports Shader Model 3.0. So make sure the demo functions before purchasing.
Additionally, your graphics need to be "retro"... or at the very least you should NOT be using the "interpolate colors between pixels" graphical option.
Tool Download: https://www.dropbox.com/s/5kol17hsl4tm9dd/PaletteGenerator3.exe?dl=0
Additional Setup for HTML5: Using this on HTML5 is a bit more challenging than on desktop or mobile. You need to do a few steps.
*When you initialize the system, you need to pass the init script your two HTML5 shaders: one for sprites and one for surfaces (these are included).
*You need to go into the sprite shader and set your texture page size that you use for your project.
*You need to go into the surface texture and set your size to the size your dynamic palettes are being built at. By default, it's set to 64x64, which means when you want to create a custom palette using shaders, instead of making the surface the exact size you need, you need to create the surface at 64x64. Again, this number can be changed, if desired.
*You may notice an error right when you run your game about some for loop or whatever. That can be safely ignored, and when you release your final HTML5 build, just remove the default shd_pal_swapper and the error will no longer appear. Hopefully GMS2 will give us target based resource configurations in the future. *There are a few missing features (gradual palette changes, layer swapping), but these seem to be related to a bug in GMS2, so it might all start working magically after a future update. Fingers crossed.
Version 1.0.1. Published April 6, 2015
Created with GameMaker: Studio v1.4.1567
You can only review assets you've bought.
Stepping on a gold mine
I am usually very skeptical about buying some assets because I never know if it will match my programming skills. Turns out this time, it guides me through every step and is all the way as clear as rock water. Nice job, even the fps test passes the stress with flying colors.
Works like a charm, please take my money.
Nothing short of amazing. Thank you, everyone, who made this happened.
Works exactly how I want it to
I bought this not knowing if I could combine multiple palettes, which I needed since I have character sprites split in to different colorable pieces of clothing. With the swapper's support for using surfaces in place of sprites it's like 3 lines of code for me to add a new palette, which is awesome.
Before this, I had to create separate sets of sprites for each character recolor... used to take me a few hours per sprite set. Now, I can get a new palette up and running within minutes! Best time saver I've ever seen, and easily worth the price!
This well crafted system works perfectly and is easy to get working in your project. Could not be happier.
I really like it, you save so much time using this shader. It's easy to use and the tool for creating the basic palette works like a charm. Also, it work perfect with the new GM2.
Are there a possibility to export the PaletteGenerator for MAC? Thanks (For Mac's users of GM2)
Unfortunately I don't have a mac so I can't build for mac. Maybe I could get a friend to export it for me. Thanks for the support and the review!
This saves so much time and hassle!
If you're doing a game with pixel art you need this. It's so easy and quick to fiddle colours once you've got things sorted. It opens up so many ideas for things to try. I'm so glad I found this when I did. This should be a staff favourite.
Looking foward learning to use this shader. Looks awesome, so many possibilities!
Works exactly as expected
It requires a little modification to get it going with GM2, but it's an excellent option that works flawlessly. Not nearly enough praise can be heaped on this, it's a must have if you are dealing with pixel art.
Thanks for the review, Devon! I've updated the package with a GMS2 specific version that should work right out of the box. Give it a shot and let me know if you run into any other issues.
Seemed to good to be true...
Turns out if wasn't! It does exactly as advertised and after some simple setup you've got it working. The custom-made tool created for making palettes makes things even easier, so kudos to the publisher for putting such effort in.
Just what I've wanted for so long
Finnaly I can do palette swapping in Game Maker! It took just three lines of code to try it in my project.
Very useful for customization and effects!
Hey, this was very easy to implement in my game (took less than 5 minutes), and is very helpful as I am creating a fairly complex character customization system. So far, it works like a charm. I'm looking forward to finding out if it will work with many objects on the screen at once, so that I can palette swap the enemies as well. I'm excited to try it out.
When publishing a game made with this shader, are there any additional system requirements the user should be made aware of before purchase, other than needing a graphics card capable of processing Shader Model 3.0?
Thanks for the product!
Besides Shader Model 3.0 I'm not aware of any additional requirements. The impact on performance should be very, very minimal, regardless of how many characters you have on screen that are palette swapping.
You can check out my Zelda fan-game video on youtube: https://youtu.be/WoBUqrAU284?t=9m6s
At 9:06 I enter a room that has over 20 enemies and link all palette swapping. The blobbies even have a 52 color palette (they very very gradually move through the entire rainbow). And the system has been vastly improved since I took that video.
Thanks for the review and the support! Good luck with your project, and let me know if you have any issues.
Great extension and a super useful tool as well!
The linked palette creation tool and video explains the set-up really well; once you've done that and had a look at the example code it's incredibly simple to swap palettes to your heart's content. Should be part of every GM:S pixel artist's toolkit.
Liked it at first sight!
You need to setup a little bit more but you've got so much control! I have tons of ideas and will try to implement it as soon as possible.
This review was left for a previous version of this asset.
Yeah. The setup can be a bit intimidating. I'm working on a companion app that will be released for free to help those who aren't familiar with graphic applications to create, modify, and export their palette sprite. Should be much easier than the method described in the tutorial video.
Thanks for the support and review! Let me know if you run into any issues.