Depth Modulation & Coverage Adjust

Started by WAS, June 04, 2018, 04:07:16 PM

Previous topic - Next topic

WAS

It would be super fancy cool if Coverage Adjust ignored the depth modulator. I assumed it would, as it was in the cloud layer and usually applied over your density fractal, least what it looks like.

Or maybe more specifically, it's "boundary" wasn't right at the depth modulators "mask". More a gradual falloff too the mask.

I'd imagine with this ability you could create very specific cloud shapes, and give them wispiness/haze without another cloud layer like you can without a depth modulator.

Matt

#1
If the depth modulator is 0 at some point, what would you want the cloud layer to do? Do you want the coverage adjust to change the depth modulator as well? (That would be quite a difficult thing to explain the effects of IMO, and therefore make the system even more difficult to learn.)

Matt
Just because milk is white doesn't mean that clouds are made of milk.

WAS

Quote from: Matt on June 04, 2018, 04:45:33 PM
If the depth modulator is 0 at some point, what would you want the cloud layer to do? Do you want the coverage adjust to change the depth modulator as well? (That would be quite a difficult thing to explain the effects of IMO, and therefore make the system even more difficult to learn.)

Matt

Well what I mean  is when you use a density fractal, nothing else, with nice low coverage, than you use the cloud layers coverage adjust, like just a bit 0.1 - 0.2 you get a little bit of filler and haze from main cloud shapes. Looks very realistic.

If you use a modulator to create a very specific shape, even with blank spaces, you can't use the coverage adjust to add some filler. Imo that's a little contrary to "depth modulation" and more just a mask.....

What could be done is just taking the depth modulators input and scaling it up a tiny bit and softening it's borders, and than using this as the "depth modulation" of the coverage adjust. This would cause some expansion from your modulated shape. I'm doing a mock of it right now.

Matt

I think for predictability it's important to be able to mathematically define what modulation of 0 means. It means the depth of the cloud is multiplied down to 0. So there can be no cloud. If you want some cloud to remain you should create a depth modulator that stays above 0.

"Mask" and "modulator" are mathematically similar. They are both multipliers. Depth modulation is multiplication of the depth (height from bottom to top). Mask is multiplication of the density at a point. In both cases 0 prevents any cloud from appearing.

I understand the desire for many of these functions to have soft rolloffs. But doing so comes at the cost of clarity of understanding, IMO. Makes TG even more of a black box that it already is in many places.

Matt
Just because milk is white doesn't mean that clouds are made of milk.

WAS

#4
Quote from: Matt on June 04, 2018, 05:52:16 PM
I think for predictability it's important to be able to mathematically define what modulation of 0 means. It means the depth of the cloud is multiplied down to 0. So there can be no cloud. If you want some cloud to remain you should create a depth modulator that stays above 0.

"Mask" and "modulator" are mathematically similar. They are both multipliers. Depth modulation is multiplication of the depth (height from bottom to top). Mask is multiplication of the density at a point. In both cases 0 prevents any cloud from appearing.

I understand the desire for many of these functions to have soft rolloffs. But doing so comes at the cost of clarity of understanding, IMO. Makes TG even more of a black box that it already is in many places.

Matt

Depth doesn't mean mask to depth, though, depth, can, and realistically IRL, with clouds, is really seeing a hazy border transition to dense cloud.

With depth modulation you entirely loose that ablity. The clouds cookie-cut to the the depth modulation...

What I'm suggesting, is that the boundary of the depth is smoothes, probably, in relation to the coverage adjust.

The depth modulator works the same when coverage is 0, but when you up it, the form becomes hazier.

The expanding boundary haze like stuff could be made from the base density fractal input, so it follows cloud density detail, and isn't constant.

You appear to be achieving similar with your 60 node cloud setup with some of it being wispy/hazy in relation to cloud density detail, or so it looks.

WAS

Example, here is some interesting cloud forms. Notice the hard edges, so hard, they just look bad with silver highlights, even with edge of 1. Lowing the edge density effects fractal detail and overall look.

