57 Commits

Author SHA1 Message Date
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
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
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
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
fcca722d52 Fix signedness 2021-10-13 22:00:42 +01:00
Marc Gilleron
ceb8553e4a Avoid crash if the argument is invalid (though it's not really a public function) 2021-10-04 20:15:32 +01:00
Marc Gilleron
c18262d3f8 Added option to turn off random rotation 2021-09-19 21:41:16 +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
3ee79ec068 Should have been min 2021-09-12 00:55:15 +01:00
Marc Gilleron
454d8b2c7f Fix no instances generated when density is 1 in vertex emission mode 2021-09-11 18:12:55 +01:00
Marc Gilleron
d6e4769f08 Don't run multimesh LOD updates when blocks have item types not supporting that feature 2021-07-28 19:26:14 +01:00
Marc Gilleron
6d09e181bf Added menu to update an instancer multimesh item from a scene 2021-07-26 01:39:44 +01:00
Marc Gilleron
27d54a0d5c Add initial support for instancing scenes with VoxelInstancer 2021-07-25 20:37:30 +01:00
Marc Gilleron
8ae03490fd Fix VoxelInstancer error when changing visibility 2021-07-25 19:01:32 +01:00
Marc Gilleron
002452cb54 Fix warning (2) 2021-07-19 20:03:08 +01:00
Marc Gilleron
52aa4963ea Fixed some crashes occurring when giving invalid arguments to functions 2021-07-19 19:04:52 +01:00
Marc Gilleron
619bd977c1 Added extra mode to instance generator for more precise emission from faces 2021-07-11 16:23:54 +01:00
Marc Gilleron
1ee5bcb80d Renamed Rect3i -> Box3i 2021-05-31 17:12:04 +01:00
Marc Gilleron
411be94559 Renamed ArraySlice -> Span 2021-05-31 16:48:49 +01:00
Marc Gilleron
a36604ebf2 Fix more GCC warnings (3) 2021-04-18 02:13:26 +01:00
Marc Gilleron
310386bde8 Merge branch 'master' into block_size_decoupling 2021-04-11 01:09:51 +01:00
Marc Gilleron
42a8d0e35f Fix shadow setting not initialized when setting up from template scene 2021-04-11 00:58:12 +01:00
Marc Gilleron
9a131ed4ff Merge branch 'master' into block_size_decoupling
# Conflicts:
#	server/voxel_server.cpp
2021-04-06 22:00:55 +01:00
jacobcoughenour
13346b3495 Remove unnecessary enum bind and add shadow setting to doc 2021-04-05 22:50:03 -04:00
jacobcoughenour
279e23fa3d Fix shadow setting not updating in the editor 2021-04-05 22:48:29 -04:00
jacobcoughenour
c0721a7404 Added shadow mode setting to VoxelInstanceLibraryItems 2021-04-05 00:24:46 -04:00
Marc Gilleron
db8074c940 Merge branch 'master' into block_size_decoupling 2021-04-05 03:50:12 +01:00
Marc Gilleron
befe0cc7e1 Added debug method to get instance counts 2021-04-04 23:44:22 +01:00
jacobcoughenour
e66a49ca74 Fix instance generator using wrong height for filtering 2021-04-04 15:18:13 -04: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
Roberto Benfatto
eef1d076a0
Add missing bindings for constants
Without those bindings, exported api.json generates the class without the enum despite having a method with a return value of that type. This fixes compilation with generated headers in godot-cpp
2021-04-01 17:45:07 +02:00
Marc Gilleron
e8d54e88ef Fix instancer error in some rare cases where a block has an empty multimesh 2021-03-12 23:38:13 +00:00
Marc Gilleron
8adbe86da6 Formatting 2021-03-12 23:37:37 +00:00
Marc Gilleron
fa2efcf75a Fix missing bindings 2021-02-18 21:17:52 +00:00
Marc Gilleron
d1207bdd96 Reorganized some utility files 2021-02-17 20:34:35 +00:00
Marc Gilleron
d08c911579 Fix GCC warning 2021-02-16 23:52:56 +00:00
Marc Gilleron
a3018e84e6 Fix missing header and signedness 2021-02-16 23:36:37 +00:00
Marc Gilleron
4bdadb2ffd Fix GCC warning 2021-02-16 23:07:59 +00:00
Marc Gilleron
c5a4dd8f72 Fix release compilation 2021-02-16 22:38:09 +00:00
Marc Gilleron
5bef3b6cc6 Added scale distribution and noise 2021-02-16 01:14:04 +00:00
Marc Gilleron
a94a8da157 Fixed Add Item not working after first item 2021-02-16 01:13:16 +00:00
Marc Gilleron
0a347ebf70 Fix configuration warning not updating after adding an item to the library 2021-02-16 01:04:21 +00:00
Marc Gilleron
41177f1c73 Fixed error when setting a library on an instancer not in the tree yet 2021-02-15 22:27:18 +00:00
Marc Gilleron
511bfd2a7a Added node configuration warnings 2021-02-15 21:55:31 +00:00
Marc Gilleron
c5eb599798 Make the editor preview update in some uncovered scenarios 2021-02-15 21:45:12 +00:00