Blender Git Loki
Git Commits -> Revision 68c3f8d
Revision 68c3f8d by Kévin Dietrich (subdivision_work) August 3, 2021, 01:14 (GMT) |
First pass at implementing a CPU evaluation from the depsgraph. Operators needing the surface of the subdivided mesh on the CPU can do so by triggering a depsgraph update using ID_RECALC_SUBDIVISION. This will update the objects and carry information down to the modifier to do the evaluation on the CPU. |
Commit Details:
Full Hash: 68c3f8db368b6eaa5b12b0dfe05102795879c7b1
Parent Commit: 66f6ded
Lines Changed: +194, -28
25 Modified Paths:
/source/blender/blenkernel/BKE_DerivedMesh.h (+2, -1) (Diff)
/source/blender/blenkernel/BKE_modifier.h (+2, -0) (Diff)
/source/blender/blenkernel/BKE_object.h (+4, -2) (Diff)
/source/blender/blenkernel/intern/crazyspace.c (+1, -1) (Diff)
/source/blender/blenkernel/intern/DerivedMesh.cc (+64, -14) (Diff)
/source/blender/blenkernel/intern/object.c (+1, -1) (Diff)
/source/blender/blenkernel/intern/object_update.c (+11, -5) (Diff)
/source/blender/depsgraph/DEG_depsgraph.h (+3, -0) (Diff)
/source/blender/depsgraph/intern/builder/deg_builder_nodes.cc (+9, -1) (Diff)
/source/blender/depsgraph/intern/debug/deg_debug_relations_graphviz.cc (+2, -1) (Diff)
/source/blender/depsgraph/intern/depsgraph.cc (+1, -0) (Diff)
/source/blender/depsgraph/intern/depsgraph.h (+3, -0) (Diff)
/source/blender/depsgraph/intern/depsgraph_tag.cc (+68, -0) (Diff)
/source/blender/depsgraph/intern/depsgraph_tag.h (+3, -0) (Diff)
/source/blender/depsgraph/intern/depsgraph_type.h (+2, -0) (Diff)
/source/blender/depsgraph/intern/eval/deg_eval.cc (+1, -0) (Diff)
/source/blender/depsgraph/intern/node/deg_node.cc (+4, -0) (Diff)
/source/blender/depsgraph/intern/node/deg_node.h (+2, -0) (Diff)
/source/blender/depsgraph/intern/node/deg_node_component.cc (+2, -0) (Diff)
/source/blender/depsgraph/intern/node/deg_node_component.h (+1, -0) (Diff)
/source/blender/depsgraph/intern/node/deg_node_operation.cc (+1, -0) (Diff)
/source/blender/editors/object/object_bake_api.c (+1, -1) (Diff)
/source/blender/editors/transform/transform.c (+3, -0) (Diff)
/source/blender/makesdna/DNA_ID.h (+2, -0) (Diff)
/source/blender/modifiers/intern/MOD_subsurf.c (+1, -1) (Diff)
/source/blender/blenkernel/BKE_modifier.h (+2, -0) (Diff)
/source/blender/blenkernel/BKE_object.h (+4, -2) (Diff)
/source/blender/blenkernel/intern/crazyspace.c (+1, -1) (Diff)
/source/blender/blenkernel/intern/DerivedMesh.cc (+64, -14) (Diff)
/source/blender/blenkernel/intern/object.c (+1, -1) (Diff)
/source/blender/blenkernel/intern/object_update.c (+11, -5) (Diff)
/source/blender/depsgraph/DEG_depsgraph.h (+3, -0) (Diff)
/source/blender/depsgraph/intern/builder/deg_builder_nodes.cc (+9, -1) (Diff)
/source/blender/depsgraph/intern/debug/deg_debug_relations_graphviz.cc (+2, -1) (Diff)
/source/blender/depsgraph/intern/depsgraph.cc (+1, -0) (Diff)
/source/blender/depsgraph/intern/depsgraph.h (+3, -0) (Diff)
/source/blender/depsgraph/intern/depsgraph_tag.cc (+68, -0) (Diff)
/source/blender/depsgraph/intern/depsgraph_tag.h (+3, -0) (Diff)
/source/blender/depsgraph/intern/depsgraph_type.h (+2, -0) (Diff)
/source/blender/depsgraph/intern/eval/deg_eval.cc (+1, -0) (Diff)
/source/blender/depsgraph/intern/node/deg_node.cc (+4, -0) (Diff)
/source/blender/depsgraph/intern/node/deg_node.h (+2, -0) (Diff)
/source/blender/depsgraph/intern/node/deg_node_component.cc (+2, -0) (Diff)
/source/blender/depsgraph/intern/node/deg_node_component.h (+1, -0) (Diff)
/source/blender/depsgraph/intern/node/deg_node_operation.cc (+1, -0) (Diff)
/source/blender/editors/object/object_bake_api.c (+1, -1) (Diff)
/source/blender/editors/transform/transform.c (+3, -0) (Diff)
/source/blender/makesdna/DNA_ID.h (+2, -0) (Diff)
/source/blender/modifiers/intern/MOD_subsurf.c (+1, -1) (Diff)