Clouds have been a constant struggle with this project.
Getting a good quality/speed tradeoff has proven to be difficult.
Here’s the problem:
Volumetrics quality is based on two factors: Step Rate, and Max Steps, both found under Render Settings.
Shape contour contrast is determined by Step Rate. Higher step rates means the volume marching “steps over” details in your shape, leaving them fuzzy.
Max Steps determines how many steps are taken through a volume before it just “gives up” and ignores the rest.
This has huge implications for performance, as higher quality means much higher render times.
This was an early test using a volumetric shader:
And this is a more recent test, using an actual texture directly as a volume:
Both look not so good. The low quality settings leave the first clouds shapeless, the second one is more defined but looks wrong at certain times of day.
I decided to tackle this problem once and for all™, using a new setup.
I think I have something here that works fairly well, let me show:
High Quality, ~00:15:00 render time.
Low Quality, ~00:08:00 render time.
This is a single volume shader with just one musgrave node, with some stuff around it.
As you can see, the render quality has a bigger impact than just quality - the overall density of the cloud is lowered. I can’t seem to correct for this.
|
HQ |
LQ |
Step Rate |
0.5 |
1.0 |
Max Steps |
16 |
8 |
Material Step Rate |
0.01 |
0.1 |
To manage these settings, I added scene properties that drive these values.
Besides quality, I can also control other settings.
Coverage: How much do the clouds cover?
Thickness: How much do the clouds “pile up”? Higher = more stacks of clouds.
|
High |
Medium |
Low |
coverage |
|
|
|
tickness |
|
|
|
Most settings require some tweaking, to get the correct result. A high coverage + low thickness results in a nice “blanket”, where as low coverage + high thickness gets you “sky mountains”
More testing to follow.