8 Commits

Author SHA1 Message Date
Marc Gilleron
7ca67e9e89 Added some checks 2021-11-14 18:40:50 +00:00
Marc Gilleron
f735bf30e1 Fix signedness warning and make a few things more explicit 2021-11-13 00:10:14 +00:00
Marc Gilleron
2fd4c22c54 Rewrote memory pool to use arenas per power of two.
Using per-size arenas behaves like a memory leak when
the user creates many VoxelBuffers of random sizes repeatedly.
Now memory blocks of the next power of two are used instead.
VoxelBuffers with power-of-two size will fit best, while also being
the most common. Non-power-of-two will use a bit more memory,
but such buffers are often temporary and less numerous.
2021-11-12 23:39:50 +00:00
Marc Gilleron
c6b2275738 Fix some stats and add VoxelMemoryPool info 2021-10-02 18:31:48 +01:00
Scott Wadden
511422c30d Fixed macos build errors 2021-09-22 09:48:35 -03:00
Marc Gilleron
026c14fcb5 Added importer to import vox files into a single mesh
- New importer, needs restart to switch but it's a limitation of Godot
- Might blow up if the scene spans a really big area, may be optimized in the future.
- The scene importer remains the default choice
- Promoted some ints to 64-bit to avoid oveflowing with large volumes or distances
- Handle a few cases of malloc failure
2021-08-14 16:49:46 +01:00
Marc Gilleron
f1e2ea9ad4 Update to latest Godot's threading primitives 2021-02-19 01:30:22 +00:00
Marc Gilleron
6c80da0425 Moved VoxelBuffer and VoxelMemoryPool under storage/ directory 2020-09-14 19:33:02 +01:00