I’ve been pretty successful in building a pre-shaped island with WM, but I still would like to understand the Mask Input of the devices better / more precisely.

Would it be right to say that if m is the Mask Input, In1 the first ( :!:, see below) input of a device and Out the “usual” output of the device, that m * In1 + (1-m) * Out
yields the “real”, masked output of the device??

This is how I understood the Mask Input for devices that only have exactly one input, but I was wondering if the generalization to devices with more than one input is correctly made by saying that it’s the first input that enters the “real” output if m>0.

(All the above assumes that Out is first computed from all inputs as expected, but without ever taking m into account.)

Well, that is what happens(*)! For either single input or any-number input devices…
That means that if m == “0”, any device which receives that mask will output the same as the first input…

This may sound awkward, but it’s the only way to do it for the general case.
I you want more control over what happens of the areas of m<1, then you should do it manually with a chooser after the device.

Mask input works the same as connecting the first input and first output to the Chooser

() - actually the correct formula would be [b]mOut + (1-m)*In1[/b]

Well, that is what happens(*)! For either single input or any-number input devices..

Okay, thanks for clarifying this!

I you want more control over what happens of the areas of m<1, then you should do it manually with a chooser after the device.

Yes, I understand that. Originally, I was looking for a way to vary the size of the filter kernel of the Blur device across the heightmap, but now I realize that that probably is not (easily) possible.

(*) - actually the correct formula would be [b]m*Out + (1-m)*In1[/b]