mirror of
https://github.com/EsotericSoftware/spine-runtimes.git
synced 2026-02-04 14:24:53 +08:00
Merge branch '4.0' into 4.1-beta
This commit is contained in:
commit
dbf93a5a2f
@ -48,39 +48,9 @@ namespace Spine.Unity.Playables {
|
||||
}
|
||||
|
||||
var scriptPlayable = ScriptPlayable<SpineAnimationStateMixerBehaviour>.Create(graph, inputCount);
|
||||
#if UNITY_EDITOR
|
||||
WarnIfDuplicateTrackIndex();
|
||||
#endif
|
||||
var mixerBehaviour = scriptPlayable.GetBehaviour();
|
||||
mixerBehaviour.trackIndex = this.trackIndex;
|
||||
return scriptPlayable;
|
||||
}
|
||||
|
||||
#if UNITY_EDITOR
|
||||
static float lastWarningTime = 0;
|
||||
|
||||
public void WarnIfDuplicateTrackIndex () {
|
||||
if (Time.frameCount == lastWarningTime) // only warn once.
|
||||
return;
|
||||
lastWarningTime = Time.frameCount;
|
||||
|
||||
var rootTracks = timelineAsset.GetRootTracks();
|
||||
List<int> trackIndices = new List<int>();
|
||||
int trackFromTop = -1; // first invisible track is marker track, skipped.
|
||||
foreach (var track in rootTracks) {
|
||||
++trackFromTop;
|
||||
if (track.GetType() != typeof(SpineAnimationStateTrack))
|
||||
continue;
|
||||
var animationStateTrack = (SpineAnimationStateTrack)track;
|
||||
int trackIndex = animationStateTrack.trackIndex;
|
||||
if (trackIndices.Contains(trackIndex)) {
|
||||
Debug.LogWarning(string.Format("Please change the 'Track Index' Inspector property " +
|
||||
"at Track number {0} from the top, both tracks are setting animations at track index '{1}'.",
|
||||
trackFromTop, trackIndex));
|
||||
} else
|
||||
trackIndices.Add(trackIndex);
|
||||
}
|
||||
}
|
||||
#endif
|
||||
}
|
||||
}
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user