Marc Gilleron
b112b620f7
Namespaced VoxelMeshBlock, VoxelMeshMap
2022-01-08 23:18:28 +00:00
Marc Gilleron
8166ebbfcf
Namespaced VoxelDataBlock, VoxelDataGrid, VoxelDataMap
2022-01-08 23:04:49 +00:00
Marc Gilleron
38baeae2d9
Namespaced VoxelBufferInternal
2022-01-08 22:49:59 +00:00
Marc Gilleron
d5c16a63ae
Namespaced DirectStaticBody
2022-01-04 23:07:53 +00:00
Marc Gilleron
c1073d1bae
Namespaced DirectMultiMeshInstance
2022-01-04 23:07:23 +00:00
Marc Gilleron
14840634de
Re-namespaced VoxelDebug
2022-01-04 22:57:21 +00:00
Marc Gilleron
abcb307170
Namespaced DirectMeshInstance
2022-01-04 22:37:37 +00:00
Marc Gilleron
64415a3c86
Configure clang-format to put a newline after template declarations
2022-01-04 22:15:57 +00:00
Marc Gilleron
0fee995c0f
Namespaced godot utility funcs
2022-01-03 23:52:54 +00:00
Marc Gilleron
4ced432a3c
Namespaced LodOctree
2022-01-03 23:42:31 +00:00
Marc Gilleron
e20684ce69
Namespaced math funcs
2022-01-03 23:14:18 +00:00
Marc Gilleron
0ff835d7ec
Namespace ProfilingClock
2022-01-03 01:40:13 +00:00
Marc Gilleron
88811eb0df
Don't show instancer gizmos by default
2022-01-01 03:45:33 +00:00
Marc Gilleron
3db4798e14
Draw instance chunks in editor
2021-12-30 22:20:30 +00:00
Marc Gilleron
fefb7fb434
Fix crash when removing an item from the library while an instancer node is using it.
...
The old code was assuming block indices don't change, but they do
2021-12-30 05:03:31 +00:00
Marc Gilleron
89f3343354
Allow to dump VoxelInstancer as scene for debug inspection
2021-12-30 04:25:42 +00:00
Marc Gilleron
2d7d09534a
Fix VoxelInstancer not refreshing when an item is modified
2021-12-30 04:22:23 +00:00
Marc Gilleron
0be0fb19b0
Moved task stuff to utilities
2021-12-29 19:08:23 +00:00
Marc Gilleron
39d949f345
AsyncDependencyTracker does not depend on VoxelServer
2021-12-29 18:54:45 +00:00
Marc Gilleron
12caefe577
Renamed VoxelThreadPool => ThreadedTaskRunner and namespace it
2021-12-29 18:25:47 +00:00
Marc Gilleron
4d2fe30661
Use Time singleton
2021-12-29 17:06:24 +00:00
Marc Gilleron
0f67513a29
Move TimeSpreadTaskRunner to its own file and namespace
2021-12-29 15:12:28 +00:00
Marc Gilleron
541af4a4ad
Spread out mesh destruction in attempt to workaround slow Vulkan buffer deallocation
2021-12-28 18:19:41 +00:00
Marc Gilleron
ea74c1f05f
Fix wrong class name specified in VoxelTerrain material properties
2021-12-28 04:09:47 +00:00
Marc Gilleron
79d4223be4
Fix deadlock caused by read locks not being released
2021-12-23 23:55:43 +01:00
Marc Gilleron
0bf72badbd
Fix dangling mesh block position upon removal from map, when such block had a pending update
2021-12-16 22:59:31 +00:00
Marc Gilleron
0bea05824a
Formatting
2021-12-16 22:17:52 +00:00
Marc Gilleron
f67077b698
Fix wrong condition for unloading mesh blocks
2021-12-16 22:17:20 +00:00
Marc Gilleron
03d3016ecf
Remove some pre-set resource properties to fix a Godot4 warning (sorry)
2021-12-16 01:30:31 +00:00
Marc Gilleron
267bde13fb
Added gi_mode property to VoxelNode to specify GI behavior
2021-12-16 00:11:11 +00:00
Marc Gilleron
35f09b7f72
Fix stack overflow when instancing a terrain node in editor
2021-12-14 01:28:10 +00:00
Marc Gilleron
3596c13475
Renamed set_process_mode to set_process_callback to fix conflict with newly renamed Godot4 Node method
2021-12-14 00:10:09 +00:00
Marc Gilleron
922f361cb0
Made it compile in Godot 4
...
- Made a bunch of changes to comply with Godot 4 API
- Use Godot's Vector3i and add the missing stuff with helper functions
- Transvoxel uses custom attributes API, the old way would not work
- Wrap MeshOptimizer in a unique namespace (see build script why)
- Added clang-format file for the module as some rules now differ
- Prevent thirdparty code and lookup tables from being clang-formatted
- Very likely full of runtime bugs that need fixing
2021-12-13 21:38:10 +00:00
Marc Gilleron
758aa07280
Fix shadowing issues (including a crash-worthy one)
2021-12-12 00:16:18 +00:00
Marc Gilleron
380e295d94
Merge branch 'master' into full_load_mode
...
# Conflicts:
# meshers/transvoxel/transvoxel.h
# server/voxel_server.cpp
# terrain/voxel_lod_terrain.cpp
2021-12-11 22:59:24 +00:00
Marc Gilleron
c17914b2c8
Formatting due to update of Godot's clang-format
2021-11-12 21:42:28 +00:00
Marc Gilleron
801545c68d
Unnecessary include
2021-11-06 23:24:52 +00:00
Marc Gilleron
d32dfc9c67
Fixed collision shapes not being saved
2021-10-31 20:13:44 +00:00
Marc Gilleron
536d1f11da
Fixed scene property neither being exposed nor being saved
2021-10-31 20:13:27 +00:00
Marc Gilleron
ca7ac42cde
Merge branch 'master' into full_load_mode
...
# Conflicts:
# edition/voxel_tool_lod_terrain.cpp
# generators/graph/voxel_generator_graph.cpp
# terrain/voxel_lod_terrain.cpp
2021-10-31 16:17:27 +00:00
Marc Gilleron
6441d1b864
Deprecate Vector3i(Vector3) constructor, make conversions explicit
...
Some conversions were wrong/unintented.
This is also in prevision of using Godot 4 Vector3i,
which default behavior differs from this module.
2021-10-31 16:01:47 +00:00
Marc Gilleron
325406ede1
Decrease MAX_LOD to avoid potential integer overflows
...
I preferred doing this instead of using 64-bit integers,
because I tink there are no use cases for LOD blocks that big
2021-10-28 23:55:46 +01:00
Marc Gilleron
b2315a6cc4
Check earlier for invalid extents
2021-10-28 23:51:30 +01:00
Marc Gilleron
3133834a17
Check AABB size before using it
2021-10-27 19:49:37 +01:00
Marc Gilleron
6cd143d392
Enable collisions by default on VoxelViewer
2021-10-15 22:51:53 +01:00
Marc Gilleron
a99d166112
Should not be in the repo
2021-10-14 19:38:50 +01:00
Marc Gilleron
fcca722d52
Fix signedness
2021-10-13 22:00:42 +01:00
Marc Gilleron
375c68b0de
Merge branch 'master' into full_load_mode
2021-10-13 20:29:58 +01:00
Marc Gilleron
a226111818
Run edits after preloads without a sync point on the main thread
...
- Still room for improvement, more parallelism is possible
- Started moving the data into its own structure
- Added locks to secure access to the data map (not truly used yet)
- Tasks with a tracker can schedule next ones when they complete
- Data loading responses also come with a callback, no buffer anymore
- Use new data grid to cache map access
2021-10-13 20:28:20 +01:00
Marc Gilleron
62447c7133
Moved some temporary vectors away from members.
...
They can be static thread locals since the whole point is to
re-use their allocated capacity. We don't need them to retain
any state between two calls to _process.
2021-10-06 18:34:02 +01:00