Timeline是Unity2017版本中新加入的功能,可以非常方便的進行場景動畫的創(chuàng)建和修改,包括物體糯累、聲音、粒子较锡、動畫、特效、自定義Playable以及子Timeline等多種資源進行整合,從而能夠較方便的生成效果很棒的場景動畫伦连,同時可以通過Unity的Recorder資源包錄制較為完整的視頻并導(dǎo)出倚舀。?
在Unity2017中,點擊Window->Timeline即可調(diào)出Timeline面板巢钓。如下圖所示:?
在該面板中,可以創(chuàng)建多種類型的片段蔑鹦,如果你導(dǎo)入AssetStore中的Default Playables資源包(其中預(yù)置了多個官方提供的簡單Playable實例)陷寝,其面板如下所示:?
其中常用的主要有
Activation Track(控制物體的顯示和隱藏)
Animation Track(為物體加入動畫,可以在場景中方便地錄制動畫慷吊,也可以是已經(jīng)制作好的Animation Clip)
Audio Track(為動畫添加音效哼绑,并可對音效進行簡單的裁剪和操作)
Control Track(在該軌道上可以添加粒子效果,同時也可以添加子Timeline進行嵌套)
Playable Track(在該軌道中用戶可以添加自定義的播放功能)
Track Group(將不同的軌道進行分類程帕,相當(dāng)于文件夾功能)
當(dāng)我們創(chuàng)建了TimeLine后馆类,會在指定位置生成TimeLine的文件*.playable句喜,當(dāng)選中該文件后泳秀,會在Inspector面板中看到其相應(yīng)的屬性,如下圖所示:?
其中Frame Rate可以設(shè)置該Timeline每秒鐘播放多少幀動畫。Duration Mode分為Based On Clips和Fixed Length兩種模式掰盘,Based On Clips模式為按照幀數(shù)來播放钢猛,當(dāng)播放到最后一幀時結(jié)束播放,F(xiàn)ixed Length模式可以設(shè)置總共播放多長時間征椒,當(dāng)播放到指定時間是停止娇哆。Duration設(shè)置當(dāng)前播放的秒數(shù)和幀數(shù)。
該軌道首先需要為其賦值一個GameObject勃救,表示該軌道控制該物體的顯示與隱藏碍讨,當(dāng)在Timeline播放過程中,如果處于片段內(nèi)部蒙秒,則該物體顯示勃黍,否則該物體隱藏。
當(dāng)我們點擊該軌道時晕讲,會在Inspector面板中看到可以設(shè)置的屬性覆获,如下所示:?
Active(當(dāng)Timeline播放結(jié)束時,將該物體激活瓢省,設(shè)置為顯示狀態(tài))
Inactive(當(dāng)Timeline播放結(jié)束時弄息,該物體取消激活,設(shè)置為隱藏狀態(tài))
Revert(當(dāng)Timeline播放結(jié)束時勤婚,該物體還原Timeline在第1幀時的激活狀態(tài))
Leave As Is(當(dāng)Timeline播放結(jié)束時摹量,該物體保持在Timeline最后一幀的激活狀態(tài))
Animation Track主要控制動畫的播放,包括動畫片段蛔六、幀動畫等荆永。當(dāng)我們點擊Animation Track時,可以設(shè)置其屬性国章,如下圖所示:?
Apply Avatar Mask(啟用“阿凡達遮罩”具钥,當(dāng)啟用后將根據(jù)選擇的遮罩應(yīng)用在整個軌道中)?
Avatar Mask(選擇需要的遮罩,并將其應(yīng)用在當(dāng)前Animation軌道中)?
最終效果如下:?
Apply Track Offsets(啟用軌道偏移效果液兽,將所有動畫的起始位置都設(shè)置為指定的偏移角度和位置上骂删,與動畫片段中的Clip Root Motion Offsets功能類似)?
Clip Offset Match Fields(該選項可以設(shè)置不同動畫之間偏移可匹配的變換)
1.添加Animation Clip?
右擊Animation Clip的空白處,選擇Add From Animation Clip即可從已有的動畫片段中選擇四啰。?
可以拖拽動畫片段調(diào)整播放的時間宁玫,同時也可以將多個動畫片段進行疊加來完成動畫過渡效果。?
2.錄制動畫?
可以在Animation Clip中點擊紅色按鈕進行錄制柑晒,通過設(shè)置不同的屬性來為物體設(shè)置關(guān)鍵幀欧瘪,從而完成不同類型的動畫制作。?
3.設(shè)置曲線?
錄制的動畫可以在動畫窗口中打開匙赞,在動畫窗口中可以通過關(guān)鍵幀點的方式進行控制佛掖,也可以通過曲線的方式進行控制妖碉。?
Audio Track主要控制動畫中的音效,可以設(shè)置聲音的起始時間芥被、結(jié)束時間欧宜、淡入時間、淡出時間拴魄、播放速度冗茸、不同音效間的混合效果、是否循環(huán)播放等匹中。其屬性如下所示:?
Control Track主要控制與時間有關(guān)的元素夏漱,如粒子效果、Timeline等职员。?
該軌道可以在指定的父物體下實例化一個Prefab麻蹋,并對該Prefab中與時間有關(guān)的元素進行播放操作。?
Playable Track允許用戶自定義相關(guān)動畫效果焊切,在Default Playables資源包中包含了一部分自定義的功能軌道扮授,包括文字、時間专肪、燈光刹勃、位置、尋路嚎尤、淡入淡出等效果荔仁,用戶也可以根據(jù)自己的需要進行定制化開發(fā),以實現(xiàn)更加復(fù)雜的效果芽死。?
以下為運行后的調(diào)用順序?
以下為該Timeline設(shè)置的狀態(tài)乏梁,主要部分為PlayableTrack。?
最終運行效果如下:?
該方法也可通過繼承BasicPlayableBehaviour類完成关贵,但是在未來的版本中該類可能會被PlayableBehaviour和PlayableAsset類取代遇骑。
在使用TimeLine功能的過程中,如果對物體使用了錄制功能進行位置的調(diào)整揖曾,很多情況下物體的默認(rèn)位置會發(fā)生偏移落萎,最好在使用TimeLine的Animation Track錄制功能前先備份場景,以免在設(shè)置動畫過程中對場景造成破壞炭剪。
本人對TimeLine很多功能還不夠熟悉练链,這些只是在使用過程中用到的功能,將Timeline和CineMachine以及Post Processing等功能進行結(jié)合可以做出相當(dāng)炫酷的效果奴拦,可參考Unity官方的Adam&Neon動畫短片媒鼓。