見出し画像

はじめてのUnityのTimeline

この記事はTimeline初心者の備忘録です。イエイ!

いい加減、Timeline食わず嫌いを直したい

同じチームにTimelineのプロの子がいるので、自分はいいや~~~って思ってたけど、個人開発で使えそうな知識なのよね。ちゃんと勉強します。

1.そもそもTimelineとは

UnityではTimelineエディタウインドウを使って、関連したゲームオブジェクトのアニメーション、アクティブ、サウンドの操作を行えます。ゲームのカットシーンなどに使えそうですね。

画像1

しかし、この時系列で操作できる感じ、Animationでも見たことがありますよね。TimelineとAnimationでは何が違うんでしょうか。

Animationでは1つのゲームオブジェクト、もしくはその階層のゲームオブジェクトのアニメーションを作成することができます。このときできる1つのアニメーションのことをアニメーションクリップといいます。Animationウインドウでは、このアニメーションクリップを1つしか扱うことができません。

画像2

Timelineウインドウは、このアニメーションクリップを同時系列に複数扱う事が出来ます。より、複雑なカットシーンを作成することが可能なわけですね。

せっかくなのでユニティちゃんをTimelineで動かしてみよう。

2.ユニティちゃんのimport

下記ページのDATA DOWNLOADより、ユニティちゃんをダウンロードします。

https://unity-chan.com/

画像3

かわいい

Unityで3Dの新規プロジェクトを作成し、[Assets] → [Import Package] → [Custom Package]で、「SD_UnityChan-1.unitypackage」をインポートします。

画像5

すると下記エラーが出ます。これはコンソールをダブルクリックで該当ファイルを開きusing System.Security.Policy;を削除すれば問題ありません。

Assets\UnityChan\Scripts\AutoBlinkforSD.cs(8,23): error CS0234: The type or namespace name 'Policy' does not exist in the namespace 'System.Security' (are you missing an assembly reference?)

3.ユニティちゃんと床の配置

Hierarchyウィンドウを右クリックして[3D Object] → [Plane]で床を配置します。

その後、ProjectウインドウのUnityChan/SD_unitychan/Prefabs/SD_unitychan_humanoidをHierarchyウインドウにドラッグ&ドロップすると、ユニティちゃんが配置されます。

カメラやライトを以下のように調整すると、ユニティちゃんが見やすい位置に配置されると思います。

画像5

画像6

この時、再生するとprefabに設定されているUIが表示されます。

画像7

このUIは今回使わないため、Prefabの以下項目を非アクティブにします。

・Idle Changer の IsGUI をオフ
・Face Update の IsGUI をオフ
・Random Wind の IsGUI をオフ
・IK Look At の IsGUI をオフ

4.Timelineの生成

Projectウインドウを右クリックで[Create] → [Timeline]を選択し、Timelineを作成します。名前は「UnitychanTimeline」とします。

次にHierarchyウィンドウに「UnityChanTimeline」をドラッグ&ドロップします。そうすると、Playable DirectorコンポーネントをもったTimelineのゲームオブジェクトが作成されます。

画像8

このPlayable Directorコンポーネント、公式ドキュメントには下記の記述で説明してあります。

Playable Director コンポーネントは、タイムラインインスタンスとタイムラインアセットの間のリンクを格納します。Playable Director コンポーネントは、いつタイムラインインスタンスを再生するか、どのようにタイムラインインスタンスがその時計を更新するか、および、タイムラインインスタンスが再生を終了したとき何を発生させるかを制御します。

要するに、これがないと再生・終了やゲームオブジェクトの制御を担うものって考えていいっぽいですね。

では実際にTimelineエディタでTimelineをいじっていきましょう。

5.Timelineでユニティちゃんを動かす

先ほど生成したHierarchy上のUnitychanTimelineをダブルクリックしてTimelineウインドウを開きます。(※開かない場合は、[Window] → [Seaquencing] → [Timeline]から開いて、UnitychanTimelineをダブルクリックします)

画像9

+マークを押すと、アニメーションクリップを配置したり、アクティブのアニメーションを追加したりできます。

ここでは[+] → [Animation Track]を選択し、ユニティちゃんに設定されているアニメーションクリップをTimeline上に配置していきます。

画像10

アニメーショントラックが追加されました。この[None]のところに、Hierarchy上のSD_unitychan_humanoidをドラッグ&ドロップします。

このセットしたトラック上を右クリックして[Add From Animation Clip]を選

このときRunningが2つ(Generic用とHumanoid用)ありますが、Humanoid用を選んで下さい。択し、[Running@loop]を選択します。

画像11

画像12

Runningのトラックを300フレームの長さに伸ばして設定します。

画像13

Unityを再生すると、このようにユニティちゃんが走ります!お疲れ様でした!

画像14

次回はPlayableBehaviourクラスとPlayableAssetクラスを作成してユニティちゃんをさらに制御していきます。

この記事が気に入ったらサポートをしてみませんか?