private void DrawAnchorTrack(AnchorTrack track, int idx)
    {
        var          clips = track.GetClips();
        TimelineClip clip  = clips.FirstOrDefault();

        if (clip != null && clip.asset != null)
        {
            AnchorAsset asset = clip.asset as AnchorAsset;
            DrawAnchorAsset(asset, clip.start, clip.end, idx);
        }
    }
Beispiel #2
0
        public override void DrawBackground(TimelineClip clip, ClipBackgroundRegion region)
        {
            AnchorAsset asset = clip.asset as AnchorAsset;
            Rect        rect  = region.position;
            TrackAsset  track = clip.parentTrack;

            target = track as AnchorTrack;
            if (target != null)
            {
                target.RebuildClip();
            }
            if (asset != null)
            {
                var quantizedRect       = new Rect(Mathf.Ceil(rect.x), Mathf.Ceil(rect.y), Mathf.Ceil(rect.width), Mathf.Ceil(rect.height));
                AnimationCurve[] curves = asset.clip_pos;
                DrawCurve(rect, curves);
            }
        }
    private void DrawAnchors()
    {
        AnchorAsset asset = target as AnchorAsset;

        if (director == null)
        {
            director = GameObject.FindObjectOfType <PlayableDirector>();
        }
        var list = director.playableAsset.outputs;
        int idx  = 0;

        foreach (PlayableBinding pb in list)
        {
            if (pb.sourceObject is AnchorTrack)
            {
                AnchorTrack tack = pb.sourceObject as AnchorTrack;
                DrawAnchorTrack(tack, idx++);
            }
        }
    }