-
Notifications
You must be signed in to change notification settings - Fork 8
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
First frame is played of first animation when starting second animation #25
Comments
Well the good news is that I can replicate the issue and the bad news is that I can also replicate it in a runtime build so it's not just in the Editor. Actually that's probably both bad news since it would be much easier if you were just doing something wrong. If you need an immediate workaround, you can simply play the next animation from outside the end event:
This seems like a fairly major issue so I'll start working on a proper fix ASAP. I'm fairly certain I know the cause of the problem, but it might require some significant restructuring to solve. |
OK, thanks for the quick response! FYI, I am unable to reproduce this problem in 3.1, if that helps at all. |
Yeah, the whole system was entirely different and much simpler in v3.1 because it only had end events. Turns out it was easier to fix than I expected. The problem was that events are triggered at a point in the update process where times can be changed but weights cannot, so playing a new animation during an event would stop the old animation and set its time back to 0 and cause it to get rendered on its first frame before the next update comes along to apply its weight at 0 (so it stops affecting the output). So the solution is a couple of simple modifications to Add a field to indicate when the time needs to be set:
Change the bottom of the
Then apply the time at the bottom of the
I'll submit an update to the store soon so hopefully it should be up in a couple of days. |
Great, thanks! Thanks for taking care of this so quickly! |
My bad, I renamed it from |
Perfect, the fix works like a charm - thanks! |
This is now fixed in Animancer v4.1. |
Given the following code, where there is no fade duration , the first frame of anim1 is played beore anim2 is played. anim2 is a looping clip, while anim1 is not.
I have smooth transitions between anim1 and anim2 - i.e. the last frame of anim1 is the same as the first frame of anim2. But sometimes when playing in the editor, the sequence looks like
When building (for PC), this sequence always occurs.
The expected sequence is
Should I be doing something in addition to what I have here to prevent this?
EDIT: I can send you a minimal example if necessary. I'm using Animancer Pro 4, I have clips edited with UMotion @ 30fps, and I have a simple stateless state machine where states are ScriptableObjects that reference the clips in question, so maybe there's something in there that's causing issues if you can't reproduce the issue.
Also this is with 2019.3.0f6
The text was updated successfully, but these errors were encountered: