Add a simple Time of Day control to the Weather system
Hi,
I have been working with Wicked Engine quite a lot lately and I really want to keep using it for my own engine/project.
One thing that has been quite disappointing for me is how difficult it is to discover some basic environment controls in the editor.
For example, I wanted to change the time of day. I now understand that this can already be done by rotating a Directional Light and using that as the sun.
So this is not about the engine being unable to do it.
The problem is that as a user, you have to know that yourself.
When I add a Weather component and enable Realistic Sky, I naturally expect to find something like:
Time of Day: 14:30
and then be able to move a slider from morning to afternoon, sunset and night.
Internally this could still simply rotate the existing Directional Light. The renderer itself would not need a completely new system.
Something as simple as this would already be enough:
Time of Day: 14:30
Sun: SunThe editor could convert the selected time into the direction of the sun.
It could also automatically detect a Directional Light in the scene and use that as the sun. If there is no Directional Light, there could simply be a button like:
No sun found
Create SunI think that would make the Weather system much easier to understand.
I am not a beginner myself, but I honestly think this would be very confusing for beginners. Someone can add Weather, enable Realistic Sky and then wonder why the scene is black or why there is no obvious way to change the sun or time of day.
At the moment you need to understand that the Directional Light is the sun, that its rotation controls the sun direction and therefore effectively controls the time of day.
Once you know this, it makes sense. But the editor does not really communicate it.
I also noticed something similar with Terrain. Adding Terrain can automatically give you a very nice sky and sun setup, while manually adding Weather gives you a completely different experience. This makes the relationship between Terrain, Weather and the Sun even harder to understand.
I really like Wicked Engine and I am actively using it as the base for my own engine, so I would really like to see this workflow improved instead of having to build a completely separate environment editor myself.
I think a dedicated Time of Day control inside Weather would already solve a large part of this.
It does not need to be a complex astronomical system.
For a first version, simply converting a time between 00:00 and 24:00 into the Directional Light rotation would already be very useful.
Later it could optionally be expanded with things like sunrise, sunset, automatic day/night cycles or geographical sun position.
But the important part for me is that changing the time of day should be something visible and obvious in the editor, instead of something the user has to know is controlled through the transform of a Directional Light.
Source: turanszkij/WickedEngine