Open kralverde opened 5 days ago
The chunk noise generation and population each take like 0.5 seconds, so 1 second per chunk. I'll now start a deep dive into finding optimizations
Chunk gen times are now ~0.1sec which i think is good enough for now
This is a very large PR. I'm just curious, what was the methodology of this implementation?
What do you mean by methodology?
But basically I would look at the source code, write an equivalent in rust, and then write a bunch of unit tests for correctness. It was not fun lol
If this PR is merged as-is, the default world generation would become that of the populate noise
Final bench is ~80msec per chunk on my machine. Can likely be improved but I think its good enough for now
~60msec/chunk on my machine with the unsafe code
Report BUG "populate noise" step of chunk generation
Report BUG
I don't think this is necessarily relevant to this PR, as this PR does not change any spawning code. It might illustrate an upstream bug though
~There's a regression somewhere in here for terrain gen, don't merge this PR yet.~
Isolated the issue to https://github.com/Snowiiii/Pumpkin/pull/319/commits/68949ec8d360144b9eb0c607315919ac19a233b4 likely line 539. I'll make a fix and add a test later today.
currently benching at ~55msec/chunk now, I think thats adequate for this PR
This PR implements (most of) the "populate noise" stage of chunk generation
The blender (for smoothing (i think)) and the beardifier (for leaving space for world structures) are not implemented in this PR
This PR changes the default world gen to this noise generation
Checklist
cargo fmt
cargo clippy