afonsolage / projekto

Voxel game made with Bevy Engine
MIT License
59 stars 4 forks source link

Separate Landscape from World #5

Closed afonsolage closed 2 years ago

afonsolage commented 2 years ago

Current implementation of VoxWorldis just a Landscape where only visible chunks are loaded. This needs to be changed, since the visible chunks in many times have to query non-visible chunks, like to check of faces occlusion, ambient occlusion (not implemented yet) or even propagation (light, fire, water, physics and so on).

Maybe VoxWorld should have a bigger area and may have compressed chunk data? Anyways, only the basic data needs to be on VoxWorld, like voxel::Kind and voxel::Light for instance, other data are related only to visible chunks, like faces occlusion, ambient occlusion or meshes.

I should separate what data lies on World and what data lies on Landscape.