Possible solultion to erosion?

Started by CCC, September 08, 2009, 08:07:41 PM

Previous topic - Next topic

CCC

Sub-divided stretched noise that follows downward slope of any noise flavor and cuts into the existing slope. It basically blends with the main noise but cuts into the deeper slopes. The cut noise can be made narrow, wide, have a tapir at it's small scale as well as it's large scale for talus and fans. Tapering can be clamped as well. It's all controlled by a gradient function within the code at least for that sub-feature. It can be warped slightly as well. The large scale taper can be controlled through altitude blending/feathering. Sense the noise is sub-divided into smaller and smaller iterations it should be fully procedural is my guess.

Sense iterations are involved perhaps they can be based on a basic l-system so that the small-scale noise looks more like a winding channel.

Matt

You probably need to compute the normal for every octave/subdivision of the erosion noise, and that becomes really expensive when the input is a procedural terrain. Also, if you want each 'cut' to interact with all other cuts at various scales, the complexity becomes exponential rather than linear (the Alpine Fractal does this, which is why it is slow).
Just because milk is white doesn't mean that clouds are made of milk.

CCC

What a smaller number of limited octaves or octaves based on a LOD? The camera only sees the visible octaves and that is based on what is rendered. LOD would automatically keep the same noise seed say one wants to zoom in closer or farther.

Or i guess the next best thing is to have inputs for the Alpine Shader.

Matt

#3
I don't do LoD on displacement shaders because I don't know how close the final surface will get to the camera (other displacement shaders could put the surface right next to the camera, for example, even if the shader we're interested in thinks it's far from the camera). Even if that were not the case, you'd still have long render times on closeup surfaces.

I'd like to make the Alpine Shader look at its input displacement, so that its features flow correctly along some arbitrary input terrain. It would be easy if I didn't have to worry about speed, but I will need to carefully cache and reuse input calculations approximating the surface to avoid turning the slow Alpine Shader into the Never Ending Render Shader. (Problem is, for the reason I gave above, I can't easily decide on an LoD-based resolution for the cache, so it needs to be based on the feature scales.) But I think you are talking about inputs for modulating the parameters of the Alpine Shader, which would also be useful. That's another future project.

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

cyphyr

Couldn't it just be a user defined distance from camera ..
Richard
www.richardfraservfx.com
https://www.facebook.com/RichardFraserVFX/
/|\

Ryzen 9 5950X OC@4Ghz, 64Gb (TG4 benchmark 4:13)

CCC

Huh, based on what you said about the surface displacement to camera distance, that does make sense.

Yes, i was basically getting at inputs for modulating the parameters of the Alpine Shader but the first part of your idea for input displacement sounds very nifty as well.


AP


Matt

Hmmm. I don't have anything new that we can publish yet, but I have tried out a couple of ideas recently. It depends on what kind of erosion you're interested in and how pronounced it needs to be... I don't think we'll be able to complete anything significant in this area until TG3.
Just because milk is white doesn't mean that clouds are made of milk.

AP

Quote from: Matt on August 12, 2011, 09:29:13 PM
Hmmm. I don't have anything new that we can publish yet, but I have tried out a couple of ideas recently. It depends on what kind of erosion you're interested in and how pronounced it needs to be... I don't think we'll be able to complete anything significant in this area until TG3.

Well, based on what i have read so far here, anything new even in it's most basic form is a good thing. I mean, more complex functions can be added later anyways after TG3. I think the alpine additions would be a interesting start for one. Either way, it would be neat to see what you all have cooked up.    :)