150 Commits

Author SHA1 Message Date
Marc Gilleron
f77e570b68 Fix uninitialized channel variable in blocky editing 2022-07-18 21:14:02 +01:00
Marc Gilleron
5ca09d712e Renamed VoxelServer => VoxelEngine 2022-07-16 23:59:06 +01:00
Marc Gilleron
bc8e03c780 Fix comparison 2022-07-16 20:00:16 +01:00
Marc Gilleron
b7d5ff20a8 Added do_hemisphere to terrain tools 2022-07-16 17:45:00 +01:00
Marc Gilleron
c6372c4ae2 Remove non-implemented methods 2022-07-16 17:39:09 +01:00
Marc Gilleron
cc967105b2 apply_result is optional 2022-07-03 21:13:56 +01:00
Marc Gilleron
5c720cda66 Fix inconsistent result with integer do_sphere radius 2022-06-26 00:35:25 +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
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
87e00880ab Fix non-initialized variable 2022-06-08 21:36:37 +01:00
Marc Gilleron
58185147e3 Fix unused variables 2022-06-08 20:29:18 +01:00
Marc Gilleron
177d7a99c9 Added basic stack tracking for memory pool allocations 2022-06-06 21:54:20 +01:00
Marc Gilleron
6ab6f4a8b6 Unnecessary includes 2022-06-03 19:02:03 +01:00
Marc Gilleron
6aad611215 Moved methods outside Vector3f 2022-05-21 21:12:16 +01:00
Marc Gilleron
f03a0a0253 Renamed sign function to clarify what it does compared to a standard version 2022-05-21 20:38:34 +01:00
Marc Gilleron
d440b4f0d8 Wrap debug code 2022-05-14 16:11:44 +01:00
Marc Gilleron
a4abfc770c Fix variable shadowing warning 2022-05-11 22:24:29 +01:00
Marc Gilleron
409f26722b Increase default SDF resolution 2022-05-11 20:19:16 +01:00
Marc Gilleron
86d798abb2 Added floodfill SDF bake mode, less accurate but very fast 2022-05-10 21:15:32 +01:00
Marc Gilleron
948678a23a Added floodfill bake mode, faster approximation than the interp one 2022-05-08 02:57:46 +01:00
Marc Gilleron
668fedfa52 Fix copypasta 2022-05-07 22:27:52 +01:00
Marc Gilleron
8a7fdbfcf8 Fix signedness warnings 2022-05-07 22:27:35 +01:00
Marc Gilleron
4bc852e573 Fix shadowed variables 2022-05-07 22:27:11 +01:00
Marc Gilleron
3f25899cdf Unused variables 2022-05-07 22:26:23 +01:00
Marc Gilleron
35ddc51f18 Fix Basis::get_axis() was renamed to get_column() 2022-05-07 21:27:41 +01:00
Marc Gilleron
0924514adc Missing implementations 2022-05-07 20:48:39 +01:00
Marc Gilleron
dff7386186 Moved conversions to conv.h 2022-05-07 20:34:06 +01:00
Marc Gilleron
3289b44136 Made VoxelMeshSDF a resource so it can be saved and loaded 2022-05-05 20:57:34 +01:00
Marc Gilleron
e289e9da93 Fix and cleanup
- Remove some experimental code
- Fix edge case in boundary sign
- Optimize and re-use grid to space transform
2022-05-04 23:33:40 +01:00
Marc Gilleron
eb03e2df92 Expose boundary sign fix 2022-05-02 22:16:06 +01:00
Marc Gilleron
f30ac3fc2d Expose AABB 2022-05-02 21:39:44 +01:00
Marc Gilleron
0c0003ad35 Fix wrong method name 2022-05-02 19:49:50 +01:00
Marc Gilleron
cd9a9092cb Don't expose untested mode 2022-05-02 19:17:18 +01:00
Marc Gilleron
868ae90fbe Added VoxelMeshSDF and VoxelToolLodTerrain.stamp_sdf() 2022-05-02 19:14:12 +01:00
Marc Gilleron
2f2ab384a6 Better trilinear interpolation 2022-05-02 15:47:31 +01:00
Marc Gilleron
adbfd3b584 floor_to_int to emphasize the return value converts to int 2022-05-02 14:49:40 +01:00
Marc Gilleron
6b81e6ac9b Moved ops to funcs header 2022-04-29 23:27:50 +01:00
Marc Gilleron
a5e429de6f Moved some Vector3i function specializations to math:: namespace 2022-04-29 23:25:37 +01:00
Marc Gilleron
dc8aed91c3 Added color_to_u16 helper function 2022-04-21 18:50:28 +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
bfa24402ac Renamed util/funcs.h => container_funcs.h 2022-04-14 21:43:45 +01:00
Marc Gilleron
9c33eb17d4 Use custom error macros in transvoxel 2022-04-13 23:15:32 +01:00
Marc Gilleron
0cc3801655 Define smart pointers default allocator in a single place 2022-04-10 20:10:33 +01:00
Marc Gilleron
219c7bfda3 Changed prefix of profiling macros 2022-04-09 15:33:08 +01:00
Marc Gilleron
adb2cd2fe9 Return a ref, pointer must not be null 2022-04-09 15:15:22 +01:00
Marc Gilleron
ab5d3a22d3 Abstract logging for verbose print 2022-04-09 15:00:34 +01:00
Marc Gilleron
c4dddaa528 Remove unused function, use & references instead of Ref<T> 2022-04-07 19:44:29 +01:00
Marc Gilleron
5519054c01 Unify macro prefixes 2022-04-06 23:26:54 +01:00
Marc Gilleron
8d8d8b336d Moved VoxelLodTerrain and VoxelTerrain stuff to their own folders 2022-03-20 22:57:53 +00:00
Marc Gilleron
493b93a051 SDF is now encoded with inorm8 and inorm16 2022-02-26 22:51:29 +00:00