Mildly better worldgen

Former-commit-id: e8d77b75b164611ccfd144b1d6e6d6c5e396e515
This commit is contained in:
Joshua Barretto 2019-04-25 15:16:10 +01:00
parent fc8b7e9750
commit a66cc98a03

View File

@ -32,7 +32,8 @@ impl World {
let air = Block::empty();
let stone = Block::new(1, Rgb::new(200, 220, 255));
let grass = Block::new(2, Rgb::new(50, 255, 0));
let sand = Block::new(3, Rgb::new(180, 150, 50));
let dirt = Block::new(3, Rgb::new(128, 90, 0));
let sand = Block::new(4, Rgb::new(180, 150, 50));
let perlin_nz = Perlin::new();
@ -42,20 +43,20 @@ impl World {
let freq = 1.0 / 128.0;
let ampl = 32.0;
let small_freq = 1.0 / 16.0;
let small_ampl = 8.0;
let small_freq = 1.0 / 32.0;
let small_ampl = 6.0;
let offs = 32.0;
let height =
perlin_nz.get(Vec2::from(wposf * freq).into_array()) * ampl
+ perlin_nz.get(Vec2::from(wposf * small_freq).into_array()) * small_ampl
+ offs;
chunk.set(lpos, if wposf.z < height {
if wposf.z < height - 1.0 {
stone
} else {
grass
}
chunk.set(lpos, if wposf.z < height - 4.0 {
stone
} else if wposf.z < height - 1.0 {
dirt
} else if wposf.z < height {
grass
} else {
air
}).unwrap();