Вы можете просто подкрашивать затронутые узлы - спрайты, метки и т. Д., Если они реализуют CCRGBAProtocol .
Например, эти три цвета можно использовать для дневного, рассветного и ночного:
// full brightness
sprite.color = ccc3(255, 255, 255);
// getting darker
sprite.color = ccc3(200, 200, 220);
// night
sprite.color = ccc3(140, 140, 180);
Я поднял синий канал, потому что синий по-прежнему выглядит довольно темным, не затрачивая слишком много яркости.Вы увидите этот эффект во многих играх, где ночные цвета на самом деле имеют синий оттенок.Это трюк, чтобы сохранить цвет и яркость, но при этом создать ощущение темноты.
Эти цифры не соответствуют моей голове и, безусловно, требуют подстройки.Также вы должны стремиться к тонкому эффекту.«Ночь» в игре не означает, что вся графика абсолютно черного цвета.