Przeglądaj źródła

[cpp] Fix for #1352, the last subsequent attachment timeline always mixes out to the setup pose.

badlogic 6 lat temu
rodzic
commit
7904bfd40f
1 zmienionych plików z 4 dodań i 1 usunięć
  1. 4 1
      spine-cpp/spine-cpp/src/spine/AnimationState.cpp

+ 4 - 1
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;