Turns out that doing true palette swapping in Unity is going to be a little bit difficult, so I came up with the next best thing, emulating it. Basically what I plan on doing is having multiple layers that make up each character. I’ve already created a system to sync up multiple GameObject animations to allow me to have separate animations for the body and legs, so all I need to do now is change the artwork to gray and add a Material with a tint to it. On top of this I’ll put a new layer representing the stuff that shouldn’t change color such as the skin and any extra details and then I’ll have more granular control over how to color the player, and other actors, in my game.
Here is how I am testing it out in PhotoShop:
Now I just need to implement this in Unity!