Palette Swapping Performance

I need to create a small collection of palette swapped characters that are animated using a sprite sheet. I can find lots of suggestions on how to do this, but I am struggling to find anything that discusses what is the correct way to do it. I mainly care about run time performance, and there is no need for the characters to change colors at runtime. I am also working with a small enough set of palette swaps that just having a different sprite sheet for each is a valid option.

What would make the most sense to me is to set up a palette swap with a shader and then have unity pre-process all of the options I am using at compile time, but I don’t think that is an option that actually exists.

So I am really just looking for other people’s opinions on what the best method of doing a palette swap is.

There is no “correct way” because it’s not a feature built-in to Unity. :slight_smile:

Choose a shader or write a shader that has the features you deem most applicable to your workflow / desired result.

(the usual approach is to replace specific color values or tint using a shader)