That is, sadly, the expected effect.
The Coast Erosion
device will create a water body based on the terrain it gets fed from the Erosion
device. It changes this to create some beaches and then you have your output with a water body “linked to it”. However, when you add a River Device, it will affect the terrain, and also the terrain at the beaches sadly, destroying that “link” between the Coast Erosion’s water body and the (now changed) terrain.
But probably more important to you is how to fix this. This is some more advanced World Machine stuff, so don’t panic if this all seems like “weird magic stuff” to you and just follow the steps and look at the image below for reference. Note, not all steps (2, 4, 10 and 12) have a corresponding coloured box in the image.
- We are going to add a
Scalar Generator
to the world. This device will determine the sea level for ourCoast Erosion
device and two other devices. Now we will also add aConstant Device
and aSelect Height
device (note, we are using the old version of theSelect Height
device, to change the version, right click on it, go toChoose device version
and select theLegacy
option).
You must link theScalar Generator
to theSea Level
parameter of theCoast Erosion
device, theHeight
parameter of theConstant Device
and theMaximum
parameter of theSelect Height
device. - We will be adding 3
Combiner
devices. - The first
Combiner
will be set toMax
, with itsStrength
set to 1, and we will link it to theConstant
device and the terrain output of theRiver
device. - We will now link the
Select Height
device to the output of theCombiner[Max]
from step 3. - The second
Combiner
will be set toMultiply
, with itsStrength
set to 1, and we will link it to theSelect Height
andConstant
device. - The third
Combiner
will be set toAbsolute Differences
, with itsStrength
set to 1, and we will link it to theCombiner[Max]
output from step 3 and the terrain output of theRiver
device. - We will add a new device, the
Composite Type
device. Open its properties and set thePack/Unpack
parameter toPack to Composite Type
, and theType
toCore.3025.Water
. The device will now have three inputs and one output. To the first input,watersurface
we will link the output of theCombiner[Multiply]
from step 5. To the second input,depth
we will link the output of theCombiner[Absolute Differences]
from step 6. - We add another
Constant
device, and set its height to half the world’s height. So, if your world’s max height is 1500 m, you set theHeight
parameter to 750 m. - We add another
Composite Type
device, and set its parameters toPack to Composite Type
andCore.Vectorfield
. We now link theConstant
device from step 8 to both inputs. - Link the
Composite Type[Core.Vectorfield]
to theflowdir
input of theComposite Type[Core.3025.Water]
device. - Now combine the two water bodies with the
Combine Water
macro, just like you did before. - Hook up the terrain of the
River
device and the water of theCombine Water
macro to theScene View
device.
What this scheme does is creating a new sea with the Constant
device, does a bit of clever Combiner
stuff to get the appropriate height maps, then creates a new Water System
with the Composite Type
device, which we now can combine with the river. Since this operation is done after the River
device, the sea will be different from the original sea we got from the Coastal Erosion
device, because the terrain has been altered by the River
device. I hope this helps, let me know if you have any more questions.
And the .tmd file (118.5 KB), in case you want to download this example.