Vertical biome blend: Tune blend patterns
authorparamat <paramat@users.noreply.github.com>
Tue, 20 Feb 2018 13:42:52 +0000 (13:42 +0000)
committerparamat <mat.gregory@virginmedia.com>
Tue, 20 Feb 2018 15:28:52 +0000 (15:28 +0000)
src/mapgen/mg_biome.cpp

index 2273be280978bd6e360a016242ee9e10621d55ff..eb12fcc737872493406bfe60af638f33bd3c236b 100644 (file)
@@ -133,7 +133,7 @@ Biome *BiomeManager::getBiomeFromNoiseOriginal(float heat, float humidity, s16 y
                }
        }
 
-       mysrand(y + (heat - humidity) * 2);
+       mysrand(y + (heat + humidity) / 2);
        if (biome_closest_blend &&
                        myrand_range(0, biome_closest_blend->vertical_blend) >=
                        y - biome_closest_blend->y_max)
@@ -196,7 +196,7 @@ BiomeGenOriginal::~BiomeGenOriginal()
        delete noise_humidity_blend;
 }
 
-
+// Only usable in a mapgen thread
 Biome *BiomeGenOriginal::calcBiomeAtPoint(v3s16 pos) const
 {
        float heat =
@@ -286,8 +286,9 @@ Biome *BiomeGenOriginal::calcBiomeFromNoise(float heat, float humidity, s16 y) c
        }
 
        // Carefully tune pseudorandom seed variation to avoid single node dither
-       // and create larger scale blending patterns.
-       mysrand(y + (heat - humidity) * 2);
+       // and create larger scale blending patterns similar to horizontal biome
+       // blend.
+       mysrand(y + (heat + humidity) / 2);
 
        if (biome_closest_blend &&
                        myrand_range(0, biome_closest_blend->vertical_blend) >=