Marc Gilleron
29c5141dda
Increase default clip threshold to reduce chance of artifacts
2021-03-27 16:39:21 +00:00
Marc Gilleron
4e1442cb0b
Added clipping debug option
2021-03-27 01:46:07 +00:00
Marc Gilleron
c7c24a3d95
Expose performance tuning parameters
2021-03-22 00:02:46 +00:00
Marc Gilleron
03bfc09e99
Implemented execution map to optimize out nodes locally
...
- Added optional optimization of execution map
- Added visualization of skipped nodes in the editor debug tool
2021-03-21 18:48:00 +00:00
Marc Gilleron
412f37e3e0
Exposed range analysis method
2021-03-14 18:46:38 +00:00
Marc Gilleron
826e104024
Added tool to inspect range analysis
2021-03-14 18:44:46 +00:00
Marc Gilleron
f1e2ea9ad4
Update to latest Godot's threading primitives
2021-02-19 01:30:22 +00:00
Marc Gilleron
6208699281
Added smooth union and subtraction
2021-02-18 23:29:00 +00:00
Marc Gilleron
f54b152e2d
Reduce locking of VoxelGeneratorGraph.
...
Generation hold its own shared pointer. If the user recompiles the graph,
the runtime is replaced with a new one, while the generator can finish
its current block with the old runtime without locking.
2021-01-17 20:02:06 +00:00
Marc Gilleron
7940b3b761
Made VoxelGeneratorGraph thread-safe
2021-01-16 13:51:01 +00:00
Marc Gilleron
1bb3d19e03
Use buffers to generate previews
2021-01-09 18:35:53 +00:00
Marc Gilleron
1e95374ccb
The graph runtime now suports arbitrary position buffers, instead of an XZ rectangle
2021-01-08 21:04:49 +00:00
Marc Gilleron
4a290f27c0
Removed bounds support, it not really relevant anymore
2021-01-05 22:24:13 +00:00
Marc Gilleron
825fa4147b
Main graph generator now uses buffers for blocks
2021-01-05 18:59:52 +00:00
Marc Gilleron
dafb4f39ff
First WIP to try per-buffer processing instead of per-voxel
2021-01-04 22:19:13 +00:00
Marc Gilleron
3364748fef
Integrate FastNoiseLite to voxel graph generator
2021-01-03 20:23:45 +00:00
Marc Gilleron
9e423a58f7
Voxel graph optimizations:
...
- Dynamically adjust SDF scaling to reduce terracing caused by storage resolution
- Optimize range analysis more aggressively
2020-12-24 23:16:34 +00:00
Marc Gilleron
d009049d4f
Added experimental functions to bake sphere maps from the generator
...
- The runtime API now works with float positions
- Fixed XZ optimization, cached positions were not assigned
2020-12-22 02:13:46 +00:00
Marc Gilleron
7c6bfe0dbc
Added Normalize node to voxel graph
2020-12-21 20:06:20 +00:00
Marc Gilleron
ae9abb0248
Added SdfSphereHeightmap node to graph generator
2020-12-21 02:00:31 +00:00
Marc Gilleron
44a1af2043
Don't crash if graph resources are null
2020-10-26 19:58:54 +00:00
Marc Gilleron
61f17ce96d
Formatting
2020-10-25 20:38:23 +00:00
Marc Gilleron
0cb8188eb7
Added ability to name graph nodes
2020-10-25 20:26:25 +00:00
Marc Gilleron
56aee87615
Added Select node to "conditionally" switch between two values
2020-07-11 17:03:09 +01:00
Marc Gilleron
b8c235fce3
Added preview nodes (has a few limitations, may fix them later)
2020-07-07 23:28:02 +01:00
Marc Gilleron
709ebbe056
Missing declaration for a part I accidentally committed earlier, meant to commit later
2020-07-07 18:53:54 +01:00
Marc Gilleron
bf96ec362f
Use the inspector to edit graph node properties, including sub-resources
2020-07-06 22:07:36 +01:00
Marc Gilleron
f73e566535
Added smoothstep
2020-04-05 19:53:07 +01:00
Marc Gilleron
9ce0ded22e
Added a bunch of operation types, untested
2020-03-20 00:21:09 +00:00
Marc Gilleron
4176894383
Editable default inputs
2020-03-08 19:23:48 +00:00
Marc Gilleron
d1f00537d5
Parameters are editable (not default inputs, need to do them after)
2020-03-08 00:46:55 +00:00
Marc Gilleron
43b99975f3
Loading and saving of voxel graphs
2020-03-07 01:34:30 +00:00
Marc Gilleron
fab3e791d8
Implement undo/redo, which also marks the resource as modified
2020-03-03 00:19:25 +00:00
Marc Gilleron
81909567be
Implemented add, remove, connect and disconnect nodes from editor
2020-03-02 00:15:54 +00:00
Marc Gilleron
a3b623ad3d
Optimize parts of the graph that only depend on X and Z, so they run in the outer loop
2020-02-29 22:35:55 +00:00
Marc Gilleron
a3b64c3983
A bit of reorganization:
...
- Merged VoxelGeneratorGraph::Node into ProgramGraph::Node
- Separated compilation and execution to its own class
2020-02-29 00:17:47 +00:00
Marc Gilleron
dcc53d9351
Added can_connect() and get_node_type_id()
2020-02-27 00:17:15 +00:00
Marc Gilleron
815954bc03
Added graph edition methods and exposed to script API
2020-02-24 23:03:41 +00:00
Marc Gilleron
f4a5b36fe9
Moved node DB to its own file
2020-02-23 19:08:14 +00:00
Marc Gilleron
c87dc49046
Implemented duplicate()
2020-02-23 02:50:04 +00:00
Marc Gilleron
927f7c4e3f
Moved interval.h to the math/ folder
2020-02-22 22:52:19 +00:00
Marc Gilleron
60fb709c1c
Added range analyzis to automatically find when a block will be uniform
2020-02-22 22:11:07 +00:00
Marc Gilleron
ce2b50fe1e
Added boundaries to avoid computing the graph in blocks it doesn't need to run
2020-02-21 00:08:26 +00:00
Marc Gilleron
af09121c9f
Fixed a bunch of things
2020-02-19 21:59:41 +00:00
Marc Gilleron
515751a3e6
WIP VoxelGeneratorGraph, compiled and untested
2020-02-19 19:26:14 +00:00