summaryrefslogtreecommitdiff
path: root/src/mapgen.cpp
diff options
context:
space:
mode:
authorkwolekr <kwolekr@minetest.net>2014-12-29 21:44:52 -0500
committerkwolekr <kwolekr@minetest.net>2014-12-29 21:44:52 -0500
commit0974337804bde705544b9d237df57f92d5ea5253 (patch)
tree1708b665f02f32f5f5fc34116708b3b90a567d21 /src/mapgen.cpp
parentca89e63b27a2548a7615fcf4943c22f88818f6eb (diff)
downloadminetest-0974337804bde705544b9d237df57f92d5ea5253.tar.gz
minetest-0974337804bde705544b9d237df57f92d5ea5253.tar.bz2
minetest-0974337804bde705544b9d237df57f92d5ea5253.zip
Mapgen: Use getBlockSeed2() for blockseeds (much better uniformity)
Diffstat (limited to 'src/mapgen.cpp')
-rw-r--r--src/mapgen.cpp15
1 files changed, 15 insertions, 0 deletions
diff --git a/src/mapgen.cpp b/src/mapgen.cpp
index 24f9fc556..c1b8889a8 100644
--- a/src/mapgen.cpp
+++ b/src/mapgen.cpp
@@ -101,6 +101,21 @@ Mapgen::~Mapgen()
}
+u32 Mapgen::getBlockSeed(v3s16 p, int seed)
+{
+ return (u32)seed +
+ p.Z * 38134234 +
+ p.Y * 42123 +
+ p.X * 23;
+}
+
+
+u32 Mapgen::getBlockSeed2(v3s16 p, int seed)
+{
+ return noise3d(p.X, p.Y, p.Z, seed);
+}
+
+
// Returns Y one under area minimum if not found
s16 Mapgen::findGroundLevelFull(v2s16 p2d)
{