Unity++blog.

UnityやC#とかについて学習したことを書いてます

Unity タイムライン AudioTrack、ControlTrack、PlayableTrackの使い方

今回はタイムライン以下3つの機能の記事です。 

  • AudioTrack 
  • ControlTrack 
  • PlayableTrack

 

初期設定の記事↓

nabesi777.hatenablog.com

 

ActivationTrackとAnimationTrackの記事↓

nabesi777.hatenablog.com

 

 

①AudioTrack

サウンドの再生や停止をコントロールすることができます。

AddよりAudioTrackを追加してみました。

f:id:nabesi777:20181117153631p:plain

 

トラック上で右クリック>AddFromAudioClipでオーディオクリップを追加します。

f:id:nabesi777:20181117154153p:plain

 

Noneの場所へはこのTimelineを作成した空オブジェクト(名前:Timeline)をいれました。これで再生ボタンを押すとサウンドが再生されます。

 

試しに複数の音を重ねてみました。

f:id:nabesi777:20181117160335p:plain

 

 

 

また、トラックが複数になっても管理しやすい用に、TrackGroupを使いひとまとめにすることができます。TrackGroupはAddより追加してそれぞれのトラックをドラッグでTrackGroupへ入れて作成することができます。

f:id:nabesi777:20181117162416p:plain

 

また、個別の音のボリュームの調整はどうやるのか調べたのですがまだわかりませんでした。

 

インスペクターの詳細はこちら↓

http://file:///C:/Program%20Files/Unity/Editor/Data/Documentation/en/Manual/TimelineAudioClipProperties.html

 

②ControlTrack

Prefabの表示、非表示を行うことができるトラックです。ActivationTrackはオブジェクトの表示と非表示のトラックでしたので、機能は同じです。

 

恐らくActivationTrackと違うところは、ControlTrackは複数のオブジェクトをひとつのトラックで表示・非表示することができる点だと思います。(オブジェクトクリップを重ねることはできませんでした)

f:id:nabesi777:20181117164505p:plain

 

ActivationTrackとControlTrackを並べてみました。ControlTrackへのクリップの追加は今までと同じように右クリックから行えます。(ドラッグで持ってくることもできます)

 

上がControlTrackでUnityちゃんと鉄球を入れています。

下がActivationTrackでCubeを入れています。

f:id:nabesi777:20181117164159g:plain

 

 ③PlayableTrack

 これはプログラムで書いた制御をタイムラインと連動させるためのトラックです。

 

このタイムラインに制御を伝えるスクリプトはPlayableBehaviourというC#スクリプトと、もうひとつPlayableAssetというC#スクリプトのふたつのスクリプトを準備する必要があります。

 

Project上で右クリック

f:id:nabesi777:20181117171105j:plain

 

なんだか凄く面倒そうですが、やってみます。

 

とりあえず作成。わかり易いように先頭にTestを付けて作成しました。

f:id:nabesi777:20181117171351p:plain

 

 できたらトラック上で右クリックをしてTestPlayableAssetを加えます。

f:id:nabesi777:20181117171523p:plain

 

この PlayableAssetがタイムラインとUnityとの間を繫いでくれるようです(たぶん、、)

 

そして何をするかですが、今回はカプセルを作成してそれを動かすスクリプトにしました。

 

AnimationTrackでもっと簡単にできますが、PlayableTrackの使い方の練習ということで!

 

 今回スクリプトはこちらを参考に作成しました。ありがとうございます!!

[HoloLens] Unity2017 の新機能 Timeline を使ってふわっとメニューウィンドウを表示させる - たるこすの日記

 

 まずHierarchyへカプセルを作成します。名前はCapsuleTimelineにしました。

そして先ほど作成した2つのスクリプトにそれぞれ以下を書き込みます。

 

  TestPlayableAsset

 

   TestPlayableBehaviour

 

スクリプトの作成ができたら、タイムラインのクリップをクリックして、TestPlayableAssetのインスペクターへ作成したカプセルを入れます。

f:id:nabesi777:20181117193524p:plain

 

次に動かしたい座標を同じくインスペクターから記入します。

StartPositionに現在の座標をいれ、EndPositionに動かしたい座標を入れます。

f:id:nabesi777:20181117193654j:plain

 

これでカプセルが動くはずです。

タイムラインにスクリプトでを使うことができました!

f:id:nabesi777:20181117194106g:plain

 

せっかくなので作成したタイムラインを同時にさせたらカオスなことに!w

 

 

調べた限りかなり使えそうな仕組みなので積極的に使っていきたいですね!