System Information:
Operating system: Linux 5.4.0-7626
Graphics card: GTX 1050ti 440.82
Blender Version:
Broken: 2.79, 2.82a, 2.83 ce76e17584ee (2020-05-08 14:49), 2.90 f2178b7f9740 (2020-05-09 18:47)
I have not tested any version older than 2.79 and I haven't tested the in-between releases of 2.80 and 2.81
Short description of error:
I ran a quick search and couldn't find any other reports covering this. I'm sorry if this is a duplicate.
When creating a linked duplicate of an object, its animation data for transformations will also be linked. I don't believe this is a bug, but it seems like unexpected behavior to me.
Here's a excerpt from the manual discussing linked duplicates:
You also have the choice of creating a Linked Duplicate rather than a Duplicate; this is called a deep link. This will create a new object with all of its data linked to the original object. If you modify one of the linked objects in Edit Mode, all linked copies are modified. Transform properties (object data-blocks) still remain copies, not links, so you still can rotate, scale, and move freely without affecting the other copies.
If one of these two cubes is rotated or rescaled in Object Mode, the other remains unchanged. The transform properties are copied, not linked.
If I'm reading that correctly, the manual is saying "Everything is linked" apart from transformation data. And animation data is not transformation data, so it should be linked (which I'm experiencing). However, the animation data can influence transformation data so it shouldn't be linked?
I found this "issue" because I had two of the exact same mesh that I wished to animate for a simple scene. I animated one, then created a linked duplicate of it and animated the other only to find that the original object had copied the animation data from the linked duplicate. I believe this is a "expected" use case of linked duplicates and is why I propose that the animation data isn't linked when creating a linked duplicate.
Example of what's going on (At the end of the video, I used undo to go back to a state when the objects had keyframes to show off that the linked objects do indeed share animation data):
Exact steps for others to reproduce the error:
- Start Blender.
- Keyframe the location, rotation, or scale of any object.
- Create a linked duplicate of that object with "Alt+D".
- If you then attempt to animate any of these values on the "Linked duplicate", then they will also apply to the original object. If you animate any of the values on the original object, it will also apply to the "linked duplicate". This is because the "linked duplicate" and "original" object have linked animation data (which you can see by checking the outliner).
Note: This does not happen if the "original object" had no animation data before a linked duplicate was made. This is because there is no animation data block to link.
Note: Animation data includes more than just transformations. It includes animation object visibility, viewport display color, etc (As far as I can tell, pretty much every setting in the "Object" panel in the properties editor). It also includes things like object constraints. But I believe having these linked probably isn't necessary. Correct me if I'm wrong.
In the meantime for myself and anyone else experiencing the issue, you can unlink the animation data by selecting from the top of the viewport: "Object>Relation>Make Single User>Object Animation"
