Results 1 to 10 of 12

Thread: Wilbur Precipitation-Based Erosion adding weird bumps

Threaded View

Previous Post Previous Post   Next Post Next Post
  1. #12
    Administrator waldronate's Avatar
    Join Date
    Mar 2007
    Location
    The High Desert
    Posts
    3,562

    Default

    The documentation for Wilbur is very out of date and may not have been particularly useful even when it was current 17 years ago for version 1.39. Sometimes it's not even correct (for example, the morphological erode description is the same as the morphological dilate description).

    The resize / height clip against mask / noise / fill basins / incise / precipiton loop followed by (sometimes) exponent and (usually) morphological erode to despike things after all of the basic loops is what I've been recommending for a while for a multi-resolution processing setup. The trick for multi-resolution things is to do large movements at the first few iterations (tiny surface, big noise, high incise exponent) and reduce things as you get larger. There's a word (actually several) for big things at one scale and successively smaller things at smaller scales: fractal. It's "wavelets" if you're doing a particular kind of scale-and-add, but they are close enough for the specific discrete domain that Wilbur's sloppily doing.

    Why those things are there:

    The resize / height clip front end assumes that you have a full-resolution coastline mask that you want to enforce.
    Noise is to reduce directional artifacts caused by the direction-finding algorithm's tendency to align things to the 8 main directions. Lots of noise at low resolution, less noise as you go along.
    Fill Basins is a sleazy shortcut for huge numbers of noise + fluvial erosion cycles. Its sink at 0 altitude is a concession to world things, but that lets you put drains in for basins you want to keep.
    Incise Flow is another sleazy shotcut for huge numbers of noise + fluvial erosion cycles. It has some serious errors such as the weird basins at "river" junctions, but it's normally good enough.
    Precipiton erosion is a super-simple and lossy approximation for fluvial erosion. Because agents are dropped on the surface at random then then flow downhill, there will likely be spots that are missed, causing those little spikes of noise to never quite disappear like they would in the real world.

    After the above loop is run enough time to get something plausible, there are some finishing touches that can make things look tidier.
    The altitude statistics are never quite right if the map is supposed to be a large area (compared to our "normal" earthlink world), but an exponent operation can push down the coastal plains and make the mountains pointier to get "better" statistics.
    Those little noise spikes that the noise created and the precipiton erosion left behind are ugly and need to be removed. One way to do that is a blur, but that spreads out the energy of the spike and loses detail. A local minimum operation will get rid of them, but it will also leave the coastline looking a little bit like tattered lace. A local median operation is usually the right thing to do because it picks the "most likely" local value at the cost of getting rid of some details. Wilbur has the option to create a number of grayscale versions of the surface and those can be transferred to the selection and used as masks for other operations (for example, getting rid of the spikes can sort of be done with a relative elevation texture transferred to the selection followed by a blur; only the more steeply-sloped areas will be blurred).

    Use of the term "sleazy" in this case is intended to indicate something that's not really a physically-motivated process, but achieves something that's vaguely reminiscent of the appearance of the physical solution. As opposed to "sleazy" in the sense of "undesirable", which may be an implementation detail.
    Last edited by waldronate; 01-18-2023 at 10:23 PM.

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •