Воспроизведение ответа Jontata - вот что я придумал.
Это хорошее решение для пользователей Unity, так как для него не требуется библиотека чертежей.Я просто делаю свою собственную функцию ToString для простого преобразования.
Функции:
public static string colorToString(Color color){
return color.r + "," + color.g + "," + color.b + "," + color.a;
}
public static Color stringToColor(string colorString){
try{
string[] colors = colorString.Split (',');
return new Color (float.Parse(colors [0]), float.Parse(colors [1]), float.Parse(colors [2]), float.Parse(colors [3]));
}catch{
return Color.white;
}
}
Использование:
Color red = new Color(1,0,0,1);
string redStr = colorToString(red);
Color convertedColor = stringToColor(redStr); //convertedColor will be red