Captain-Chaos / WorldPainter

WorldPainter is an interactive graphical map generator for the indie game Minecraft.
http://www.worldpainter.net/
GNU General Public License v3.0
341 stars 58 forks source link

Imported masks & global operations bug #391

Open Dannypan opened 1 month ago

Dannypan commented 1 month ago

I’ve been trying to use global operations to apply layers and terrain except on a soil mask layer I’ve made. However, if even a single pixel of the imported mask is within a 128 tile, the entire tile is ignored.

Please could it be fixed so imported masks don’t block off entire tiles. This issue persists even after restarting WorldPainter.

Soil Map in the below is a custom annotation layer; start is a custom ground cover layer.

image

image image

Dannypan commented 1 month ago

After testing, this isn’t just due to imported masks but simply a bug with custom annotation layers.

Captain-Chaos commented 1 month ago

Could you elucidate a little? Am I correct that yellow in those images is the custom annotation layer and red the layer you are trying to apply? So you're saying that if you do "except on" the yellow layer the red layer is not applied in any tile where the yellow layer is present?

Does it do that only for custom annotation layers, or also for other layer types?

Captain-Chaos commented 1 month ago

I assume this is referring to importing a mask using scripting, since importing a mask using the GUI does not even support filtering?

Captain-Chaos commented 1 month ago

It would be tremendously helpful if you could provide a test case. Perhaps the files involved in creating the images above.

Dannypan commented 1 month ago

Made a fresh one since I'm not on the usual PC I work on. Surface.png is the height map, River map.png is the mask I've imported. I imported it with these settings (threshold is 16000)

image

then applied the "Test" annotation layer with global operations except on the "River Mask" annotation layer. As you'll see, it only applied the "Test" layer on WorldPainter tiles where there isn't any "River Mask" layer:

image

No scripts used.

Test for CC.zip

Dannypan commented 1 month ago

On further testing I think it might just be an issue with custom annotation layers, whether imported or not.