Допустим делаем детальки лего. У всех деталек есть один уровень шерховатости, отражений и так далее, но разные цвета.
Можно сделать так, чтобы был основной материал и на него накладывался другой, который меняет только цвет?
Используй ноду "Object info" , вывод "Color". Этот параметр берется из Viewport Display -> Color, который задаётся для каждого объекта отдельно. Таким образом у тебя будет один материал на все объекты, диффузный цвет которого меняется исходя их атрибутов объекта.
Цвет вполне себе конкретный, задаётся Viewport Display -> Color. Там для выбора и цветовой круг есть, и HEX значения, и RGB, и HSL.
Что имеете ввиду под "текстурой", Diffuse maps? Человек задавший вопрос про изменение только цвета говорит. Можно сделать и их выбор при помощи color Ramp, но вопрос не об этом был.
Тут немного спагетти получается, т. к. нода mix имеет только два входа, но вот пример, где к красному каналу Viewport Display -> Color привязан выбор одной из восьми текстур.
Ноды Checker texture можно заменить любыми другими, описывающими диффузный цвет.