Blender Git Commit Log
Git Commits -> Revision 27da305
Revision 27da305 by Campbell Barton (master) June 24, 2021, 10:23 (GMT) |
Depsgraph: support flushing parameters without a full COW update Avoid computationally expensive copying operations when only some settings have been modified. This is done by adding support for updating parameters without tagging for copy-on-write. Currently only mesh data blocks are supported, other data-blocks can be added individually. This prepares for changing values such as edit-mesh auto-smooth angle in edit-mode without duplicating all mesh-data. The benefit will only be seen when the user interface no longer tags all ID's for copy on write updates. ID_RECALC_GEOMETRY_ALL_MODES has been added to support situations where non edit-mode geometry is modified in edit-mode. While this isn't something user are likely to do, Python scripts may change the underlying mesh. Reviewed By: sergey Ref D11377 |
Commit Details:
Full Hash: 27da305a404f72a75a37892e1ac080c6531d059b
Parent Commit: 67b352f
Lines Changed: +128, -11
1 Added Path:
/source/blender/blenkernel/intern/lib_id_eval.c (+48, -0) (View)
12 Modified Paths:
/source/blender/blenkernel/BKE_lib_id.h (+3, -0) (Diff)
/source/blender/blenkernel/CMakeLists.txt (+1, -0) (Diff)
/source/blender/blenkernel/intern/mesh_validate.c (+2, -2) (Diff)
/source/blender/blenkernel/intern/paint.c (+1, -1) (Diff)
/source/blender/depsgraph/intern/builder/deg_builder_nodes.cc (+13, -1) (Diff)
/source/blender/depsgraph/intern/depsgraph_tag.cc (+3, -0) (Diff)
/source/blender/depsgraph/intern/node/deg_node_component.h (+17, -1) (Diff)
/source/blender/editors/mesh/editmesh_tools.c (+1, -1) (Diff)
/source/blender/makesdna/DNA_ID.h (+21, -0) (Diff)
/source/blender/makesrna/intern/rna_mesh.c (+16, -3) (Diff)
/source/blender/makesrna/intern/rna_mesh_api.c (+1, -1) (Diff)
/source/blender/python/bmesh/bmesh_py_types.c (+1, -1) (Diff)
/source/blender/blenkernel/CMakeLists.txt (+1, -0) (Diff)
/source/blender/blenkernel/intern/mesh_validate.c (+2, -2) (Diff)
/source/blender/blenkernel/intern/paint.c (+1, -1) (Diff)
/source/blender/depsgraph/intern/builder/deg_builder_nodes.cc (+13, -1) (Diff)
/source/blender/depsgraph/intern/depsgraph_tag.cc (+3, -0) (Diff)
/source/blender/depsgraph/intern/node/deg_node_component.h (+17, -1) (Diff)
/source/blender/editors/mesh/editmesh_tools.c (+1, -1) (Diff)
/source/blender/makesdna/DNA_ID.h (+21, -0) (Diff)
/source/blender/makesrna/intern/rna_mesh.c (+16, -3) (Diff)
/source/blender/makesrna/intern/rna_mesh_api.c (+1, -1) (Diff)
/source/blender/python/bmesh/bmesh_py_types.c (+1, -1) (Diff)