Commit Graph

185 Commits (master)

Author SHA1 Message Date
Marc Gilleron 3606424947 Fix bool used as pointer 2022-09-03 18:13:26 +01:00
Marc Gilleron dda396bb00 Fix narrowing conversion warning 2022-09-03 18:12:37 +01:00
Marc Gilleron 08bc5095d1 Removed old code 2022-09-03 17:51:47 +01:00
Marc Gilleron fbceed3666 Fix errors in unused template functions 2022-09-03 17:46:20 +01:00
Marc Gilleron 191c963e2a Merge branch 'master' into storage_refactoring 2022-09-03 17:22:41 +01:00
Marc Gilleron e7ab73e9d9 Bind missing enum 2022-09-01 18:44:08 +01:00
Marc Gilleron 370fff2f8f Cache lod count 2022-08-30 21:10:32 +01:00
Marc Gilleron b21ca8e0f7 Comments 2022-08-30 19:29:30 +01:00
Marc Gilleron afd81e4a24 Migrate VoxelTerrain to use the new VoxelData. UNTESTED 2022-08-29 23:34:00 +01:00
Marc Gilleron 7a8e605430 Switch RWLock to a Mutex 2022-08-29 16:18:34 +01:00
Marc Gilleron 5dbb94263b Comments 2022-08-29 16:18:15 +01:00
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 d2b20f676e Removed default values from VoxelDataMap 2022-08-28 23:07:36 +01:00
Marc Gilleron 414aea52f3 Replaced VoxelDataMap with VoxelData in VoxelLodTerrain 2022-08-28 20:45:42 +01:00
Marc Gilleron 4fb5e5cae3 Removed `get_size_x/y/z` convenience functions.
They existed because Godot used to have only floating-point Vector3.
Now Godot has Vector3i so get_size() returns the right type.

Also, there was a bug in their implementation.
2022-08-25 22:14:21 +01:00
Marc Gilleron c7c14d2e17 Added `do_graph` to VoxelToolLodTerrain 2022-08-23 22:58:20 +01:00
Marc Gilleron f535e7c089 Remove a few verbose prints, they spam too much 2022-08-23 21:00:51 +01:00
Marc Gilleron cbf7b96e3a Buffer should have been const 2022-08-23 20:59:11 +01:00
Marc Gilleron 0b26071663 Support edited voxels in distance normalmaps 2022-08-09 23:56:38 +01:00
Marc Gilleron 66cf6e1539 Error message tweak 2022-08-09 23:55:47 +01:00
Marc Gilleron b0cd02a2ef Support modifiers in distance normalmaps 2022-08-07 23:03:45 +01:00
Marc Gilleron f160891b5d Callable::call was renamed callp 2022-08-01 00:07:51 +01:00
Marc Gilleron 1c8ecc1b89 Fix debug drawing of edited data blocks showing non-edited data blocks 2022-07-23 00:05:25 +01:00
Marc Gilleron b7d5ff20a8 Added `do_hemisphere` to terrain tools 2022-07-16 17:45:00 +01:00
Marc Gilleron 7634df561e TODO, I'm not sure what to do about this 2022-07-03 03:25:57 +01:00
Marc Gilleron 392c335956 Fix crashing/not working edition in VoxelLodTerrain 2022-06-25 22:48:39 +01:00
Marc Gilleron bea011c323 Profile buffer modifier 2022-06-19 21:41:32 +01:00
Marc Gilleron 86ba74ce3a Some changes and fixes related modifiers
- VoxelLodTerrain no longer caches generated voxels by default, so
  generating on the fly is no longer exclusive to full load mode.
  Might add an option later, but not for now (VoxelTerrain is still
  unaffected and keeps caching them)
- The "Cached" state is represented with blocks having no voxel data,
  so it needs extra checks in some areas to avoid null access
- Fix generate task was not including modifiers after the base generator
- The "save_generator_output" option on streams now means such blocks are
  considered edited
- Modifying modifiers now clears cached generated blocks
  intersecting with them.
- Fix "re-generate" was erasing the internal stack of modifiers
- Added docs
2022-06-18 23:14:18 +01:00
Marc Gilleron 714525724f Fix edited flag setter 2022-06-18 19:40:11 +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 a9917668c4 Fix reorder warning 2022-06-09 00:17:44 +01:00
Marc Gilleron a891e3371f Fix warning about comparing enums of different types (I hope) 2022-06-08 20:43:43 +01:00
Marc Gilleron 177d7a99c9 Added basic stack tracking for memory pool allocations 2022-06-06 21:54:20 +01:00
Marc Gilleron 5c716e360d Macros replacement 2022-06-04 03:36:42 +01:00
Marc Gilleron abdcb4c7d5 Storing position on VoxelDataBlock isn't necessary 2022-06-04 02:44:00 +01:00
Marc Gilleron f34d87d305 Simplified data VoxelDataMap structure 2022-06-04 02:23:56 +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 76fa8c9c50 Unnecessary include 2022-05-02 17:01:14 +01:00
Marc Gilleron 3c17c786bf Added debug function to debug-print 3D SDF as colored image slices 2022-05-02 14:51:53 +01:00
Marc Gilleron af460853d3 Fix comparison 2022-04-24 17:27:21 +01:00
Marc Gilleron cf7e075e8a Fix macros to compile release 2022-04-24 17:27:06 +01:00
Marc Gilleron 6fa4416984 Use generic error macros in storage funcs 2022-04-19 01:14:40 +01:00
Marc Gilleron 4e3d4d4ed8 Threading classes wrappers 2022-04-19 00:32:37 +01:00
Marc Gilleron 3d81a52ccb Convention for type indices 2022-04-18 20:19:02 +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 8aec9cf777 VoxelBufferInternal doesnt depend on Image 2022-04-16 16:07:45 +01:00
Marc Gilleron 8cd51d3d68 Fix missing header for GCC (4) 2022-04-16 00:53:45 +01:00
Marc Gilleron bfa24402ac Renamed util/funcs.h => container_funcs.h 2022-04-14 21:43:45 +01:00
Marc Gilleron ec90ea9f77 Fix some macros 2022-04-14 21:22:32 +01:00