Yes SkeletonAnimation
None of the error has any code from any of my scripts, so it was hard to determine what is going on. Could it possibly be that my animator has created some animations that hide or don't use some attachments and it is throwing errors? That would be odd to identify and I wouldn't think it should throw errors in those instances.
This is super confusing because it's even happening when going from Walk to Idle or Walk to Run and basically any animation transition.
ArgumentNullException: Argument cannot be null.
Parameter name: attachmentName cannot be null.
Spine.Skeleton.GetAttachment (Int32 slotIndex, System.String attachmentName) (at Assets/spine-csharp/Skeleton.cs:262)
Spine.Unity.SkeletonExtensions.SetSlotAttachmentToSetupPose (Spine.Skeleton skeleton, Int32 slotIndex) (at Assets/spine-unity/SkeletonExtensions.cs:154)
Spine.Unity.SkeletonExtensions.SetToSetupPose (Timeline timeline, Spine.Skeleton skeleton) (at Assets/spine-unity/SkeletonExtensions.cs:190)
Spine.Unity.SkeletonExtensions.SetKeyedItemsToSetupPose (Spine.Animation animation, Spine.Skeleton skeleton) (at Assets/spine-unity/SkeletonExtensions.cs:162)
Spine.AnimationState.Apply (Spine.Skeleton skeleton) (at Assets/spine-csharp/AnimationState.cs:159)
Spine.Unity.SkeletonAnimation.Update (Single deltaTime) (at Assets/spine-unity/SkeletonAnimation.cs:175)
Spine.Unity.SkeletonAnimation.Update () (at Assets/spine-unity/SkeletonAnimation.cs:165)
Something to add is it spams this 5-7 times when simply going from one animation to another. I even changed my FSM to always transition at 80% into an animation so that it never just "stopped" on an animation and it is still doing it. No idea why a SetUpToPose is being fired.
Edit #2: I loaded up an older revision of our main character which was based off Spine 3.1.08 and wiped spine-csharp and unity from my assets and downloaded the latest official one and everything is 100% smooth now with no errors. There is still the snap but your explanation makes sense.
Edit #3: Pharan, also.. not sure the usage case and maybe we're just weird.. but it is very beneficial in a fighting game like ours to allow pausing at the end of an attack animation so that it can flow into another at the last minute instead of queuing up an attack half way through.
What we do is basically allow hitting attack 50% to 100% into the animation, but since you are forced to initiate another animation before the attack ends, I just changed the FSM to always transition at 85%. In Mecanim I was able to manually tell it what animations to blend and did it at 100% with a 25% blend, but with SkeletonAnimation I don't see any way to do that.
What would be really great is it always knew the last animation played and blended to the next animation. Is that not what most people would desire instead of an odd snapping or are we just doing crazy stuff over here? lol :whew: