mirror of
https://github.com/minetest/minetest.git
synced 2024-11-10 01:33:46 +01:00
Noise: Update Noise::resizeNoiseBuf to account for lacunarity not equal to 2
This commit is contained in:
parent
29b413b376
commit
941d000fc6
@ -400,15 +400,15 @@ void Noise::resizeNoiseBuf(bool is3d)
|
||||
float ofactor;
|
||||
|
||||
//maximum possible spread value factor
|
||||
ofactor = (float)(1 << (np->octaves - 1));
|
||||
ofactor = pow(np->lacunarity, np->octaves - 1);
|
||||
|
||||
//noise lattice point count
|
||||
//(int)(sz * spread * ofactor) is # of lattice points crossed due to length
|
||||
// + 2 for the two initial endpoints
|
||||
// + 1 for potentially crossing a boundary due to offset
|
||||
nlx = (int)(sx * ofactor / np->spread.X) + 3;
|
||||
nly = (int)(sy * ofactor / np->spread.Y) + 3;
|
||||
nlz = is3d ? (int)(sz * ofactor / np->spread.Z) + 3 : 1;
|
||||
nlx = (int)ceil(sx * ofactor / np->spread.X) + 3;
|
||||
nly = (int)ceil(sy * ofactor / np->spread.Y) + 3;
|
||||
nlz = is3d ? (int)ceil(sz * ofactor / np->spread.Z) + 3 : 1;
|
||||
|
||||
delete[] noise_buf;
|
||||
try {
|
||||
|
Loading…
Reference in New Issue
Block a user