Here’s my little buddy.

He likes white but not black. What’s the best way to swap out the black for another color? Custom shader or texture2D?
Texture2D makes it very easy. I don’t know anything about Mip Mapping so lets assume I have unchecked generate Mip Maps in my texture import settings.
// get all the pixels into an array of colors
Color[] originalColors = myTexture.GetPixels();
//find all the black ones and make them blue
for (int i = 0; i < originalColors.Length; i++)
{
if (originalColors *== Color.black)*
{
originalColors = Color.blue;
}
}
//set the colors of the texture to the new colors
myTexture.SetPixels(originalColors);
//very important
myTexture.Apply();
If you do have mip maps the functions mentioned above expect an integer index of the lowest map level I beleive. Something like that.