Blender Git Commit Log

Git Commits -> Revision 0081200

Revision 0081200 by Jacques Lucke (master)
August 20, 2021, 11:14 (GMT)
Functions: remove multi-function network

The multi-function network system was able to compose multiple
multi-functions into a new one and to evaluate that efficiently.
This functionality was heavily used by the particle nodes prototype
a year ago. However, since then we only used multi-functions
without the need to compose them in geometry nodes.

The upcoming "fields" in geometry nodes will need a way to
compose multi-functions again. Unfortunately, the code removed
in this commit was not ideal for this different kind of function
composition. I've been working on an alternative that will be added
separately when it becomes needed.

I've had to update all the function nodes, because their interface
depended on the multi-function network data structure a bit.
The actual multi-function implementations are still the same though.

Commit Details:

Full Hash: 00812008129bdab48d328775b09332af12118867
Parent Commit: 7d8c71e
Lines Changed: +534, -3973

3 Added Paths:

/source/blender/functions/tests/FN_multi_function_test_common.hh (+174, -0) (View)
/source/blender/nodes/intern/node_multi_function.cc (+40, -0) (View)
/source/blender/nodes/NOD_multi_function.hh (+130, -0) (View)

11 Deleted Paths:

/source/blender/functions/FN_multi_function_network.hh (+0, -536)
/source/blender/functions/FN_multi_function_network_evaluation.hh (+0, -62)
/source/blender/functions/FN_multi_function_network_optimization.hh (+0, -29)
/source/blender/functions/intern/multi_function_network.cc (+0, -330)
/source/blender/functions/intern/multi_function_network_evaluation.cc (+0, -1083)
/source/blender/functions/intern/multi_function_network_optimization.cc (+0, -501)
/source/blender/functions/tests/FN_multi_function_network_test.cc (+0, -280)
/source/blender/nodes/intern/node_tree_multi_function.cc (+0, -409)
/source/blender/nodes/intern/type_callbacks.cc (+0, -60)
/source/blender/nodes/NOD_node_tree_multi_function.hh (+0, -390)
/source/blender/nodes/NOD_type_callbacks.hh (+0, -34)

31 Modified Paths:

/source/blender/blenkernel/BKE_node.h (+5, -10) (Diff)
/source/blender/blenkernel/intern/simulation.cc (+0, -4) (Diff)
/source/blender/functions/CMakeLists.txt (+0, -7) (Diff)
/source/blender/functions/FN_generic_virtual_array.hh (+1, -1) (Diff)
/source/blender/functions/FN_multi_function_signature.hh (+15, -0) (Diff)
/source/blender/functions/tests/FN_multi_function_test.cc (+4, -88) (Diff)
/source/blender/modifiers/intern/MOD_nodes.cc (+3, -2) (Diff)
/source/blender/modifiers/intern/MOD_nodes_evaluator.cc (+1, -1) (Diff)
/source/blender/modifiers/intern/MOD_nodes_evaluator.hh (+4, -2) (Diff)
/source/blender/nodes/CMakeLists.txt (+2, -4) (Diff)
/source/blender/nodes/function/nodes/node_fn_boolean_math.cc (+10, -9) (Diff)
/source/blender/nodes/function/nodes/node_fn_float_compare.cc (+13, -12) (Diff)
/source/blender/nodes/function/nodes/node_fn_float_to_int.cc (+10, -9) (Diff)
/source/blender/nodes/function/nodes/node_fn_input_string.cc (+6, -6) (Diff)
/source/blender/nodes/function/nodes/node_fn_input_vector.cc (+4, -6) (Diff)
/source/blender/nodes/function/nodes/node_fn_random_float.cc (+5, -4) (Diff)
/source/blender/nodes/function/node_function_util.hh (+1, -1) (Diff)
/source/blender/nodes/intern/node_geometry_exec.cc (+0, -1) (Diff)
/source/blender/nodes/intern/node_socket.cc (+0, -1) (Diff)
/source/blender/nodes/shader/nodes/node_shader_clamp.cc (+3, -3) (Diff)
/source/blender/nodes/shader/nodes/node_shader_curves.cc (+8, -6) (Diff)
/source/blender/nodes/shader/nodes/node_shader_map_range.cc (+4, -4) (Diff)
/source/blender/nodes/shader/nodes/node_shader_math.cc (+40, -27) (Diff)
/source/blender/nodes/shader/nodes/node_shader_mixRgb.cc (+3, -3) (Diff)
/source/blender/nodes/shader/nodes/node_shader_sepcombRGB.cc (+4, -4) (Diff)
/source/blender/nodes/shader/nodes/node_shader_sepcombXYZ.cc (+4, -4) (Diff)
/source/blender/nodes/shader/nodes/node_shader_valToRgb.cc (+4, -3) (Diff)
/source/blender/nodes/shader/nodes/node_shader_value.cc (+3, -3) (Diff)
/source/blender/nodes/shader/nodes/node_shader_vector_math.cc (+14, -14) (Diff)
/source/blender/nodes/shader/nodes/node_shader_vector_rotate.cc (+18, -19) (Diff)
/source/blender/nodes/shader/node_shader_util.h (+1, -1) (Diff)
By: Miika HämäläinenLast update: Nov-07-2014 14:18MiikaHweb | 2003-2021