Timelineを使ってみよう(作成中)
プロジェクトウィンドウでTimelineを作成します

作成されたTimelineをシーンに追加します

Timelineのインスタンスが作成されます

設定用ウィンドウを開きます

スケールを変更するには

using UnityEngine;
using UnityEngine.Playables;
public class TimelinePlayer : MonoBehaviour
{
private PlayableDirector director;
public GameObject controlPanel;
private void Awake()
{
director = GetComponent<PlayableDirector>();
director.played += Director_Played;
director.stopped += Director_Stopped;
}
private void Director_Stopped(PlayableDirector obj)
{
controlPanel.SetActive(true);
}
private void Director_Played(PlayableDirector obj)
{
controlPanel.SetActive(false);
}
public void StartTimeline()
{
director.Play();
}
}
解説
UnityEngine.Playables 名前空間を追加します
using UnityEngine.Playables;
クラス定義の中で、Playable Director とコントロール・パネルへの参照を作成します
private PlayableDirector director;
public GameObject controlPanel;
Awakeの中で、Playable Director の参照を設定し、Director の開始時と停止時に呼び出されるコールバック関数を登録します
director = GetComponent<PlayableDirector>();
director.played += Director_Played;
director.stopped += Director_Stopped;
次の 2 つのステップで定義される Director_Played および Director_Stopped は、戻り値が void 型の関数で、唯一のパラメーターは PlayableDirector 型です。
Director_Played は、Timeline が再生を開始すると、Timeline を開始するために使用される UI パネルを非表示にします
private void Director_Played(PlayableDirector obj)
{
controlPanel.SetActive(false);
}
Director_Stopped は、Timeline が停止した後に UI パネルを表示します
private void Director_Stopped(PlayableDirector obj)
{
controlPanel.SetActive(true);
}
最後に、Timeline を開始する関数を定義する準備ができました
public void StartTimeline()
{
director.Play();
}
ディスカッション
コメント一覧
まだ、コメントがありません