Marc Gilleron
30db0c5193
Split VoxelBuffer in two, script-facing wrapper and internal.
...
The internal is the main use within the voxel engine,
and does not inherit Reference.
2021-09-26 04:14:50 +01:00
Marc Gilleron
6faf5b29f3
Allow to configure main thread time limit
2021-09-25 02:13:03 +01:00
Marc Gilleron
3197eaba35
Move main thread tasks into one runner in VoxelServer
...
So the timing budget is better respected even if there are multiple
voxel nodes in the scene
2021-09-25 00:02:41 +01:00
Marc Gilleron
44f00176d3
Use std::unordered_set instead of Godot Set in VoxelLodTerrain
2021-09-23 23:49:18 +01:00
Marc Gilleron
0838cab251
Don't schedule loadings when streaming is disabled, don't crash when it still happens, log an error instead
2021-09-19 23:12:42 +01:00
Marc Gilleron
fd8d107280
Fix `is_area_editable` converting twice from voxels to blocks
2021-09-19 03:29:09 +01:00
Marc Gilleron
0c31f5a525
Show octree node gizmos with a color gradient based on LOD
2021-09-18 19:54:54 +01:00
Marc Gilleron
8e53fbaa47
Merge branch 'master' into octree_compression
2021-09-18 18:18:09 +01:00
Marc Gilleron
6a6682dfd5
Fixed crash occurring after a few edits when LOD count is set to 1
2021-09-18 01:36:44 +01:00
Marc Gilleron
2971334e85
Changed VoxelToolLodTerrain to use write_box
...
- Should be faster than get/set_voxel
- No longer expose internal data map
2021-09-17 20:01:15 +01:00
Marc Gilleron
ff4e7f9560
Added debug drawing of mesh octree using multimesh (not exposed for now)
2021-09-16 21:54:04 +01:00
Marc Gilleron
d901eb66b6
Added functions to LodOctree and use squared distances
2021-09-16 21:03:02 +01:00
Marc Gilleron
58d365d2bf
Profiling scopes
2021-09-09 18:53:22 +01:00
Marc Gilleron
7cb1e4008e
Use accessor
2021-08-15 17:27:55 +01:00
Marc Gilleron
e7e8e72507
Quick fix to avoid error when trying to edit across loaded border.
...
There should be a better solution in the future, it's not optimal
2021-07-25 19:48:51 +01:00
Marc Gilleron
8c17a1cf20
Added property to configure collision margin
2021-07-10 22:14:17 +01:00
Marc Gilleron
144affe42d
Fix errors/crashes when trying to edit voxels on loading borders
...
- Replaced fatal asserts with soft asserts
- No longer require existence of a mesh when lodding on loaded border.
As far as voxel data is concerned, it should work just fine.
- Fixed wrong list used when scheduling mesh updates on higher LOD indexes
2021-07-10 20:17:28 +01:00
Marc Gilleron
1ee5bcb80d
Renamed Rect3i -> Box3i
2021-05-31 17:12:04 +01:00
Marc Gilleron
983b7bd83d
Merge branch 'master' into smooth_texturing
...
# Conflicts:
# util/godot/funcs.h
2021-05-22 19:43:39 +01:00
Marc Gilleron
efe8bcf9c0
Show a configuration warning when a mesher does not support LOD
2021-05-15 23:41:19 +01:00
Marc Gilleron
fa48523073
Added collision layer and mask properties
2021-05-09 20:49:45 +01:00
Marc Gilleron
ba78f67394
Fixed another property inconsistency to fix C# bindings
2021-05-08 17:15:15 +01:00
Marc Gilleron
b6c89f5088
Merge branch 'master' into smooth_texturing
2021-05-08 01:02:54 +01:00
Marc Gilleron
14cc77eb7c
Make getter and setter types match to fix an issue with C# bindings
2021-05-07 22:39:06 +01:00
Marc Gilleron
4e67a1530d
Code to debug vertex sharing issues
2021-05-03 00:13:36 +01:00
Marc Gilleron
0cef70a3c0
Fix backward iteration infinite loop when there is only one LOD
2021-04-21 18:29:23 +01:00
Marc Gilleron
a00e9928d8
Fix more GCC warnings
2021-04-18 01:59:51 +01:00
Marc Gilleron
7d93a4646d
Fix more GCC warnings
2021-04-18 01:48:53 +01:00
Marc Gilleron
b846194bea
Fix some GCC warnings
2021-04-18 01:29:26 +01:00
Marc Gilleron
1449560f29
Implemented decoupling on VoxelTerrain (no setter yet)
2021-04-13 23:48:35 +01:00
Marc Gilleron
14fcddcee8
Fix meshes not loading in certain configurations where voxel bounds were not rounded correctly
2021-04-05 03:47:25 +01:00
Marc Gilleron
e0f2f706aa
Added debug_get_data_block_info and fix/improve debug_get_mesh_block_info
2021-04-05 03:46:15 +01:00
Marc Gilleron
19af22fb2b
Added voxel_to_mesh_block_position
2021-04-05 03:44:52 +01:00
Marc Gilleron
5f18276b8d
Expose setter for mesh block size
2021-04-03 23:51:11 +01:00
Marc Gilleron
758e3bd227
Allow to use block size 32 for mesh blocks while using 16 for data blocks
...
Still hardcoded but a config should be added
2021-04-03 20:39:37 +01:00
Marc Gilleron
225f332e1f
Fix signedness warning
2021-03-27 22:27:55 +00:00
Marc Gilleron
05c35caa92
Added categories to terrain properties
2021-03-27 16:38:52 +00:00
Marc Gilleron
c86feda259
Replace lod_split_scale with lod_distance for better clarity
2021-03-27 16:38:20 +00:00
Marc Gilleron
c46d5e973d
Fix coordinates
2021-03-12 23:36:11 +00:00
Marc Gilleron
944791d5ce
Fixes to LOD fading
2021-03-12 23:35:51 +00:00
Marc Gilleron
5a8eee7d4b
Added debug function to get octree state
2021-03-11 22:55:52 +00:00
Marc Gilleron
cf81f83382
Re-implemented lod fade
2021-03-02 22:49:42 +00:00
Marc Gilleron
76ec90fe34
Moved constants and tables under a folder
2021-02-21 23:58:00 +00:00
Marc Gilleron
cb2fcdce1b
Fix signedness warning
2021-02-19 01:51:06 +00:00
Marc Gilleron
4d033a2bb4
Added collision update delay to accelerate edit spam a little.
...
Not easy to use yet, might need the user to use voxel raycast instead of
physics because the hit points will not update often as they sculpt
2021-02-18 19:50:47 +00:00
Marc Gilleron
d1207bdd96
Reorganized some utility files
2021-02-17 20:34:35 +00:00
Marc Gilleron
c5eb599798
Make the editor preview update in some uncovered scenarios
2021-02-15 21:45:12 +00:00
Marc Gilleron
02972641ea
Add option to emit instances from faces
2021-02-15 18:25:48 +00:00
Marc Gilleron
094bbc1fe1
Refactored API to allow editor inspection and preview
2021-02-14 21:55:31 +00:00
Marc Gilleron
7f47b07e0c
Fix data reception buffer not cleared after consumption
2021-02-08 01:22:09 +00:00