diff options
Diffstat (limited to 'source/blender/depsgraph/intern/builder/deg_builder_relations.cc')
-rw-r--r-- | source/blender/depsgraph/intern/builder/deg_builder_relations.cc | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/source/blender/depsgraph/intern/builder/deg_builder_relations.cc b/source/blender/depsgraph/intern/builder/deg_builder_relations.cc index 5f637a92069..14f9db767a9 100644 --- a/source/blender/depsgraph/intern/builder/deg_builder_relations.cc +++ b/source/blender/depsgraph/intern/builder/deg_builder_relations.cc @@ -1735,10 +1735,12 @@ void DepsgraphRelationBuilder::build_rigidbody(Scene *scene) } /* Final transform is whetever solver gave to us. */ - if (BKE_rigidbody_is_affected_by_simulation(object)) { + if (object->rigidbody_object->type == RBO_TYPE_ACTIVE) { /* We do not have to update the objects final transform after the simulation if it is * passive or controlled by the animation system in blender. - * (Bullet doesn't move the object at all in these cases) + * (Bullet doesn't move the object at all in these cases). + * But we can't update the depgraph when the animated property in changed during playback. + * So always assume that active bodies needs updating. */ OperationKey rb_transform_copy_key( &object->id, NodeType::TRANSFORM, OperationCode::RIGIDBODY_TRANSFORM_COPY); |