Sorry for the late reply! Could you please show your setup (in the hierarchy panel) in Spine with a few screenshots? Especially how your problematic switched attachments are arranged, and when in the animations you enable and disable attachments.
Alternatively you could also send us a minimal Unity project that still shows the problem, as a zip package to
contact@esotericsoftware.com. Please also briefly mention the url of this forum thread in the email so that we know the context.
---
The problem is a combination of the following:
1.
SkeletonMecanim
not supporting
TrackEntry.AttachmentThreshold
and similar mix threshold functionality (as described on the
spine-unity documentation page).
2. Your attachments of your image-sequence animations being arranged at slots like this:
Slot sequence_animation_1:
- seq1/frame1
- seq1/frame2
- seq1/frame3
Slot sequence_animation_2
- seq2/frame1
- seq2/frame2
- seq2/frame3
The above arrangement allows two Attachment frames of different sequences
seq1/..
and
seq2/..
being visible at once, because they are attached at different Slots. A transition of sequence 1 to sequence 2 with e.g. a resulting mix of 0.1 and 0.9 will not hide any attachment because there is no attachment threshold which would hide it when below and show when above.
Auto Reset
is enabled, but only reverts attachment state to
invisible
at the end of the transition, so this does not help during a transition.
Possible solutions:
One solution would be to have only a single Slot for all sequence animation frames, this will then automatically only have a single Attachment visible at any time:
Slot sequence_anim_all
- seq1/frame1
- seq1/frame2
- seq1/frame3
- seq2/frame1
- seq2/frame2
- seq2/frame3
Another solution would be to set a keyframe at all Attachments that shall be hidden in the first frame of each animation, to explicitly set their state to hidden and not rely on the setup pose. Be sure to disable
Animation clean up
in the Spine Export settings, otherwise these keys will be removed. This way as soon as the next animation starts playing, you ensure that there are no leftover Attachments visible. This can also solve a similar problem that would occur between your sequence animations and your bone-based skeleton animations (which shall hide all sequence animation Attachments)..
Another way would be to set the animation's MixDuration to 0, as you would normally not want any frame-by-frame animation to be played active at the same time anyway.