Page MenuHome

Make Single User: support object data animation
ClosedPublic

Authored by Philipp Oeser (lichtwerk) on Jun 23 2021, 1:26 PM.

Details

Summary

In addition to _object_ animation, now _object data_ (mesh, curve, ...)
can now be made single user as well.

This came up in T89369 and while it is possible to do this via the
Outliner [where all actions have to be selected individually], this
seems to be more convenient to be done from the 3DView.

ref. T89369

Diff Detail

Repository
rB Blender

Event Timeline

Philipp Oeser (lichtwerk) requested review of this revision.Jun 23 2021, 1:26 PM
Philipp Oeser (lichtwerk) created this revision.

I feel that it's now a bit too easy to get strange results. This is my test case:

So I have two separate objects (Cube, Cube.001) sharing the same data (CubeMesh). When I now choose Single UserObject Data Animation on Cube.001, the CubeMeshAction is duplicated to CubeMeshAction.001. So far so good. But, since the object data is shared, the new Action is assigned to CubeMesh, and both objects still have the same animation of their data:

Maybe it's enough to enfore "Object Data" when "Object Data Animation" is selected?

Sybren A. Stüvel (sybren) requested changes to this revision.Jul 2 2021, 2:35 PM
This revision now requires changes to proceed.Jul 2 2021, 2:35 PM

I feel that it's now a bit too easy to get strange results. This is my test case:

Yep, missed that, thx checking

Maybe it's enough to enfore "Object Data" when "Object Data Animation" is selected?

That makes sense to me, will update

Probably it is also good to check if the action has multiple users prior (otherwise all actions will be copied -- even the ones with only one user)

  • check action usercount prior (no copy is made for single-user actions now)
  • make obdata single user copies as well (otherwise duplicated actions will be assigned to the same shared obdata)
Sybren A. Stüvel (sybren) added inline comments.
source/blender/editors/object/object_relations.c
2665

I guess this shouldn't be here, it can be removed when committing the patch.

This revision is now accepted and ready to land.Jul 8 2021, 5:05 PM