Как изменять цвет разных частей персонажа?
Я новичок в Unity и C#.
В игре Geometry Dash есть система смены цвета скина. Там можно поменять цвет одной части персонажа, а потом другой части. Я долго искал информацию - не нашёл, пытался сам придумать - не придумал.
На скрине игра Geometry Dash. Снизу две полоски цветов, меняющие цвета определённых частей скина.
Подскажите, пожалуйста, как это можно реализовать в Unity и в скрипте?

Ответы (1 шт):
Как один из вариантов - заливка кислотным цветом в графическом редакторе и последующая замена цвета програмно на необходимый тебе цвет. На основе даного принципа лежит работа с гринскринами в видео. Если нужны тени на обьекте - тень добавляется отдельной текстурой с альфаканалом. Сложно и не факт что рентабельно.
Как второй вариант - хранить текстуры всех необходимых цветов. Приложение будет занимать больше места, но улучшится быстродействие. В этом случае наверняка нужно все делать в одном большом файле(но в таком случае понадобится больше оперативки)
Вариант 3 (лично я за этот вариант) - написание шейдера с возможностью замены с выбранного цвета на другой. Без знаний языка шейдера это можно сделать через шейдерграф.