Witam, nie jestem pewien czy tytuł pytania wybrałem odpowiedni ale do rzeczy.
w funkcji update() mam taki kawałek kodu
poraDniaTime++;
if(poraDniaTime >= 60)
{
poraDniaTime = 0;
if(sun.rotation.x > -10.0f && sun.rotation.x < 170.0f)
{
sun.Rotate(-0.3f, 0f, 0f);
RenderSettings.fogColor = Color.gray;
RenderSettings.fogDensity = 0.009f;
}
else if(sun.rotation.x < -10.0f && sun.rotation.x > 170.0f)
{
sun.Rotate(-3f, 0f, 0f);
RenderSettings.fogColor = Color.black;
RenderSettings.fogDensity = 0.006f;
}
}
sun to Transform podłączony pod direct light.
poraDniaTime to po prostu int.
w trakcie dnia (czyli wtedy kiedy światło oświetla mapę [pomiędzy -10f a 170f]) słońce ma się poruszać po niebie wolniej a w nocy (między 170f a -10f) ma się poruszać szybciej.
jeszcze w trakcie dnia mgła ma być dalej od gracza w kolorze szarym a w nocy bliżej w kolorze czarnym.
problem polega na tym że nawet kiedy obrót na osi x direct light wynosi (np.) -40f to nadal obraca się o -0.3f i mgła jest szara.
Jeżeli któreś z moich rozwiązań co do tego są dziwne lub nie mają sensu to proszę napisać jak lepiej to zrobić ponieważ naukę unity zacząłem dopiero tydzień temu.