Commit Graph

2039 Commits (522b8d86d3abcf200a5615723fba99ea22c9a64a)

Author SHA1 Message Date
Marc Gilleron efe58f1af6 Added exclusive area parameter to block processors so they can remove blocks from their queue 2019-05-12 16:33:25 +01:00
Marc Gilleron 561f95a506 Added stats for dropped block loads and meshs 2019-05-12 16:30:45 +01:00
Marc Gilleron 8126d732b6 Fix block processors' sorting function 2019-05-12 16:19:08 +01:00
Marc Gilleron 1065aa40ef Useless comment 2019-05-12 16:17:57 +01:00
Marc Gilleron 960236b155 Remove commented function I never used 2019-05-12 16:17:43 +01:00
Marc Gilleron 017f64ddb9 Optimized VoxelProviderNoise with a noise buffer so it does less OpenSimplex calculations 2019-05-11 17:42:56 +01:00
Marc Gilleron a521501add Move both meshing and loading sheduling to LodOctree polling 2019-05-10 18:56:48 +01:00
Marc Gilleron 29298958e7 Fix mistake in previous commit about missing binding argument 2019-05-10 00:57:09 +01:00
Marc Gilleron 255acbb739 Remove wrong CRASH_COND, also use get/setters for VoxelBlock properties 2019-05-09 22:00:54 +01:00
Marc Gilleron 96183e0c51 Fix missing argument in voxel/block conversion functions 2019-05-09 21:59:03 +01:00
Marc Gilleron 81eeb48ac6 Reduce amount of marching squares generated as skirts 2019-05-09 19:11:40 +01:00
Marc Gilleron cf7ece7a58 Remove BlockState and replace it with loading_blocks set and enum inside VoxelBlock 2019-05-09 19:11:17 +01:00
Marc Gilleron 73d5d9993c Load blocks on demand instead of speculatively, it's faster 2019-05-08 20:53:51 +01:00
Marc Gilleron 035e45d0a3 Fix missing destructor in VoxelBlock... woopsie 2019-05-08 20:36:27 +01:00
Marc Gilleron d21974e122 Changed debug methods, also fixed blocked lods due to small block region extent 2019-05-08 00:57:34 +01:00
Marc Gilleron 61e7c82d74 Indicate LOD works with smooth terrain 2019-05-06 01:39:45 +01:00
Marc Gilleron 9b2104e93e Add smooth voxels screenshot to the README 2019-05-05 20:49:56 +01:00
Marc Gilleron dc0b5a3bb5 Add smooth terrain screenshot 2019-05-05 19:55:05 +01:00
Marc Gilleron 40ccdd8fea Expose material and LOD settings 2019-05-05 19:54:47 +01:00
Marc Gilleron 310e2172ff Added stat to monitor LODs blocked by non-ready meshes 2019-05-05 19:15:50 +01:00
Marc Gilleron fc4dee54d7 Added VoxelProviderNoise for testing 2019-05-05 18:27:33 +01:00
Marc Gilleron 1baa13ff3b Added VoxelBuffer::clear_channel_f() 2019-05-05 18:27:09 +01:00
Marc Gilleron 4e9880fb8c Fix bad value fetch 2019-05-05 17:01:40 +01:00
Marc Gilleron 46784e4700 Make marching cubes skirts an option in VoxelMesherDMC, also use more C++11 initializers 2019-05-05 17:00:42 +01:00
Marc Gilleron 1f219e68eb Added marching square skirts to hide most LOD cracks 2019-05-05 03:56:18 +01:00
Marc Gilleron d93f23337a Added stats to VoxelLodTerrain 2019-05-05 01:09:12 +01:00
Marc Gilleron 8850019dc4 Put LodOctree child position calculation in a function 2019-05-04 17:58:33 +01:00
Marc Gilleron f0089dce8b Use C++11 member initializers 2019-05-04 16:30:39 +01:00
Marc Gilleron 295374b99f Don't subdivide or unsubdivide if meshes aren't ready 2019-05-04 16:29:52 +01:00
Marc Gilleron 9bab6c04d1 Added VoxelLodTerrain, focused on LOD. No seam management, no editing yet. 2019-05-04 00:02:10 +01:00
Marc Gilleron 9363f54e8d Comments 2019-05-04 00:00:50 +01:00
Marc Gilleron b24a0d4140 Make blocky voxels optional in VoxelMeshUpdater 2019-05-03 23:59:21 +01:00
Marc Gilleron 7b32426246 Handle LOD in VoxelProviderImage (roughly) 2019-05-03 23:55:52 +01:00
Marc Gilleron 2b20d90804 Added bit-shifting and comparison operators to Vector3i 2019-05-03 23:54:35 +01:00
Marc Gilleron 5851e4849f Added `lod` parameter to VoxelProvider 2019-04-29 21:57:39 +01:00
Marc Gilleron c80a24ef0b Moved is_mesh_empty() to utility.h 2019-04-29 21:32:28 +01:00
Marc Gilleron d1c21bdf5d Remove function from class declaration, doesn't need to be in here 2019-04-29 21:31:52 +01:00
Marc Gilleron 7c6d4f3242 Moved ObjectPool to util/ and moved OctreeTables to root 2019-04-29 21:31:08 +01:00
Marc Gilleron 66d4a913bd Use std::vector for speed 2019-04-28 21:02:42 +01:00
Marc Gilleron faefde721a Add base class to all meshers, gather common things in it 2019-04-28 20:48:59 +01:00
Marc Gilleron 12a97cca5a Reorganize all files and rename a few things 2019-04-28 17:58:29 +01:00
Marc Gilleron c8fbf19814 Rename get/set_voxel_iso => get/set_voxel_f 2019-04-28 16:28:49 +01:00
Marc Gilleron ce57c656d5 Remove repetition 2019-04-28 04:27:37 +01:00
Marc Gilleron 00decc3a61 Update README since there is now a more recent marching cubes mesher 2019-04-28 04:25:27 +01:00
Marc Gilleron 766e3d882c Subtract should actually use inverted signed distance 2019-04-28 03:51:24 +01:00
Marc Gilleron 59c5a43915 Fixed VoxelMap::get/set_voxel_f bound to the wrong function 2019-04-28 02:27:50 +01:00
Marc Gilleron c837ca4dd0 Code formatting 2019-04-28 01:34:00 +01:00
Marc Gilleron d6bb354bd9 Added smooth_meshing option to VoxelTerrain and handle padding differences it introduces 2019-04-28 01:32:23 +01:00
Marc Gilleron fe37ed3674 Fix broken Terrain::raycast when it falls back to isolevel channel 2019-04-28 01:29:52 +01:00
Marc Gilleron 0f378fe218 Remove default channel from `is_uniform()` to prevent mistakes 2019-04-28 00:27:17 +01:00