WAS

#6
Here is another example I just too outside with these large clouds we got rolling in.

Notice in the highlighted area there is almost a boundary of "duplicated", but varied, clouds. I feel using the base density, and again, and applying it with a smooth border along the depth path would create these effects nicely being very faint.

I have a mock using two V3 clouds (as v2 just don't work right) and from the 10x10 pixel area that I could get to render in an hour, it looks almost similar to this real life photo I took. It just includes a duplicate cloud within the master which of course wouldn't be part of the real deal I'd imagine, and in this case, increase render times 100 fold.

WAS

#7
Took an hour and 40 minutes, but this crop shows the type of hazing I'm talking about. The edge sharpness could be a bit higher on the haze v3 clouds maybe as they're pretty thin and barely there.

Just feel depth modulation could be improved to be proper depth where the borders aren't a solid mask.

Matt

The quick answer is: Depth modulation does a specific thing. What you want to achieve is outside of the purpose of the depth modulator, so you should look for a different way to achieve what you want, rather than redefining what depth modulation does.

Matt
Just because milk is white doesn't mean that clouds are made of milk.

WAS

#9
Quote from: Matt on June 04, 2018, 09:01:22 PM
The quick answer is: Depth modulation does a specific thing. What you want to achieve is outside of the purpose of the depth modulator, so you should look for a different way to achieve what you want, rather than redefining what depth modulation does.

Matt

Could you define what your depth modulation is?

From what you explain, 0 being black, and 1 being maximum (of I guess the  cloud maximum depth), 0 is no cloud (0 height) 1 being top to bottom of depth... Why would that definition include CUTTING the clouds to solid borders when dealing with shapes like a SSS? Why can't it be REAL depth like clouds (a effort I'd assume you'd be striving for) and just modulate the depth if the clouds in whole? Or real depth like other programs that take what you have, and modulate it, as apposed to creating something new? What is explained that it does, isn't the same as what it produces.

Why would I need to create a 4 day render (render times of a tile multiplied in contrast to the whole thing with one cloud in an hour) and not have it be something the developers try to help work on that can help achieve realistic clouds without excessive undisclosed work? If I could "hollow" out clouds with the original mask this would render nice and fast, but instead I have to force two clouds together throwing scattering through a haywire.

I mean, there isn't a way to do this that I know of with depth modulation without a second, or multiple V3 clouds when dealing with shaped clouds.

Matt

It's a complex topic. I definitely understand the need to get soft edges, and wispy edges, and a maybe nonlinear transition from 0 density to >0 density. I think there are ways to approach these problems outside of either the coverage parameter or the depth modulator. From what I can see in your renders, the hard edges that you're pointing out are not actually caused by the depth modulator going to 0.

Matt
Just because milk is white doesn't mean that clouds are made of milk.

WAS

Quote from: Matt on June 04, 2018, 09:22:48 PM
It's a complex topic. I definitely understand the need to get soft edges, and wispy edges, and a maybe nonlinear transition from 0 density to >0 density. I think there are ways to approach these problems outside of either the coverage parameter or the depth modulator. From what I can see in your renders, the hard edges that you're pointing out are not actually caused by the depth modulator going to 0.

Matt


What would they be caused by? If I change edge sharpness from 1 to 0.1, it's still cookie cutter edges, just more transparent. No other settings effect this. With just the density, you'll have all sorts of densities from haze to solid.

WAS


Matt

#13
Quote from: WASasquatch on June 04, 2018, 09:18:25 PM
Could you define what your depth modulation is?

OK. So, first I think I should try to explain what happens when there is no depth modulator. Every point in space has some cloud density that is calculated at that XYZ position according a bunch of functions. Let's say the cloud layer has altitude 500 and depth 1000 (and this is a Cloud Layer V2/V3). This defines a volume that starts at an altitude of 0 and extends to 1000 metres altitude. Anywhere in that volume the density could be >0. A 3D fractal plugged into the Density Shader input is used to calculate a density value that varies in space. If you have "taper top and base" turned OFF and "coverage adjust" at 0, then the Density Shader says exactly where there is cloud and where there isn't. Any place where the Density Shader is below 0, there will be no cloud. Anywhere the Density Shader is >0, the density of the cloud at that point will be >0, proportional the value coming from the Density Shader. The actual density is further affected by "edge sharpness" and "cloud density" (more precisely, it is multiplied by "edge sharpness", then clamped so it never exceeds 1, and then multiplied by "cloud density"). "Coverage adjust" is an offset that is added to every value coming from the Density Shader before any further processing occurs, so has the same effect as changing the coverage adjust in the fractal itself. It changes where the edges of the clouds are simply by adding a constant to this number before it is clamped at 0, effectively changing the threshold at which cloud appears.

If you a build a cloud like this, you'll get clouds that are cut off at the top and bottom of the volume (at 0 metres and 1000 metres). To avoid that, we have the feature "taper top and base" which is turned on by default. This enables a built-in profile function that changes the threshold where cloud appears. It works a bit like "coverage adjust", but it's not just an offset, it also multiplies down the densities at the top and bottom. With this enabled, you can get clouds with round tops and bottoms simply by using a 3D fractal as the Density Shader, and it prevents clouds from ever reaching the exact top and bottom of the volume in which the cloud layer is calculated.

Most of the time when you're getting hard edges on your clouds, it's because of what's happening in those calculations I just described. Depth modulation isn't necessarily the problem.

Now for depth modulation. Instead of using a volume that is 1000 metres tall everywhere in space, it allows you to change this height. Assuming "centre" is set to 0 (the default), then it changes where that top is. A depth modulator of 0.5 will bring the top down to 500 metres above the base. A depth modulator is 0.1 will bring it down to 100 metres. The built-in profile is also squashed down to fit within this range.

If you have a very slowly-changing depth modulator, this should give you predictable results. If you have something that changes as quickly as the kinds of fractals we usually plug into Density Shader then you can get some nice cumulus clouds, maybe without even needing a Density Shader. This happens because every point in space can be calculated according to a new definition of where the top and the bottom of the cloud volume can be. But the way it works is very specific. Its purpose is to change the range of altitudes that are used to calculate the built-in profile and therefore where the maximum potential extend of the cloud can be, which can be further modified by the Density Shader.

Quote
From what you explain, 0 being black, and 1 being maximum (of I guess the  cloud maximum depth), 0 is no cloud (0 height) 1 being top to bottom of depth...

Correct.

Quote
Why would that definition include CUTTING the clouds to solid borders when dealing with shapes like a SSS?

I'm not sure I understand.

Quote
Why can't it be REAL depth like clouds (a effort I'd assume you'd be striving for) and just modulate the depth if the clouds in whole? Or real depth like other programs that take what you have, and modulate it

I believe it does.

Quote
, as apposed to creating something new? What is explained that it does, isn't the same as what it produces.

I don't know why you think this. You have some idea about how this works that I haven't understood yet, but if I can understand that then perhaps I can give better, more specific advice.

Matt
Just because milk is white doesn't mean that clouds are made of milk.

Matt

Quote from: WASasquatch on June 04, 2018, 09:26:23 PM
Quote from: Matt on June 04, 2018, 09:22:48 PM
It's a complex topic. I definitely understand the need to get soft edges, and wispy edges, and a maybe nonlinear transition from 0 density to >0 density. I think there are ways to approach these problems outside of either the coverage parameter or the depth modulator. From what I can see in your renders, the hard edges that you're pointing out are not actually caused by the depth modulator going to 0.

Matt


What would they be caused by? If I change edge sharpness from 1 to 0.1, it's still cookie cutter edges, just more transparent. No other settings effect this. With just the density, you'll have all sorts of densities from haze to solid.

I could be wrong. Maybe your depth modulator has too much contrast. I'm not exactly familiar with your scene.
Just because milk is white doesn't mean that clouds are made of milk.