From 7904bfd40f562951f12c11b719409b25a97a83b8 Mon Sep 17 00:00:00 2001 From: badlogic Date: Wed, 15 May 2019 15:15:39 +0200 Subject: [PATCH] [cpp] Fix for #1352, the last subsequent attachment timeline always mixes out to the setup pose. --- spine-cpp/spine-cpp/src/spine/AnimationState.cpp | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/spine-cpp/spine-cpp/src/spine/AnimationState.cpp b/spine-cpp/spine-cpp/src/spine/AnimationState.cpp index 625be7a4b..71a2e0773 100644 --- a/spine-cpp/spine-cpp/src/spine/AnimationState.cpp +++ b/spine-cpp/spine-cpp/src/spine/AnimationState.cpp @@ -814,7 +814,10 @@ float AnimationState::applyMixingFrom(TrackEntry *to, Skeleton &skeleton, MixBle float alpha; switch (timelineMode[i] & (NotLast - 1)) { case Subsequent: - if (!attachments && (timeline->getRTTI().isExactly(AttachmentTimeline::rtti))) continue; + if (!attachments && (timeline->getRTTI().isExactly(AttachmentTimeline::rtti))) { + if ((timelineMode[i] & NotLast) == NotLast) continue; + blend = MixBlend_Setup; + } if (!drawOrder && (timeline->getRTTI().isExactly(DrawOrderTimeline::rtti))) continue; timelineBlend = blend; alpha = alphaMix;