[Bf-blender-cvs] [77834aff223] master: Fix T89397: animation in geometry nodes modifier does not update

Jacques Lucke noreply at git.blender.org
Wed Jul 7 11:01:48 CEST 2021


Commit: 77834aff223e49eaa3abed56fb120aeca302a0e0
Author: Jacques Lucke
Date:   Wed Jul 7 10:56:45 2021 +0200
Branches: master
https://developer.blender.org/rB77834aff223e49eaa3abed56fb120aeca302a0e0

Fix T89397: animation in geometry nodes modifier does not update

The geometry nodes modifier uses id properties for the inputs to node groups.
That is because the set of properties changes depending on which geometry
node group is selected.

The animation was not updated correctly because the `ANIMATION_EVAL`
depsgraph node was not evaluated, because nothing depended on it in the
depsgraph. This patch makes sure that the proper link to the geometry
component is inserted.

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

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

M	source/blender/depsgraph/intern/builder/deg_builder_rna.cc

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

diff --git a/source/blender/depsgraph/intern/builder/deg_builder_rna.cc b/source/blender/depsgraph/intern/builder/deg_builder_rna.cc
index 54c51adec66..2ae29dea213 100644
--- a/source/blender/depsgraph/intern/builder/deg_builder_rna.cc
+++ b/source/blender/depsgraph/intern/builder/deg_builder_rna.cc
@@ -180,7 +180,8 @@ RNANodeIdentifier RNANodeQuery::construct_node_identifier(const PointerRNA *ptr,
   node_identifier.operation_name = "";
   node_identifier.operation_name_tag = -1;
   /* Handling of commonly known scenarios. */
-  if (prop != nullptr && RNA_property_is_idprop(prop)) {
+  if (prop != nullptr && RNA_property_is_idprop(prop) &&
+      !RNA_struct_is_a(ptr->type, &RNA_Modifier)) {
     node_identifier.type = NodeType::PARAMETERS;
     node_identifier.operation_code = OperationCode::ID_PROPERTY;
     node_identifier.operation_name = RNA_property_identifier(



More information about the Bf-blender-cvs mailing list