Commit Graph

137 Commits (master)

Author SHA1 Message Date
Marc Gilleron 74052885ad Removed block size cache in VoxelDataMap, takes space for no good use 2022-08-29 13:45:25 +01:00
Marc Gilleron b0e71e58ab More sizeof prints 2022-08-28 21:49:10 +01:00
Marc Gilleron 414aea52f3 Replaced VoxelDataMap with VoxelData in VoxelLodTerrain 2022-08-28 20:45:42 +01:00
Marc Gilleron 8ed72225a3 Rename function 2022-08-25 00:11:54 +01:00
Marc Gilleron 90dbf9418e Moved "Update From Scene" button to multimesh item inspector 2022-08-21 20:18:29 +01:00
Marc Gilleron a28a172763 Fix wrong block coordinate systems when computing normalmaps and a few other things 2022-08-17 22:23:13 +01:00
Marc Gilleron 11107896f3 Print size of more things 2022-08-06 23:15:56 +01:00
Marc Gilleron dfde47307e Move vox code under vox/ folder 2022-07-17 19:15:32 +01:00
Marc Gilleron e9445a9ccb Removed VoxelStreamBlockFiles 2022-07-17 18:49:48 +01:00
Marc Gilleron 5ca09d712e Renamed VoxelServer => VoxelEngine 2022-07-16 23:59:06 +01:00
Marc Gilleron 1b9ce1b309 Disable threaded mesh building on low-end renderers (only GLES3) 2022-07-03 03:40:33 +01:00
Marc Gilleron dac0af3a04 Build mesh resource on the task thread now the Vulkan renderer supports it 2022-07-02 23:01:49 +01:00
Marc Gilleron d9b74359f8 Provide a default material for VoxelMesherTransvoxel with variable-lod 2022-06-26 17:21:05 +01:00
Marc Gilleron 0e12e6dbf1 Initial WIP for SDF non-destructive voxel modifiers. Support is incomplete.
Some voxel queries and operations will not take modifiers into account.
It needs to be worked on, might involve some refactoring.
2022-06-09 20:35:29 +01:00
Marc Gilleron 177d7a99c9 Added basic stack tracking for memory pool allocations 2022-06-06 21:54:20 +01:00
Marc Gilleron 6c47c177ab Moved Godot config access to module initialization 2022-05-23 00:13:37 +01:00
Marc Gilleron 35e4b5cd17 Update to new module registration 2022-05-07 22:06:32 +01:00
Marc Gilleron f993796ca1 Added inspector plugin to edit VoxelMeshSDF 2022-05-05 20:57:59 +01:00
Marc Gilleron 868ae90fbe Added VoxelMeshSDF and VoxelToolLodTerrain.stamp_sdf() 2022-05-02 19:14:12 +01:00
Marc Gilleron d7e0af161a Abstracted voxel metadata so internals no longer depends on Variant 2022-04-18 19:59:38 +01:00
Marc Gilleron 87d98e9162 Engine-agnostic error macros 2022-04-11 02:10:44 +01:00
Marc Gilleron 259a914cbf Return a ref instead of pointer, it must not be null 2022-04-09 15:05:04 +01:00
Marc Gilleron ab5d3a22d3 Abstract logging for verbose print 2022-04-09 15:00:34 +01:00
Marc Gilleron f58199e7de Added class to schedule custom tasks from scripts 2022-04-07 22:34:07 +01:00
Marc Gilleron 5519054c01 Unify macro prefixes 2022-04-06 23:26:54 +01:00
Marc Gilleron e0008d3335 Fix compilation now Godot comes with its own FastNoiseLite.
The version shipped with the module is now prefixed.
Removed usages of OpenSimplexNoise.
2022-04-03 20:07:17 +01:00
Marc Gilleron 8d8d8b336d Moved VoxelLodTerrain and VoxelTerrain stuff to their own folders 2022-03-20 22:57:53 +00:00
Marc Gilleron c9edc64ae0 Fix compilation with newest Godot 2022-03-14 00:26:25 +00:00
Marc Gilleron 493b93a051 SDF is now encoded with inorm8 and inorm16 2022-02-26 22:51:29 +00:00
Marc Gilleron 0137ca3036 Namespaced VoxelBuffer in `gd::` because it is actually a wrapper 2022-02-15 21:49:20 +00:00
Marc Gilleron 4c36b96ef2 Moved Godot-facing block serializer API to its own file 2022-02-12 23:52:44 +00:00
Marc Gilleron d1250ef0ad Added support functions to help setting up basic multiplayer with `VoxelTerrain`.
These might change in the future. Will have to test that later,
when Godot 4 gets more stable.
2022-01-31 21:23:39 +00:00
Marc Gilleron 9454759b02 Renamed VoxelInstanceLibraryItem => VoxelInstanceLibraryMultiMeshItem 2022-01-10 22:56:32 +00:00
Marc Gilleron f8b8b27ff2 Renamed Voxel => VoxelBlockyModel, VoxelLibrary => VoxelBlockyLibrary 2022-01-09 23:27:38 +00:00
Marc Gilleron b67ca3d903 Namespaced every registered class 2022-01-09 22:16:44 +00:00
Marc Gilleron 774adfca3c VoxelServer no longer inherits Object.
The Godot-facing singleton is now a different class in gd:: namespace.
Moved the updater to its own file.
2022-01-09 04:53:33 +00:00
Marc Gilleron 14840634de Re-namespaced VoxelDebug 2022-01-04 22:57:21 +00:00
Marc Gilleron 5ece3b840e Namespace VoxelMemoryPool 2022-01-03 23:20:38 +00:00
Marc Gilleron e68f59643b Namespaced VoxelGraphNodeDB 2022-01-03 03:55:44 +00:00
Marc Gilleron 56b4920902 Updated and integrated FastNoise2 2021-12-31 05:06:00 +00:00
Marc Gilleron 3db4798e14 Draw instance chunks in editor 2021-12-30 22:20:30 +00:00
Marc Gilleron 892de996dd Print size of Node3D for reference 2021-12-28 19:44:04 +00:00
Marc Gilleron e46b1a023d Added test for VoxelBlockSerializerInternal and RegionFile; added namespaces 2021-12-17 19:30: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 4fc6731b8d Prevent instancing VoxelTool classes manually 2021-10-26 20:17:40 +01:00
Marc Gilleron 9a74362aca Added vox scene importer. No options at the moments. 2021-07-31 18:48:47 +01:00
Marc Gilleron 27d54a0d5c Add initial support for instancing scenes with VoxelInstancer 2021-07-25 20:37:30 +01:00
Marc Gilleron 89d854f328 VoxelGeneratorHeightmap should not be instanciable 2021-06-16 23:34:47 +01:00
Marc Gilleron f72687ac9a More sizeof stuff 2021-05-22 19:38:50 +01:00
Marc Gilleron 96bcc44d00 Removed VoxelMap and VoxelBlock, superseded by their specialized versions 2021-04-15 20:25:55 +01:00