Maniphest T68332

Update animation_animall to Blender 2.8
Closed, ResolvedPATCH

Assigned To
Brendon Murphy (meta-androcto)
Authored By
Damien Picard (pioverfour)
Aug 6 2019, 7:18 PM
Tags
  • Add-ons (Community)
Subscribers
Damien Picard (pioverfour)
Les Matheson (LesMatheson)
Philipp Oeser (lichtwerk)
Rombout Versluijs (rombout)
Tokens
"Like" token, awarded by zanqdo.

Description

Hi, I updated animation_animall to Blender 2.8. The patch should be applied to addons_contrib. It includes D3162, for which I never assigned any reviewers :/

*(edit, this has been applied)*

I copy below what I said on that differential:

  • This patch allows keying only selected points for meshes, curves and lattices.
  • Fix keying POLY splines
  • Add fcurves to groups by element (Vertex, Edge, etc.), to keep the dope sheet and graph editor less cluttered
    • This does not currently work for curves: the fcurves are unassigned on switching modes. Presumably due to a bug in Blender, since it works for meshes.

Note that the bug for curves is still there.

The patch also includes some new cleanups like variable names’ case and grouping of properties to avoid cluttering window_manager.

Right now, it is still in addons_contrib but I believe it is ready for review, to be included in addons. As per T63750, it may need discussion.

(Here’s the python file, in case it’s more convenient…)

*(edit, this has been applied)*

EDIT: Update files with an overlooked bugfix…

Related Objects

Mentioned In
rBA0a6d3d725f0b: animation_animall: workaround for data refresh: T68332 T68666
rBAC8b5ea4d118e5: animation_animall: remove from contrib: T68332 T63750 e6a1dfbe53be
rBA610fb38cc215: animation_animall: return to release: T68332 T63750 e6a1dfbe53be
T68666: Animated mesh UVs, vertex groups, vertex colors don’t update on time change
Mentioned Here
rBAfe627477c250: animation_animall: multi-object editing
T68666: Animated mesh UVs, vertex groups, vertex colors don’t update on time change
rBA610fb38cc215: animation_animall: return to release: T68332 T63750 e6a1dfbe53be
rBAC8b5ea4d118e5: animation_animall: remove from contrib: T68332 T63750 e6a1dfbe53be
rBAe6a1dfbe53be: animation_animall: move to contrib: T63750
rBf6cb5f54494e: Version bump to 2.80 final release
D3162: Animall: Key only selected, POLY fix and fcurve groups
T63750: Remove Broken Addons from Release and Contrib

Event Timeline

Damien Picard (pioverfour) created this task.Aug 6 2019, 7:18 PM
Daniel Salazar (zanqdo) awarded a token.Aug 6 2019, 9:17 PM
Brendon Murphy (meta-androcto) lowered the priority of this task from 90 to Normal.Aug 7 2019, 1:57 AM

Thanks for the update, this addon has been requested many times. I will look in the next couple of days

Damien Picard (pioverfour) updated the task description.Aug 7 2019, 11:03 AM
Brendon Murphy (meta-androcto) added a comment.Aug 11 2019, 8:15 AM

tested and committed update to contrib.
@Damien Picard (pioverfour) are you interested in maintaining this addon?

Damien Picard (pioverfour) added a comment.Aug 11 2019, 3:55 PM

@Brendon Murphy (meta-androcto) Thank you!
Sure, I should be able to maintain it. I don’t have commit access, though, I will have to read up on that.

Also, as you said, the add-on was much requested. What should be done to include it again in addons?

Brendon Murphy (meta-androcto) triaged this task as 50 priority.Aug 12 2019, 1:31 AM

hi, @Damien Picard (pioverfour) I'm raising Priority, It would be a great return to 2.8.1 I think. Can you please check with nightly builds to make sure code is working correctly, I don't see any issue, but it's worth regular checking.
Have you looked at https://wiki.blender.org/wiki/Tools/Git and https://wiki.blender.org/wiki/Developer_Intro/Overview ? Are you prepared to maintain the addon within Blender through the 2.8 series? Let me know so we can look at your access to the addons repository.

This is a template I made for asking for access to release, just use it as a guide.
hi, if you can join this mailing list: bf-committers@blender.org and mail:
Subject:

Re: Commit Access to Addons Repository: ATT: @ideasman42

Content:

Hi my name is: "your name"
My user name on developer.blender.org is: "your user name here"
I would like commit access to the addons repository.
I am the maintainer of/my addon is:
New to Blender and it's task is here: "inset addon name and task name".
or I'm the Author of an addon in Blender and I wish to update the addon: "inset addon name and task name if applicable".
or I'm a new maintainer of an addon in Blender and I wish to update the addon/s "inset addon/s name/s and task name/s if applicable".

