acidbubbles / vam-timeline

Advanced and intuitive keyframe animations for Virt-A-Mate
GNU General Public License v3.0
75 stars 17 forks source link

Timeline resets controller links to None #39

Open via5 opened 3 years ago

via5 commented 3 years ago

Selecting the Persons' head again shows that the link has been reset to None. This doesn't seem to happen when linking to Xcontrol instead of just X.

As a temporary fix, commenting out controller.RestorePreLinkState(); in FreeControllerAnimationTarget.GetLinkedRigidbody() fixes it, but I don't understand what it does or what I break by doing that.

via5 commented 3 years ago

Is Timeline using links as some sort of a relative transform for movement? If I create an animation, then link the controller to something but keep position/rotation to On, the animation completely breaks.

via5 commented 3 years ago

Okay, removing the call to RestorePreLinkState() while keeping the controller linked (but On for position/rotation) does something I don't understand to the controller. Timeline is moving it very far from where it's supposed to be but seems to be keeping the relative movement correct. For now, I've commented out the whole of GetLinkedRigidbody() and made it just return null.

acidbubbles commented 3 years ago

This'll work since it will always user whatever's parented to the object directly. If this works for you case it's fine, to be honest there's digging to be done here and whatever I do will be a breaking change... but yeah it's a mess that I hope to fix when I have more contiguous time to do that kind of research...

acidbubbles commented 3 years ago

Believe it or not this will be fix in the next major version of Timeline. I found a much more sound method to keep things clean.