Allow specifying different noise equations for different Y-values within a biome.
dfsek opened this issue ยท 1 comments
Rework the noise-equation
key within biomes to allow specifying different noise equations for different heights. Also rename the key to generation
New configuration example:
generation:
68: "((-((y / base)^2)) + 1) + |(noise2(x, z) / 3) + 0.1|"
Would use the equation ((-((y / base)^2)) + 1) + |(noise2(x, z) / 3) + 0.1|
at Y=68 and below, otherwise would default to 0
.
Noise values would still be lerped, allowing basic blending between different equations. Blending would not be as advanced as inter-biome blending.
The special constant top
would be a valid key, specifying the highest point of the world.
This would specifically allow for significant performance boosts, especially with 1.17 around the corner, using configs such as:
generation:
68: "((-((y / base)^2)) + 1) + |(noise2(x, z) / 3) + 0.1|"
54: "1"
This configuration would only calculate noise for Y=54-68, and use the constants 0
or 1
for everything else. This would grant significant performance boosts, especially with 1.17's 384-block tall worlds.
When doing this, we should also make a simple pack conversion utility, that just removes the noise-equation
line from configs it is present in, grabs the equation, and inserts
generation:
top: <equation>
This utility would be very simple to make, and would make updating packs a super simple process.