Beispiel #1
0
                public override Playable CreateTrackMixer(PlayableGraph graph, GameObject go, int inputCount)
                {
                    ScriptPlayable <SpineAnimatorChannelTrackMixer> playable = TimelineUtils.CreateTrackMixer <SpineAnimatorChannelTrackMixer>(this, graph, go, inputCount);
                    SpineAnimatorTrack parentTrack = this.parent as SpineAnimatorTrack;

                    if (parentTrack != null)
                    {
                        SpineAnimatorTrackMixer parentMixer = TimelineUtils.GetTrackMixer <SpineAnimatorTrackMixer>(graph, parentTrack);

                        if (parentMixer != null)
                        {
                            SpineAnimatorChannelTrackMixer mixer = playable.GetBehaviour();
                            mixer.Init(parentMixer);

                            IEnumerable <TimelineClip> clips = GetClips();

                            foreach (TimelineClip clip in clips)
                            {
                                SpineAnimationClipAsset animationClip = clip.asset as SpineAnimationClipAsset;

                                if (animationClip != null)
                                {
                                    clip.displayName = animationClip._animationId;
                                    animationClip.SetParentTrack(parentTrack);
                                }
                            }
                        }
                    }

                    return(playable);
                }
Beispiel #2
0
                    private SkeletonAnimation GetClipBoundAnimator()
                    {
                        PlayableDirector        selectedDirector = TimelineEditor.inspectedDirector;
                        SpineAnimationClipAsset clip             = base.target as SpineAnimationClipAsset;

                        if (selectedDirector != null && clip != null)
                        {
                            return(selectedDirector.GetGenericBinding(clip.GetParentTrack()) as SkeletonAnimation);
                        }

                        return(null);
                    }
Beispiel #3
0
                protected override void OnCreateClip(TimelineClip clip)
                {
                    SpineAnimatorTrack parentTrack = this.parent as SpineAnimatorTrack;

                    if (parentTrack != null)
                    {
                        SpineAnimationClipAsset animationClip = clip.asset as SpineAnimationClipAsset;

                        if (animationClip != null)
                        {
                            animationClip.SetParentTrack(parentTrack);
                        }
                    }
                }