diff options
author | Ton Roosendaal <ton@blender.org> | 2013-01-10 22:20:29 +0400 |
---|---|---|
committer | Ton Roosendaal <ton@blender.org> | 2013-01-10 22:20:29 +0400 |
commit | 70a59a326228af75e7daed0689f62900aef81a88 (patch) | |
tree | ed03b7245380ae53af9e02317b6d312cc9368cde /source/blender/makesrna/intern/rna_object.c | |
parent | c92be1a9a5491621b42f791e5c596494e1937254 (diff) |
Depsgraph hack feature - experimental
Many depsgraph failures are because some data in the graph is being
recalculated too early (or not at all).
Since we better support animators with working renders, here's a hack to
allow manual additional updates on frame changes.
In Property Editor, Object, Panel "Relations Extra" you now have two
buttons:
- Extra Object Update
- Extra Data Update
This will do an extra update of object and/or its data ONLY on frame changes.
Update happens as last.
Tested on files collected in Wiki todo, several cases now work OK, especially
the lags on updates.
Diffstat (limited to 'source/blender/makesrna/intern/rna_object.c')
-rw-r--r-- | source/blender/makesrna/intern/rna_object.c | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/source/blender/makesrna/intern/rna_object.c b/source/blender/makesrna/intern/rna_object.c index 80d74c3a9fe..a617c78019f 100644 --- a/source/blender/makesrna/intern/rna_object.c +++ b/source/blender/makesrna/intern/rna_object.c @@ -2469,6 +2469,15 @@ static void rna_def_object(BlenderRNA *brna) RNA_def_property_ui_text(prop, "Slow Parent Offset", "Delay in the parent relationship"); RNA_def_property_update(prop, NC_OBJECT | ND_TRANSFORM, "rna_Object_internal_update"); + /* depsgraph hack */ + prop = RNA_def_property(srna, "extra_recalc_object", PROP_BOOLEAN, PROP_NONE); + RNA_def_property_boolean_sdna(prop, NULL, "depsflag", OB_DEPS_EXTRA_OB_RECALC); + RNA_def_property_ui_text(prop, "Extra Object Update", "Refresh this object again on frame changes, dependency graph hack"); + + prop = RNA_def_property(srna, "extra_recalc_data", PROP_BOOLEAN, PROP_NONE); + RNA_def_property_boolean_sdna(prop, NULL, "depsflag", OB_DEPS_EXTRA_DATA_RECALC); + RNA_def_property_ui_text(prop, "Extra Data Update", "Refresh this object's data again on frame changes, dependency graph hack"); + /* duplicates */ prop = RNA_def_property(srna, "dupli_type", PROP_ENUM, PROP_NONE); RNA_def_property_enum_bitflag_sdna(prop, NULL, "transflag"); |