[Bf-blender-cvs] [82875131982] temp-geometry-nodes-mesh-modifier: don't make temporary mesh object, if the owner is a mesh itself

Jacques Lucke noreply at git.blender.org
Mon Dec 7 13:18:06 CET 2020


Commit: 828751319820176729548db2738687c6ddbf5a42
Author: Jacques Lucke
Date:   Mon Dec 7 13:16:25 2020 +0100
Branches: temp-geometry-nodes-mesh-modifier
https://developer.blender.org/rB828751319820176729548db2738687c6ddbf5a42

don't make temporary mesh object, if the owner is a mesh itself

This way, doing pointer comparison to check if the mesh object is active works.

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

M	source/blender/depsgraph/intern/depsgraph_query_iter.cc

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

diff --git a/source/blender/depsgraph/intern/depsgraph_query_iter.cc b/source/blender/depsgraph/intern/depsgraph_query_iter.cc
index 396a6b2cc14..1949b49bdca 100644
--- a/source/blender/depsgraph/intern/depsgraph_query_iter.cc
+++ b/source/blender/depsgraph/intern/depsgraph_query_iter.cc
@@ -153,6 +153,11 @@ bool deg_iterator_components_step(BLI_Iterator *iter)
     data->geometry_component_id++;
 
     /* The mesh component. */
+    if (data->geometry_component_owner->type == OB_MESH) {
+      iter->current = data->geometry_component_owner;
+      return true;
+    }
+
     const Mesh *mesh = geometry_set->get_mesh_for_read();
     if (mesh != nullptr) {
       Object *temp_object = &data->temp_geometry_component_object;



More information about the Bf-blender-cvs mailing list