[Bf-blender-cvs] [94205e1d029] blender-v3.2-release: Fix T96822: Cycles motion blur + persistent data not updating properly
Brecht Van Lommel
noreply at git.blender.org
Tue May 3 22:34:28 CEST 2022
Commit: 94205e1d029511b2ab714a53d84de8c50a70fb39
Author: Brecht Van Lommel
Date: Tue May 3 21:54:18 2022 +0200
Branches: blender-v3.2-release
https://developer.blender.org/rB94205e1d029511b2ab714a53d84de8c50a70fb39
Fix T96822: Cycles motion blur + persistent data not updating properly
At the frame before/after an object starts moving, it's transform may not be
modified but its motion would be and requires an update.
===================================================================
M intern/cycles/scene/object.cpp
===================================================================
diff --git a/intern/cycles/scene/object.cpp b/intern/cycles/scene/object.cpp
index 676cc78a11f..8015be6393b 100644
--- a/intern/cycles/scene/object.cpp
+++ b/intern/cycles/scene/object.cpp
@@ -220,7 +220,7 @@ void Object::tag_update(Scene *scene)
}
if (geometry) {
- if (tfm_is_modified()) {
+ if (tfm_is_modified() || motion_is_modified()) {
flag |= ObjectManager::TRANSFORM_MODIFIED;
}
@@ -480,7 +480,7 @@ void ObjectManager::device_update_object_transform(UpdateObjectTransformState *s
kobject.motion_offset = state->motion_offset[ob->index];
/* Decompose transforms for interpolation. */
- if (ob->tfm_is_modified() || update_all) {
+ if (ob->tfm_is_modified() || ob->motion_is_modified() || update_all) {
DecomposedTransform *decomp = state->object_motion + kobject.motion_offset;
transform_motion_decompose(decomp, ob->motion.data(), ob->motion.size());
}
More information about the Bf-blender-cvs
mailing list