Я реализовывал такое с помощью многослойного изображения.
Изначально смоделили сабж, отрендерили кучу изображений во всех цветах, а так же отдельно карту объектов для того чтобы потом в фш отделить детали которые меняют свои цвета. На выходе получилось какое-то множество изображений с прозрачностью. Далее на js прикрутили подмену этих картинок по клику на выбор цвета и элементов управления.