unity Timeline控制动画的播放

unity Timeline控制动画的播放

创建一个空物体GameObject,添加Playable Director组件,添加脚本组件;
新建一个长方体;
创建timeline并将其拖到空物体的Playable Director组件下的Playable中;
unity Timeline控制动画的播放_第1张图片
unity Timeline控制动画的播放_第2张图片
点击空物体GameObject,再点击Timeline窗口,将长方体拖入并创建annimation轨道,录制动画;
图片中文字应为Cube,这个是拖入的胶囊
unity Timeline控制动画的播放_第3张图片

新建一个正方体;
创建timeline并将其拖到空物体Timeline的Playable Director组件下的Playable中;
点击Timeline窗口,将正方体拖入并创建annimation轨道,录制动画;

演示时手动输入size为2;并将两个timelin拖入,如下图所示;
unity Timeline控制动画的播放_第4张图片

C#脚本

using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.Playables;
using UnityEngine.Timeline;

public class play : MonoBehaviour
{
    PlayableDirector Player;
    [SerializeField] 
    TimelineAsset[] A;//实现在Inspector面板的显示
    int index = 0;
    // Start is called before the first frame update
    void Start()
    {
        Player = FindObjectOfType();
        
    }

    // Update is called once per frame
    void Update()
    {
    
        if (Input.GetKeyDown(KeyCode.A))
        {
            if (index < A.Length)
            {
                if (Player.state != PlayState.Playing)
                    Player.Play(A[index++]);
            }
        }
    }
}


你可能感兴趣的:(unity)