Final Density creates a floor

Started by WAS, February 19, 2021, 02:32:55 PM

Previous topic - Next topic


I thought of a really quick way to make large cumulus clouds, and it works save for one bug. When you apply a distribution shader that is warped on Y to final density, a floor is created that is pushed up with the Y warping even though the distribution shader has no limited min altitude. If this could be fixed so it is still solid density to the bottom of the cloud layer, this would be an easy go for new Terragen artists.

Here is an example image looking at the base of the clouds. The Y warping in final density shaders is lifting the whole cloud layer's base.


You'd probably need to fill the void afterwards again by the initial cloud. Or mask the warping so only the top half of the cloud will be warped up. But masking a warping variable is a bit more work than just masking I once learned. It needs vectors added or so. Long time ago I did somethiing like that.


So using a max scalar to fill the gap won't work? At least, for filling up areas below uplifted areas. Vice versa would require a min scalar.
I wonder if it would work if you'd sample the volume over X/Z for unwarped and warped, feed those into a conditional so that when the change in Y is positive, then choose the max of unwarped + warp, and when the change is negative then choose warped only.
Something along those lines.


There is no main density, so it should be a solid blanket of cloud. The distribution shader in final density seems to push up the whole cloud layer. 

I'll see if I can figure out what Tangled means. I think I understand it. I also forgot to see if the same effect is produced through main density.


If it appears that the base of the cloud is being "pushed up" in some places but not others, and the only input to the cloud is "final density modulator", then that effect must be coming from your modulator function. Your function must be producing zero or negative values at these locations. Perhaps your warper is having a larger effect on the values than you realise.
Just because milk is white doesn't mean that clouds are made of milk.


Ah you're right, because i masked the distribution layer, the noise was creating floors! Not really the warping but related. Man really wish we had 2D noise output which is just a slice of 0-1 with no 3/4D noise. Or a rasterizer node? Rasterizes shaders to an area (image size and resolution).