I'm familiar with git usage and my repo is here: "your git hub" *not needed but why not if you have one. It's important to know git usage before committing to the Blender addons repo.

It's also useful to join this mailing list: bf-extensions-cvs@blender.org as this list mails out the commits.
https://wiki.blender.org/wiki/Developer_Intro/Overview is a good read.
https://blender.chat/channel/python and https://blender.chat/channel/blender-coders provide a good place to discuss your addon or issues if needed. It's good also to drop in and say hi and meet other developers and provides a good communication platform.
Final note: Addons in the Blender repository are updated by addons devs and Blender core devs help with api updates/fixes. As there's multiple people committing it's important to make sure your local folders are updated to current before committing your self.

Initially I'll commit to back release as I add several "mentions" to related tasks for tracking. After that it will be all yours. I have spoken to the original author several times and it's up for grabs. The main criteria for the return to release is "Active Maintainer".
Any issues please let us know.
Thanks for your interest and support.

Damien Picard (pioverfour) added a comment.Aug 12 2019, 11:19 AM

Hi, thank you very much for the detailed answer.
I have looked already at the documentation pages you linked to, subscribed to the mailing lists, and am ready to maintain the add-on. I’m familiar enough with git not to mess it up too bad!

I sent a commit access request to the mailing list.

Campbell Barton (campbellbarton) updated the task description.Aug 12 2019, 3:08 PM
Rombout Versluijs (rombout) added a subscriber: Rombout Versluijs (rombout).Aug 14 2019, 10:13 PM

I was pointed out here by this thread on BlenderArtist. I did a quick update last night and noticed that the UV animation part isnt working properly like in bl 2.79

When you try to use as in the old version, so simple unwrap and add uv texture. Than you can use the addon the key the uv map position. However when you scrub in the timeline i see the data change. Last night i tried a couple methods and then noticed that when using the "Points" option without actually manipulating points it would show the animation. Hover this also only works when you add the points while in Object mode. Then you can delete the keys for "Points" and it will still work.

This update version shows the exact same issue as the version i updated last night.
Im using 2.80 (sub 75), f6cb5f54494e, 2019-07-29 14:47 and here is my updated version.

Ive also added a test file. left is the setup with "points" added, right is only using UVs.

Rombout Versluijs (rombout) added a comment.Aug 14 2019, 10:24 PM

PS this updated version is changed quite heavily how it adds keys. Should it first check which of the boolean is checked and then do the looping of all parts?
It seem this version will loop over the mesh even if everything is unchecked.

Old version

if context.window_manager.key_points:
                for Vert in Data.vertices:
                    insert_key(Vert, 'co')

Updated version

for v_i, vert in enumerate(data.vertices):
                if not animall_properties.key_selected or vert.select:
                    if animall_properties.key_points:
                        insert_key(vert, 'co', group="vertex %s" % v_i)
Damien Picard (pioverfour) added a comment.Aug 15 2019, 12:52 AM

@Rombout Versluijs (rombout) Hi, thanks for the report. Indeed, there seems to be a refresh problem with UVs. It also seems to happen with mesh vertex groups, vertex colors, and lattices’ point locations, only I couldn’t apply your workaround for the latter.

My guess is that these bugs are related to the depsgraph, and perhaps they weren’t noticed before due to this add-on being unavailable, and setting keyframes without it being only possible via scripting, as far as I know.

As to the suggestion not to loop over the elements when no checkbox is selected, I had made this modification in order to avoid looping several times over elements. Actually the speedup wouldn’t be much, since looping over them is faster than inserting keyframes anyway. It’s also a bit more legible so I will revert this. Thanks.


Two other bugfixes in the attached file:

  • Fix keyframe insertion for Curves and Surfaces
  • Fix mode switching (for Vertex Paint Mode)

Rombout Versluijs (rombout) added a comment.Aug 15 2019, 5:29 PM

My workaround is, add keyframe UV and Points in object mode. Then it worked for me.

Damien Picard (pioverfour) added a comment.Aug 15 2019, 6:32 PM
In T68332#753819, @Rombout Versluijs (rombout) wrote:

My workaround is, add keyframe UV and Points in object mode. Then it worked for me.

Yes, but it doesn’t apply for lattices, since they only have point locations, and no UVs.

Brendon Murphy (meta-androcto) added a comment.Aug 23 2019, 3:15 AM

