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)

2 Deleted Paths:

/source/blender/blenkernel/BKE_node_ui_storage.hh (+0, -133)
/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)
Tehnyt: Miika HämäläinenViimeksi päivitetty: 07.11.2014 14:18MiikaH:n Sivut a.k.a. MiikaHweb | 2003-2021