Blender Git Loki
Git Commits -> Revision 0153e99
Revision 0153e99 by Jacques Lucke (master) July 7, 2021, 09:20 (GMT) |
Geometry Nodes: refactor logging during geometry nodes evaluation Many ui features for geometry nodes need access to information generated during evaluation: * Node warnings. * Attribute search. * Viewer node. * Socket inspection (not in master yet). The way we logged the required information before had some disadvantages: * Viewer node used a completely separate system from node warnings and attribute search. * Most of the context of logged information is lost when e.g. the same node group is used multiple times. * A global lock was needed every time something is logged. This new implementation solves these problems: * All four mentioned ui features use the same underlying logging system. * All context information for logged values is kept intact. * Every thread has its own local logger. The logged informatiton is combined in the end. Differential Revision: https://developer.blender.org/D11785 |
Commit Details:
Full Hash: 0153e99780aef64913dfd4c323984874bf688249
Parent Commit: 77834af
Lines Changed: +829, -549
2 Added Paths:
/source/blender/nodes/intern/geometry_nodes_eval_log.cc (+330, -0) (View)
/source/blender/nodes/NOD_geometry_nodes_eval_log.hh (+291, -0) (View)
/source/blender/nodes/NOD_geometry_nodes_eval_log.hh (+291, -0) (View)
2 Deleted Paths:
/source/blender/blenkernel/BKE_node_ui_storage.hh (+0, -133)
/source/blender/blenkernel/intern/node_ui_storage.cc (+0, -169)
/source/blender/blenkernel/intern/node_ui_storage.cc (+0, -169)
18 Modified Paths:
/source/blender/blenkernel/BKE_object.h (+0, -4) (Diff)
/source/blender/blenkernel/CMakeLists.txt (+0, -2) (Diff)
/source/blender/blenkernel/intern/node.cc (+0, -9) (Diff)
/source/blender/blenkernel/intern/object.c (+0, -22) (Diff)
/source/blender/editors/space_node/CMakeLists.txt (+17, -0) (Diff)
/source/blender/editors/space_node/node_draw.cc (+39, -27) (Diff)
/source/blender/editors/space_node/node_geometry_attribute_search.cc (+46, -39) (Diff)
/source/blender/editors/space_spreadsheet/CMakeLists.txt (+1, -0) (Diff)
/source/blender/editors/space_spreadsheet/spreadsheet_data_source_geometry.cc (+16, -7) (Diff)
/source/blender/makesdna/DNA_modifier_types.h (+4, -0) (Diff)
/source/blender/makesdna/DNA_node_types.h (+0, -3) (Diff)
/source/blender/makesdna/DNA_object_types.h (+0, -6) (Diff)
/source/blender/modifiers/intern/MOD_nodes.cc (+33, -88) (Diff)
/source/blender/modifiers/intern/MOD_nodes_evaluator.cc (+36, -20) (Diff)
/source/blender/modifiers/intern/MOD_nodes_evaluator.hh (+4, -3) (Diff)
/source/blender/nodes/CMakeLists.txt (+3, -1) (Diff)
/source/blender/nodes/intern/node_geometry_exec.cc (+4, -13) (Diff)
/source/blender/nodes/NOD_geometry_exec.hh (+5, -3) (Diff)
/source/blender/blenkernel/CMakeLists.txt (+0, -2) (Diff)
/source/blender/blenkernel/intern/node.cc (+0, -9) (Diff)
/source/blender/blenkernel/intern/object.c (+0, -22) (Diff)
/source/blender/editors/space_node/CMakeLists.txt (+17, -0) (Diff)
/source/blender/editors/space_node/node_draw.cc (+39, -27) (Diff)
/source/blender/editors/space_node/node_geometry_attribute_search.cc (+46, -39) (Diff)
/source/blender/editors/space_spreadsheet/CMakeLists.txt (+1, -0) (Diff)
/source/blender/editors/space_spreadsheet/spreadsheet_data_source_geometry.cc (+16, -7) (Diff)
/source/blender/makesdna/DNA_modifier_types.h (+4, -0) (Diff)
/source/blender/makesdna/DNA_node_types.h (+0, -3) (Diff)
/source/blender/makesdna/DNA_object_types.h (+0, -6) (Diff)
/source/blender/modifiers/intern/MOD_nodes.cc (+33, -88) (Diff)
/source/blender/modifiers/intern/MOD_nodes_evaluator.cc (+36, -20) (Diff)
/source/blender/modifiers/intern/MOD_nodes_evaluator.hh (+4, -3) (Diff)
/source/blender/nodes/CMakeLists.txt (+3, -1) (Diff)
/source/blender/nodes/intern/node_geometry_exec.cc (+4, -13) (Diff)
/source/blender/nodes/NOD_geometry_exec.hh (+5, -3) (Diff)