[Bf-blender-cvs] [102eff0bd45] master: Fix T84382: Geometry Nodes: Vertex group attributes are removed

Hans Goudey noreply at git.blender.org
Tue Jan 5 00:07:18 CET 2021


Commit: 102eff0bd45e9bce2d1e98f7e3c7e91f9d36df15
Author: Hans Goudey
Date:   Mon Jan 4 17:07:10 2021 -0600
Branches: master
https://developer.blender.org/rB102eff0bd45e9bce2d1e98f7e3c7e91f9d36df15

Fix T84382: Geometry Nodes: Vertex group attributes are removed

In the report, the geometry is copied because it has two users and the
final join node needs to write to it. The join node also happens to
remove attributes apparently, because it exposed a mistake in the "copy"
method of the `MeshComponent` class. The copy is supposed to be
a deep copy, but the vertex group name map was not duplicated.

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

===================================================================

M	source/blender/blenkernel/intern/geometry_set.cc

===================================================================

diff --git a/source/blender/blenkernel/intern/geometry_set.cc b/source/blender/blenkernel/intern/geometry_set.cc
index e6a67b191f8..2a21a60ccc6 100644
--- a/source/blender/blenkernel/intern/geometry_set.cc
+++ b/source/blender/blenkernel/intern/geometry_set.cc
@@ -283,6 +283,7 @@ GeometryComponent *MeshComponent::copy() const
   if (mesh_ != nullptr) {
     new_component->mesh_ = BKE_mesh_copy_for_eval(mesh_, false);
     new_component->ownership_ = GeometryOwnershipType::Owned;
+    new_component->vertex_group_names_ = blender::Map(vertex_group_names_);
   }
   return new_component;
 }



More information about the Bf-blender-cvs mailing list