Blender Git Commit Log

Git Commits -> Revision 1688450

June 23, 2021, 22:42 (GMT)
Refactor: Move vertex group names to object data (WIP)

As explained in T88951, the list of vertex group names is currently
stored separately per object, even though vertex group data is stored
on the geometry. This tends to complicate code and cause bugs,
especially as geometry is created procedurally and tied less closely
to objects.

This commit moves the storage of `bDeformGroup` to `Mesh`, `Lattice`,
and `bGPdata` instead of `Object`. In order to avoid dramatically
changing existing code, I introduced a helper function to access the
list of names given just the object.

TODO:
- Move the active group index to the object as well.
- Possibly move the Python API for vertex groups to object data.

Differential Revision: https://developer.blender.org/D11689

Commit Details:

Full Hash: 1688450fa9f63cc754662982a0e3f2a556f348a5
Parent Commit: dbc054b
Lines Changed: +515, -374

65 Modified Paths:

/release/scripts/startup/bl_ui/properties_data_mesh.py (+0, -1) (Diff)
/source/blender/blenkernel/BKE_blender_version.h (+1, -1) (Diff)
/source/blender/blenkernel/BKE_deform.h (+4, -0) (Diff)
/source/blender/blenkernel/BKE_geometry_set.hh (+0, -10) (Diff)
/source/blender/blenkernel/intern/armature_deform.c (+3, -2) (Diff)
/source/blender/blenkernel/intern/deform.c (+92, -23) (Diff)
/source/blender/blenkernel/intern/DerivedMesh.cc (+3, -17) (Diff)
/source/blender/blenkernel/intern/geometry_component_mesh.cc (+16, -56) (Diff)
/source/blender/blenkernel/intern/geometry_set_instances.cc (+0, -1) (Diff)
/source/blender/blenkernel/intern/gpencil.c (+12, -3) (Diff)
/source/blender/blenkernel/intern/key.c (+2, -1) (Diff)
/source/blender/blenkernel/intern/lattice.c (+6, -0) (Diff)
/source/blender/blenkernel/intern/mesh.c (+12, -0) (Diff)
/source/blender/blenkernel/intern/object.c (+5, -11) (Diff)
/source/blender/blenkernel/intern/object_deform.c (+43, -23) (Diff)
/source/blender/blenloader/intern/versioning_300.c (+37, -0) (Diff)
/source/blender/draw/engines/overlay/overlay_armature.c (+6, -5) (Diff)
/source/blender/draw/intern/draw_cache.c (+1, -1) (Diff)
/source/blender/draw/intern/draw_cache_impl_gpencil.c (+1, -1) (Diff)
/source/blender/draw/intern/draw_cache_impl_mesh.c (+1, -1) (Diff)
/source/blender/editors/armature/armature_skinning.c (+2, -1) (Diff)
/source/blender/editors/gpencil/gpencil_armature.c (+3, -2) (Diff)
/source/blender/editors/gpencil/gpencil_data.c (+22, -18) (Diff)
/source/blender/editors/gpencil/gpencil_fill.c (+2, -1) (Diff)
/source/blender/editors/gpencil/gpencil_paint.c (+1, -1) (Diff)
/source/blender/editors/gpencil/gpencil_primitive.c (+2, -1) (Diff)
/source/blender/editors/gpencil/gpencil_sculpt_paint.c (+1, -1) (Diff)
/source/blender/editors/gpencil/gpencil_utils.c (+4, -4) (Diff)
/source/blender/editors/gpencil/gpencil_weight_paint.c (+2, -2) (Diff)
/source/blender/editors/lattice/editlattice_select.c (+1, -1) (Diff)
/source/blender/editors/mesh/editmesh_select.c (+3, -1) (Diff)
/source/blender/editors/mesh/editmesh_select_similar.c (+9, -4) (Diff)
/source/blender/editors/mesh/meshtools.c (+14, -12) (Diff)
/source/blender/editors/object/object_data_transfer.c (+4, -2) (Diff)
/source/blender/editors/object/object_hook.c (+2, -1) (Diff)
/source/blender/editors/object/object_intern.h (+0, -1) (Diff)
/source/blender/editors/object/object_ops.c (+0, -1) (Diff)
/source/blender/editors/object/object_vgroup.c (+64, -86) (Diff)
/source/blender/editors/sculpt_paint/paint_utils.c (+1, -1) (Diff)
/source/blender/editors/sculpt_paint/paint_vertex.c (+4, -4) (Diff)
/source/blender/editors/sculpt_paint/paint_vertex_weight_ops.c (+5, -5) (Diff)
/source/blender/editors/sculpt_paint/paint_vertex_weight_utils.c (+8, -4) (Diff)
/source/blender/editors/space_outliner/outliner_tree.c (+14, -10) (Diff)
/source/blender/editors/space_spreadsheet/spreadsheet_data_source_geometry.cc (+0, -2) (Diff)
/source/blender/editors/space_view3d/view3d_buttons.c (+3, -1) (Diff)
/source/blender/gpencil_modifiers/intern/lineart/lineart_cpu.c (+1, -1) (Diff)
/source/blender/io/collada/ControllerExporter.cpp (+12, -11) (Diff)
/source/blender/io/collada/ControllerExporter.h (+5, -5) (Diff)
/source/blender/io/collada/SkinInfo.cpp (+3, -1) (Diff)
/source/blender/makesdna/DNA_gpencil_types.h (+3, -0) (Diff)
/source/blender/makesdna/DNA_lattice_types.h (+2, -0) (Diff)
/source/blender/makesdna/DNA_mesh_types.h (+6, -3) (Diff)
/source/blender/makesdna/DNA_object_types.h (+3, -2) (Diff)
/source/blender/makesrna/intern/rna_modifier.c (+7, -4) (Diff)
/source/blender/makesrna/intern/rna_object.c (+35, -9) (Diff)
/source/blender/makesrna/intern/rna_particle.c (+4, -2) (Diff)
/source/blender/modifiers/intern/MOD_armature.c (+3, -1) (Diff)
/source/blender/modifiers/intern/MOD_mask.cc (+5, -3) (Diff)
/source/blender/modifiers/intern/MOD_nodes.cc (+1, -2) (Diff)
/source/blender/modifiers/intern/MOD_weightvgedit.c (+2, -1) (Diff)
/source/blender/modifiers/intern/MOD_weightvgmix.c (+2, -1) (Diff)
/source/blender/modifiers/intern/MOD_weightvgproximity.c (+2, -1) (Diff)
/source/blender/nodes/geometry/nodes/node_geo_delete_geometry.cc (+1, -1) (Diff)
/source/blender/nodes/geometry/nodes/node_geo_subdivide.cc (+1, -1) (Diff)
/source/blender/nodes/geometry/nodes/node_geo_subdivision_surface.cc (+1, -1) (Diff)
By: Miika HämäläinenLast update: Nov-07-2014 14:18MiikaHweb | 2003-2021