hi, Welcome to Blender addons development team. I see your already comfortable with git and have made some commits to contrib.
Next process is to return the addon back to release addons. We need to do some task tags here to track the addons and related tasks.
1st Commit will be to remove the addon from contrib. The commit message should be as follows:
animation_animall: remove from contrib: T68332 T63750 e6a1dfbe53be
2nd Commit will be to return the addon to release. The commit message should be as follows:
animation_animall: return to release: T68332 T63750 e6a1dfbe53be
Thanks. any problems let me know.

Rombout Versluijs (rombout) added a comment.Aug 23 2019, 3:28 AM

I'm not sure how it went from broken and issue with updates to a fixed version. Weren't there issues with the depsgraph?

Damien Picard (pioverfour) mentioned this in rBA610fb38cc215: animation_animall: return to release: T68332 T63750 e6a1dfbe53be.Aug 23 2019, 10:22 AM
Damien Picard (pioverfour) mentioned this in rBAC8b5ea4d118e5: animation_animall: remove from contrib: T68332 T63750 e6a1dfbe53be.Aug 23 2019, 10:24 AM
Damien Picard (pioverfour) added a subscriber: Philipp Oeser (lichtwerk).Aug 23 2019, 10:28 AM

@Brendon Murphy (meta-androcto) Thank you for the welcome, the process has been very pleasant so far. Pushing my commits was easier than I expected!
I have pushed two commits to add-ons and contrib as instructed: rBA610fb38cc215 and rBAC8b5ea4d118e5.


@Rombout Versluijs (rombout) You are right, there is an issue with the depsgraph. But it lies with Blender and there isn’t much that can be done on the add-on side. @Philipp Oeser (lichtwerk) is investigating it at T68666 and assigned a high priority to the issue.

Damien Picard (pioverfour) added a comment.Aug 27 2019, 1:00 PM

I implemented multi-object editing in rBAfe627477c250, but this makes the logic twisted, since there are several behaviours in keyframe insertion, depending on type and whether the key is inserted on data or shape key. I will explain the current logic below:

  • for Meshes, insertion must happen in Object Mode, otherwise the data is not updated;
  • for Curves and Surfaces, insertion must happen in Edit Mode, otherwise the points snap back to keyed position,
    • except for shape keys, which must happen in Object Mode, otherwise the data is not updated;
  • for Lattices, insertion must happen in Edit Mode, otherwise all points are deselected and insertion doesn’t work any more for Selected Only
    • but then the data is not updated and the keyframe has to be inserted twice (sometimes?)

Hence, there are bound to be bugs for some edge cases, e.g. selecting objects of different types and inserting keyframes in Object Mode…

Les Matheson (LesMatheson) added a subscriber: Les Matheson (LesMatheson).Aug 29 2019, 1:58 PM
Brendon Murphy (meta-androcto) lowered the priority of this task from 50 to Normal.Sep 2 2019, 1:57 AM

lowering priority, @Damien Picard (pioverfour) I'll leave open for another week, I think after then we can handle any other issues in bug reports.
Minor commits and fixes are ok without referencing a task, we can create a new task if needed for any major commits that may require any decisions or extra work

Damien Picard (pioverfour) added a comment.Sep 2 2019, 10:01 AM

All right, thanks!

Damien Picard (pioverfour) mentioned this in rBA0a6d3d725f0b: animation_animall: workaround for data refresh: T68332 T68666.Sep 3 2019, 2:58 PM
Brendon Murphy (meta-androcto) changed the task status from Unknown Status to Resolved.Sep 5 2019, 2:53 AM

Closing as resolved. @Damien Picard (pioverfour) Thanks for your attention to this addon. You have done a great job. No real need to keep this open. Keep up the great work!

Rombout Versluijs (rombout) added a comment.Oct 28 2019, 3:23 AM

Guys, i found another issue perhaps. This addon is call counter. It can add a couple methods to show a counter in in render frame. In the viewport and on single renders it works just fine. But when rendering an animation the property doesnt update?

This is the addon
https://blenderartists.org/t/a-text-counter-plugin/601171/21?u=rombout

This file doesnt render properly when rendering animation

Damien Picard (pioverfour) added a comment.Oct 28 2019, 11:26 AM

Hi @Rombout Versluijs (rombout),
thanks for the report but this is completely unrelated to Animall, especially to the Blender 2.80 update. Please open a new bug report.

I can confirm this bug though, and it does seem related to the dependency graph. Here is a simplified blend file showing the error. It doesn’t need the Text Counter add-on. The frame_change_post handler doesn’t update text data on animation render. Other handlers don’t seem to either.

Rombout Versluijs (rombout) added a comment.Oct 31 2019, 12:51 AM

Thanks @Damien Picard (pioverfour) for pointing in the correct direction. Ill make a bug post for this.