EmaMaker
60bbc85682
chunk: store index in chunk itself
2023-10-03 22:45:09 +02:00
EmaMaker
490f207e39
chunk/mgr: calculate index belongs to chunk namespace
2023-10-03 22:45:09 +02:00
EmaMaker
950c43b163
refactor chunk meshing routine
2023-07-19 12:56:55 +02:00
EmaMaker
bff9e6ad4f
move normal data to own array
2023-07-18 21:18:12 +02:00
EmaMaker
105fff0029
write number of triangles to Chunk only when sending to GPU
...
previously the current number of vertices was stored in the chunk, and the same variable got later reused for the number of triangles. This modification increases clarity and avoid glitches when blockpicking
2023-05-26 23:07:04 +02:00
EmaMaker
2f9b7cebcd
chunk: make chunk size 32
...
slight increase in fps with no great increase in ram usage, with greater render distance
2023-05-20 22:15:32 +02:00
EmaMaker
e225babb0c
chunkmesher: external queue of chunk mesh data
...
instead of every chunk having its own queue
This decreases usage of ram
2023-05-20 22:15:32 +02:00
EmaMaker
78e3bc11e6
initial update and render with concurrent DS
2023-05-20 22:15:15 +02:00
EmaMaker
52537715ef
chunks: make chunk state atomic
2023-04-23 16:28:36 +02:00
EmaMaker
8584d2e974
general code cleanup
2023-03-25 16:28:12 +01:00
EmaMaker
f3d89a2e5a
chunk release resources on destruction
2023-03-12 22:14:28 +01:00
EmaMaker
f7eb04a5f1
use unique_ptr when dumping intervalmap to array
2023-03-12 19:24:09 +01:00
EmaMaker
716056b8c5
experimental multithreaded generation and meshing
2023-03-03 21:33:11 +01:00
EmaMaker
c547d11cd5
chunks: drop per-chunk chunkmesh
...
Use a single mesher. This, on top of the previous commits, shaves off another 20MB of total RAM usage, using a total of about 120MB for a standard world (16 chunk size, 8 render distance), of which 22 in heap
2023-02-12 14:36:59 +01:00
EmaMaker
9f82a17bd2
chunkmesh: do not create shader for every object
2023-02-12 12:18:30 +01:00
EmaMaker
b724640384
chunkgen: take advantage of intervalmap structure
...
brings down heap memory usage to about 67% of that using arrays (valgrind, tested on standard terrain with renderdistance at 8)
2022-12-01 23:44:03 +01:00
EmaMaker
8eb15f4725
chunk: migration to intervalmaps
2022-12-01 23:44:03 +01:00
EmaMaker
c8f429564c
chunkmgr: properly dispose allocated chunk memory
2022-12-01 23:44:03 +01:00
EmaMaker
3a649836e5
initial commit
...
initial port of https::/git.emamaker/voxel-test-intervalmaps to c++ and opengl
2022-11-10 19:53:52 +01:00