KhronosGroup / glTF-Blender-IO

Blender glTF 2.0 importer and exporter
https://docs.blender.org/manual/en/latest/addons/import_export/scene_gltf2.html
Apache License 2.0
1.49k stars 317 forks source link

Action filter entries in export setting list counts as a user for that action preventing deletion during cleanup #2373

Open keedav opened 2 weeks ago

keedav commented 2 weeks ago

Describe the bug The Action Filter list in the glTF export settings will register itself as a real user for all actions in that list, even for actions that are not selected for export. If at any point, the Action Filter list got populated with some actions, from that point onward they will not be cleaned up when exiting Blender even when I remove the actions from animations and nothing else references the action in the scene.

To Reproduce Steps to reproduce the behavior:

  1. Create two NLA actions for any object, one named "WantedAction" another named "UnwantedAction" and add both Actions to separate NLA tracks
  2. Click on File->Export->glTF 2.0
  3. On the right Export settings side panel enable "Remember Export Settings"
  4. Scroll down, enable "Animation" then "Action Filter" then press "Refresh action list"
  5. Press "Export glTF 2.0" button
  6. In the Outliner, switch to Blender File display mode. Observe the number "2" at the users column next to the actions, indicating that the Export settings will keep a reference beside the NLA track
  7. In the NLA editor, delete the track with "UnwantedAction". In the Outliner the number of users drops to "1", which is just the Export Settings.

Expected behavior Export Settings Action Filter list entries should not count as users for an NLA action. It is difficult for Blender users to figure out why their actions not cleaned up even when nothing else references them within the scene. Alternatively, have an option to manually remove entries from the Action Filter list to clean up references.

Screenshots Screenshot

.blend file/ .gltf (mandatory) Bugreport.zip

Version

julienduroure commented 2 weeks ago

Confirmed

julienduroure commented 2 weeks ago

As a workaround for now : Disable the action filter checkbox in UI will destroy the UI list, so remove the pointer to actions, so remove the extra user on each action