Page MenuHome

Library Override: Support editing of animation data in overriden data-blocks.
Confirmed, NormalPublicTO DO

Description

A complete support of anim data edition in library overrides data-blocks is a rather complex and heavy task. Here is a proposed split of it into milestones. Please note that not all of those milestones will get a defined release targets yet.

Milestone 0 - Already in master

  • Add or replace the active action of an override data-block.

Milestone 1 - Minimal Viable Product - 2.92

  • Support adding new NLA tracks to overrides that already have animdata from their linked reference data-block, and make those new tracks fully editable.
  • Enable overrides of some properties of existing animdata (like show/hide for NLA strips, tracks, fcurves, settings of drivers?).

Milestone 2 - Potential Extensions - ???
Those will require T82160: LibOverrides - Refactor how diffing of RNA collections is handled, and extend diffing possibilities. to be tackled first.

  • Support editing of existing NLA tracks from the linked reference data-block, including adding/removing/re-ordering existing strips? Not sure how useful that would be in practice though.
  • Support adding/replacing FCurves in overrides of Actions and/or animdata (for drivers)? Same remarks as above.

Original report

System Information
Operating system: Windows-10-10.0.17763 64 Bits
Graphics card: GeForce GTX 980/PCIe/SSE2 NVIDIA Corporation 4.5.0 NVIDIA 432.00

Blender Version
Broken: version: 2.81 (sub 16), branch: master, commit date: 2019-11-20 14:27, hash: rB26bd5ebd42e3
Worked: (optional)

Short description of error
When animating armature override *that contains drivers*, actions added to NLA tracks are lost after saving/reloading blender file.

Exact steps for others to reproduce the error
1 - Load testCubeDriverNLA.blend (contains link to cubeRigDrivers.blend)
2 - Use "push down action" from the NLA editor to add current "ArmatureAction" action to a new track


3 - Save the file
4 - Reload the file: the NLA track is lost

Blend files:

Event Timeline

Jacques Lucke (JacquesLucke) changed the task status from Needs Triage to Confirmed.Dec 29 2019, 1:07 PM

I can reproduce that.

Bastien Montagne (mont29) changed the subtype of this task from "Report" to "To Do".

This is actually a known issue/TODO, editing an existing animdata of an overridden data-block is not supported/implemented yet.

Linked object with drivers already have an animdata, while linked object without any driver or animation does not have one, so creating one in the override does work.

Bastien Montagne (mont29) renamed this task from Library Override: actions added to NLA tracks lost on save/reload (if armature contains drivers) to Library Override: Support editing of animation data in overriden data-blocks..Jan 15 2020, 11:15 AM

So if there is no animation added to the source object, it should always be possible to add an animation to the override?
Because while it works in tests, it does not work in my project. I simplified my rig ("Problematic") and built a new version ("Working"). NLA strips can be added to the linked override of the new version and will be retained upon reload, but on the old version, NLA strips are gone upon reload (tested with today's master).
Perhaps you could have a look at my files, I fail to see the difference. If it is supposed to work, I can create a separate report if you like.


@Georg K (georg) I think it's the same issue as this report.
In your _source.blend, there's an empty NLA strip associated to Armature.problematic. This is taking the "animdata" slot when linking&overriding.


Not sure how you ended up with it, but you might want to erase this empty strip using "edit->remove empty animation data" option.

Regards