Page MenuHome

Animation channels do not get removed from action when according modifier/constraint is deleted
Closed, ArchivedPublic

Description

System Information
Operating system: Windows-10-10.0.19041-SP0 64 Bits
Graphics card: GeForce GTX 1080/PCIe/SSE2 NVIDIA Corporation 4.5.0 NVIDIA 457.51

Blender Version
Broken: version: 2.93.0, branch: master, commit date: 2021-06-01 14:46, hash: rB383bc8d9bc06
Worked: unknown

Short description of error
When a driver is added to a modifier, it will not be removed when the modifier is deleted.

Exact steps for others to reproduce the error
open the attached blend file


run the script, this will:

  • add a build modifier to the grease pencil object
  • add a custom property on the object
  • link the modifier start to the custom property

then, remove the modifier
add a new build modifier
now, the driver is still there, even though we have a new modifier?

expected behaviour:

  • the driver is deleted when the modifier is removed
  • when adding the new modifier, there is no driver on it

also, a second problem: there are some oddities happening where the build modifier will no longer reach 100%.
this happens after removing and adding back the modifier, and deleting the driver. but we have not been able to reproduce this consistently.

Event Timeline

Philipp Oeser (lichtwerk) changed the task status from Needs Triage to Needs Information from Developers.Tue, Jul 6, 12:04 PM

Dont think this is a bug.
This is true for all animation data (FCurves as well, not just drivers) and not just modifiers, could be constraints etc.
What happens is just that the FCurves get invalid (their RNA paths dont point to something valid anymore), they also get underlined in red.

Once the RNA paths "make sense" again [modifier returns -- this could also be gone because of broken links, I think] or a new modifier with the same name comes in, these FCurves get effective again.

Like I said, dont think this is a bug, but to be 100% sure, I'll ask for confirmation from @Sybren A. Stüvel (sybren): dont think we should remove paths/channels from actions if their respective modifier/constraint gets deleted? Or maybe we should?

Philipp Oeser (lichtwerk) renamed this task from driver does not get removed when modifier is deleted to Animation channels do not get removed from action when according modifier/constraint is deleted.Tue, Jul 6, 12:05 PM
Sybren A. Stüvel (sybren) closed this task as Archived.Tue, Jul 6, 4:45 PM

I can confirm, the persistence of animation data is by design. Might be considered a bit of a sloppy design with some downsides (corroborated by many "invalid driver" warnings on the console whenever you open a Blender Animation Studio anim file), but it also has upsides. Not losing animation data is one, and the ability to swap out "animated things" with other "things".

also, a second problem: there are some oddities happening where the build modifier will no longer reach 100%.

Please don't describe two problems in one report. It's better to write two separate reports, and just mention in each that they might potentially be related to the other.

i see.

thank you for the explanation!