Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.blender.org/blender.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJacques Lucke <jacques@blender.org>2022-07-26 15:59:40 +0300
committerJacques Lucke <jacques@blender.org>2022-07-26 15:59:40 +0300
commit72f77598a2453afa999046c8092d476a3f412aa1 (patch)
tree31186d44c727036f1aa9c67c435afdb85c8c88bc /source/blender
parentac1554bcf63ee0eb6765cb9c7689e44a27afd067 (diff)
Fix T98798: tag collection geometry when changing instance offset
Changing the instance offset moves the entire "collection geometry". So other features that depend on the geometry should be reevaluated.
Diffstat (limited to 'source/blender')
-rw-r--r--source/blender/makesrna/intern/rna_collection.c10
1 files changed, 9 insertions, 1 deletions
diff --git a/source/blender/makesrna/intern/rna_collection.c b/source/blender/makesrna/intern/rna_collection.c
index 8cd83ddcf12..4657f7e9a9f 100644
--- a/source/blender/makesrna/intern/rna_collection.c
+++ b/source/blender/makesrna/intern/rna_collection.c
@@ -359,6 +359,14 @@ static void rna_Collection_color_tag_update(Main *UNUSED(bmain),
WM_main_add_notifier(NC_SCENE | ND_LAYER_CONTENT, scene);
}
+static void rna_Collection_instance_offset_update(Main *UNUSED(bmain),
+ Scene *UNUSED(scene),
+ PointerRNA *ptr)
+{
+ Collection *collection = (Collection *)ptr->data;
+ DEG_id_tag_update(&collection->id, ID_RECALC_GEOMETRY);
+}
+
#else
/* collection.objects */
@@ -433,7 +441,7 @@ void RNA_def_collections(BlenderRNA *brna)
RNA_def_property_ui_text(
prop, "Instance Offset", "Offset from the origin to use when instancing");
RNA_def_property_ui_range(prop, -10000.0, 10000.0, 10, RNA_TRANSLATION_PREC_DEFAULT);
- RNA_def_property_update(prop, NC_OBJECT | ND_DRAW, NULL);
+ RNA_def_property_update(prop, NC_OBJECT | ND_DRAW, "rna_Collection_instance_offset_update");
prop = RNA_def_property(srna, "objects", PROP_COLLECTION, PROP_NONE);
RNA_def_property_struct_type(prop, "Object");