PersonTheCat / pangaea

A highly configurable terrain generator for Minecraft with light scripting support
GNU Lesser General Public License v2.1
1 stars 0 forks source link

Design a custom feature / carver backend #22

Open PersonTheCat opened 2 months ago

PersonTheCat commented 2 months ago

This API should hook into the FEATURE chunk status--logic handled by ChunkGenerator#applyBiomeDecorations--to run a new kind of generator with the following features:

PersonTheCat commented 1 month ago

I'm pretty sure the way we're gonna handle this is by creating a custom type of net.minecraft.world.level.levelgen.feature.Feature which provides some additional data, most of which is actually stored directly in the SeverLevel, such as our NoiseGraph. Hypothetically, we can also use this API to run carvers. TBD.

If that's the path we take, the one issue we might run into is that heightmaps are calculated between carvers and features. we would need to pick a feature step and defer computing heightmaps to that point.