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 |
Marc Gilleron
|
227bf5ad36
|
Added get/set_voxel_f in VoxelMap
|
2019-04-28 00:25:33 +01:00 |
Marc Gilleron
|
2e419db855
|
Fix default value for CHANNEL_ISOLEVEL, it should be the integer raw value, not the quantified one
|
2019-04-28 00:23:10 +01:00 |
Marc Gilleron
|
a67ea390d5
|
Smooth VoxelProviderImage a little in isolevel mode, also properly repeat the heightmap if it's not power of two
|
2019-04-27 02:08:12 +01:00 |
Marc Gilleron
|
6d872160ab
|
Added get_size() as Vector3 to VoxelBuffer
|
2019-04-27 02:06:09 +01:00 |
Marc Gilleron
|
10c2e69a0c
|
Default values for CHANNEL_ISOLEVEL should be 1.0 (i.e maximum distance)
|
2019-04-27 02:05:40 +01:00 |
Marc Gilleron
|
c86a5c53e1
|
Fixed VoxelMap.get_buffer_copy() introducing voxels in channel 0 even if they don't exist
|
2019-04-27 02:03:08 +01:00 |
Marc Gilleron
|
8c6defee09
|
Fixed bad VoxelBuffer indexing for non-cubic volumes
|
2019-04-26 03:35:00 +01:00 |
Marc Gilleron
|
b85e696b7b
|
Fixed bad position validation in VoxelBuffer
|
2019-04-26 02:52:32 +01:00 |
Marc Gilleron
|
beace8709b
|
Update DMC mesher to the API required to integrate to VoxelTerrain
|
2019-04-25 01:00:58 +01:00 |
Marc Gilleron
|
101f83234a
|
Don't logspam if terrain library is not set
|
2019-04-25 00:58:23 +01:00 |
Marc Gilleron
|
9f0845759f
|
Fix binding of VoxelIsoSurfaceTool::do_heightmap()
|
2019-04-25 00:57:18 +01:00 |
Marc Gilleron
|
9e13c68da7
|
Return empty mesh if blocky mesher doesnt find a type channel
|
2019-04-25 00:56:51 +01:00 |
Marc Gilleron
|
fdb40ef3f4
|
Add quick support for isolevel in VoxelProviderImage
|
2019-04-25 00:54:14 +01:00 |
Marc Gilleron
|
b3dd85bd36
|
Added VoxelIsoSurfaceTool::do_heightmap(), untested
|
2019-04-24 02:08:45 +01:00 |
Marc Gilleron
|
1a4c6ec33d
|
Fixed compilation
|
2019-04-24 02:07:06 +01:00 |
Marc Gilleron
|
1b9e7257df
|
Clang-format did things
|
2019-04-24 01:31:42 +01:00 |
Marc Gilleron
|
70881ce255
|
Use Godot Map, std::map doesnt appear to have any advantage
|
2019-04-23 23:38:15 +01:00 |
Marc Gilleron
|
9c3eb0e4b7
|
Added OCTREE_NODE mode to disable adaptivity, effectively providing classic marching cubes
|
2019-04-23 23:37:26 +01:00 |
Marc Gilleron
|
19329efaa6
|
Initialize stats before each meshing
|
2019-04-23 23:35:43 +01:00 |
Marc Gilleron
|
b627a5736d
|
Expose octree mode, mesh mode and geometric error as properties; initialize stats
|
2019-04-23 01:30:15 +01:00 |
Marc Gilleron
|
a80ddc450b
|
Make OP_ADD the default in VoxelIsoSurfaceTool
|
2019-04-23 01:28:51 +01:00 |
Marc Gilleron
|
cead529f11
|
Use object pool to speed up octree construction
|
2019-04-23 00:47:52 +01:00 |
Marc Gilleron
|
bfbe382a7d
|
Snake case
|
2019-04-23 00:26:41 +01:00 |
Marc Gilleron
|
1070acf0be
|
Count re-used vertices
|
2019-04-23 00:14:20 +01:00 |