204 Commits

Author SHA1 Message Date
Marc Gilleron
e462cd788a Optimized range analysis for images and spherical map lookups 2020-12-26 18:58:16 +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
510d25e604 Expose find_node_by_name 2020-10-29 00:42:55 +00:00
Marc Gilleron
44a1af2043 Don't crash if graph resources are null 2020-10-26 19:58:54 +00:00
Marc Gilleron
56b4b55b53 Fix missing return 2020-10-25 23:07:53 +00:00
Marc Gilleron
61f17ce96d Formatting 2020-10-25 20:38:23 +00:00
Marc Gilleron
b672013f00 Fix an occurrence of Variant uint64_t ambiguity for Mac builds 2020-10-25 20:27:09 +00:00
Marc Gilleron
0cb8188eb7 Added ability to name graph nodes 2020-10-25 20:26:25 +00:00
Marc Gilleron
d158a92f57 Show bounds and octrees of VoxelLodTerrain with debug drawing 2020-10-24 00:08:14 +01:00
Marc Gilleron
7405692f68 Unused code 2020-09-07 23:53:38 +01:00
Marc Gilleron
23ce65d789 Show terrain in editor, with option to turn it off. A scripted stream will turn it off by default. 2020-08-14 20:33:09 +01:00
menip
e64f5f882c Fix warnings
Wparentheses
Wsign-compare
Wreorder
2020-08-01 22:03:26 -07:00
Marc Gilleron
bc7ec0c966 Use last found SDF output and don't crash when there isn't any 2020-07-11 17:03:58 +01:00
Marc Gilleron
56aee87615 Added Select node to "conditionally" switch between two values 2020-07-11 17:03:09 +01:00
Marc Gilleron
0cac00e501 Fix preview nodes not working if they are the only output from their ancestor 2020-07-11 17:01:34 +01:00
Marc Gilleron
72c970e182 Alternate positions when profiling a graph to avoid XYZ optimization bias 2020-07-11 16:57:41 +01:00
Marc Gilleron
1cd0a491bb Fix graph not working if there is more than one terminal node (preview nodes) 2020-07-11 16:56:37 +01:00
Marc Gilleron
38aeb6959d Use C++ limits to be consistent with Interval 2020-07-11 03:24:32 +01:00
Marc Gilleron
1a08cd31d6 Use a macro to print debug stuff only in verbose mode 2020-07-08 20:48:52 +01:00
Marc Gilleron
6b63746135 Added categories 2020-07-08 01:26:12 +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
4ff29ce3ce Auto-compile graph on load so it's now working when launching the game 2020-07-07 18:56:06 +01:00
Marc Gilleron
3deb90b467 Fix alignment problems causing crashes when nodes holding a pointers were used 2020-07-07 18:55:05 +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
00fdd263c4 Fix wrong arguments to OpenSimplexNoise, caused array overrun 2020-07-07 18:52:29 +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
5aa7c4cbd6 Fix missing data in node type info dict 2020-02-26 22:26:22 +00:00
Marc Gilleron
815954bc03 Added graph edition methods and exposed to script API 2020-02-24 23:03:41 +00:00
Marc Gilleron
dbca01de59 Implemented more accurate noise range detection, moved range utils to their own file 2020-02-24 19:32:18 +00:00
Marc Gilleron
de3707ab6b Put some Interval functions in the same space as regular functions 2020-02-23 21:46:09 +00:00
Marc Gilleron
f785589ebe Implemented DFS in ProgramGraph, I might need it later 2020-02-23 21:05:04 +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
07905ba580 Renamed evaluate in ProgramGraph to a more descriptive name 2020-02-22 22:45:22 +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
258b211560 Fix box bounds going off charts 2020-02-21 20:27:18 +00:00