Marc Gilleron
824a2955a9
Split VoxelGraphRuntime into several files
2022-04-15 16:09:35 +01:00
Marc Gilleron
bfa24402ac
Renamed util/funcs.h => container_funcs.h
2022-04-14 21:43:45 +01:00
Marc Gilleron
5a2624735e
Added experimental shader generation from voxel graph
2022-04-13 00:06:20 +01:00
Marc Gilleron
87d98e9162
Engine-agnostic error macros
2022-04-11 02:10:44 +01:00
Marc Gilleron
0cc3801655
Define smart pointers default allocator in a single place
2022-04-10 20:10:33 +01:00
Marc Gilleron
18584f4e87
Added per-node profiling info
2022-04-10 14:42:40 +01:00
Marc Gilleron
219c7bfda3
Changed prefix of profiling macros
2022-04-09 15:33:08 +01:00
Marc Gilleron
ab5d3a22d3
Abstract logging for verbose print
2022-04-09 15:00:34 +01:00
Marc Gilleron
5afab83cd6
Include less things from macros.h
2022-04-09 00:53:51 +01:00
Marc Gilleron
22f17f6294
Fix macro not usable in release builds
2022-04-07 22:33:21 +01:00
Marc Gilleron
6663fdad92
Fix signedness warning
2022-04-07 21:05:05 +01:00
Marc Gilleron
2fece1d892
VoxelGraphNodeDB::get_singleton() must not return null, changed to reference
2022-04-07 20:44:43 +01:00
Marc Gilleron
96224c2231
ProgramGraph::get_node() must not return null, changed to a reference
2022-04-07 20:35:11 +01:00
Marc Gilleron
5519054c01
Unify macro prefixes
2022-04-06 23:26:54 +01:00
Marc Gilleron
090d3485e5
Use unique pointers in ExpressionParser
2022-04-06 22:00:32 +01:00
Marc Gilleron
0e523f79fe
Added functions to expression node
2022-04-06 01:13:38 +01:00
Marc Gilleron
4634cfac0e
Merge branch 'master' into expression_node
2022-04-04 22:43:05 +01:00
Marc Gilleron
9c81ccc5ba
Use special TTR macro for non-editor code
...
Because TTR is not available in non-editor builds
2022-04-04 00:20:36 +01:00
Marc Gilleron
646cbacd64
Added Expression node to VoxelGeneratorGraph. Needs polishing.
...
Some things to do:
- Support function calls
- Show expression in the node GUI, eventually edit it there
- Optimize power function
2022-04-03 16:43:04 +01:00
Marc Gilleron
f631d8880c
Added configuration warnings to resources
2022-03-06 01:10:47 +00:00
Marc Gilleron
72e714e15b
Added OutputSingleTexture
node for outputting a single texture index per voxel
2022-02-27 22:07:42 +00:00
Marc Gilleron
6b6255e93d
This should be integer weights
2022-02-27 22:06:53 +00:00
Marc Gilleron
493b93a051
SDF is now encoded with inorm8 and inorm16
2022-02-26 22:51:29 +00:00
Marc Gilleron
0e54920afb
Replace existing connection if dragging from/to an input port having one already
2022-02-20 16:57:29 +00:00
Marc Gilleron
729b2a3391
Unnecessary includes
2022-02-20 13:31:25 +00:00
Marc Gilleron
b3faec2bef
Removed voxel_block_request.h, use specialized structs
2022-02-12 23:37:02 +00:00
Marc Gilleron
a9ba6e0056
Unconnected inputs show their default value directly on the node
2022-02-05 20:09:09 +00:00
Marc Gilleron
b8e8ba84b0
Added support for outputting to the TYPE channel from VoxelGeneratorGraph
2022-02-05 00:45:17 +00:00
Marc Gilleron
b67ca3d903
Namespaced every registered class
2022-01-09 22:16:44 +00:00
Marc Gilleron
9346b351fc
Merge branch 'godot4'
...
# Conflicts:
# doc/source/changelog.md
# editor/about_window.cpp
# generators/graph/image_range_grid.cpp
# generators/graph/range_utility.cpp
# generators/graph/voxel_generator_graph.cpp
# terrain/instancing/voxel_instance_generator.h
# util/voxel_raycast.h
2022-01-08 01:20:45 +00:00
Marc Gilleron
8d6a24833c
Fix changing node name not working
2022-01-07 23:40:46 +00:00
Marc Gilleron
e20684ce69
Namespaced math funcs
2022-01-03 23:14:18 +00:00
Marc Gilleron
a9476227cb
Namespaced Interval
2022-01-03 22:29:39 +00:00
Marc Gilleron
c0cda5d7a7
Use namespaces in some cpp files that would otherwise be in those namespaces (but aren't because they are registered classes)
2022-01-03 22:01:11 +00:00
Marc Gilleron
492f660831
Namespaced ProgramGraph
2022-01-03 04:47:05 +00:00
Marc Gilleron
4259ea5b80
Namespaced VoxelGraphRuntime
2022-01-03 04:29:53 +00:00
Marc Gilleron
e68f59643b
Namespaced VoxelGraphNodeDB
2022-01-03 03:55:44 +00:00
Marc Gilleron
0ff835d7ec
Namespace ProfilingClock
2022-01-03 01:40:13 +00:00
Marc Gilleron
1e89a7b75d
FastNoise2 conditional compilation
2021-12-31 21:22:30 +00:00
Marc Gilleron
c47050e29e
Optimize SDF slice copy
2021-12-31 21:14:38 +00:00
Marc Gilleron
204b64ac23
Added FastNoise2 to VoxelGeneratorGraph
2021-12-31 18:23:42 +00:00
Marc Gilleron
2f71b79904
More uses of Time singleton
2021-12-29 17:18:49 +00:00
Marc Gilleron
90c4692105
Fix setting node name
2021-12-28 19:25:21 +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
ca7ac42cde
Merge branch 'master' into full_load_mode
...
# Conflicts:
# edition/voxel_tool_lod_terrain.cpp
# generators/graph/voxel_generator_graph.cpp
# terrain/voxel_lod_terrain.cpp
2021-10-31 16:17: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
0fc9e6b313
Fix crash when given negative-size area
2021-10-29 18:25:52 +01:00
Marc Gilleron
e04091f3cb
Added full load mode to VoxelLodTerrain
...
With this mode enabled, editing anywhere becomes possible.
All edited blocks are loaded at once when the stream is assigned.
The generator is used on the fly to fill the gaps, instead of being
pre-emptively cached only nearby the viewer to allow editing.
Editing is still on the main thread, so this can cause stalls if
the generator is complex. There is also no controlled limit on how
much data gets loaded, so if edited data is larger than RAM, it will
not be playable. The feature is already quite usable, but more work
may be done for wider viability.
2021-10-03 01:48:07 +01:00
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
b8f21f91fc
Fix VoxelGeneratorGraph sub-resources not registered when duplicate() is used
2021-09-25 17:34:43 +01:00