unity3d怎么让模型动起来_Unity动画系统详解1:在Unity中如何制作动画?
摘要:在場景中加入動態的物體,可以讓整個場景更加生動、真實。Unity場景中的物體可以通過制作動畫,讓物體動起來。簡單的動畫如物體的移動、旋轉(比如旋轉的風扇、閃爍不定的燈泡等),復雜的動畫如游戲中角色的動作、面部表情等。
洪流學堂,讓你快人幾步。你好,我是跟著大智學Unity的萌新,我叫小新,這幾周一起來復(yu)習(xi)動畫系統。
包含動畫的場景
小新:“智哥,我想在場景里加上一個旋轉的風扇怎么做啊?現在做的模型都是靜態的。”
大智:“這就需要用到動畫系統了。在場景中加入動態的物體,會讓整個場景更加生動、真實。除了上周學過的粒子效果外,場景中的物體也可以通過制作動畫,讓物體動起來。簡單的動畫如物體的移動、旋轉(比如旋轉的風扇、閃爍不定的燈泡等),復雜的動畫如游戲中角色的動作、面部表情等。”
動畫系統
Unity中的動畫主要是三種來源:
在Unity引擎中制作動畫
從外部工具(如3ds Max、Maya等)導入動畫
使用代碼制作的動畫
下面討論的主要是前兩種來源的動畫,使用代碼寫動畫我們后面再學習。
Unity中內置了強大的動畫系統,可以支持在Unity內制作動畫,也支持從外部導入動畫。
動畫系統基于一種名為Animation Clip(動畫剪輯)的資源,這些資源以文件的形式存在工程中。這些文件內的數據記錄了物體如何隨著時間移動、旋轉、縮放,物體上的屬性如何隨著時間變化。每一個Clip文件是一段動畫。
這些動畫可以在Unity中直接制作,也可以由美術同學在3D建模軟件中制作并導入到Unity中。
在Unity中制作動畫
在Unity中制作動畫需要用到Animation窗口,可以通過菜單欄Window > Animation打開Animation窗口。
通過這個窗口可以創建、編輯動畫,也可以查看導入的動畫。Animation窗口同一時間只能查看、編輯同一段Clip中的動畫。Animation適合單個物體(及其子物體)的動畫編輯。咱們最近剛學的Timeline系統,適合同時對場景中多個物體制作復雜動畫,還能包含音頻,自定義的動畫內容。
在Unity中制作動畫一般分為以下幾個步驟:
1、打開Animation窗口
2、選中要制作動畫的物體
3、創建新的動畫Clip
4、編輯、預覽、修改動畫
創建新的Animation Clip
選中要制作動畫的物體,這時候Animation窗口會有以下兩種狀態:
狀態1:該物體上沒有動畫,可以點擊Animation窗口中間的Create按鈕創建動畫Clip。
物體上沒有動畫的情況
狀態2:該物體上已經有動畫,會在窗口中顯示一段動畫的關鍵幀。可以通過左上角的菜單切換預覽動畫、創建新動畫。可以點擊Create New Clip...來創建新的動畫Clip,如下圖所示。
物體上有動畫的情況
點擊完創建新的動畫Clip后,會彈出一個文件對話框,可以設置保存動畫Clip的位置。(為了保持工程文件目錄的整潔,不要保存在工程根目錄,建議保存在Animations文件夾中)
保存完畢后,原先沒有動畫的物體上會自動附加一個Animator組件,這個組件是做什么的呢?
Animator組件
Animation Clip只是一段動畫數據,你可以把它類比成視頻文件,而Animator組件是一個播放器,用來控制動畫的播放、多個動畫片段之間的切換等。
Animator窗口
Animator組件的第一個屬性是Controller,對應到工程目錄中的文件是一個Animator Controller類型的文件,可以在這個文件中定義動畫Clip之間如何進行切換。雙擊這個文件會打開Unity的Animator窗口,顯示該文件中的內容。后面會細講Animator組件。
制作動畫
創建了動畫Clip后,就可以開始制作動畫了。
Animation窗口有兩種模式:錄制模式和預覽模式。
點擊圖中紅色按鈕進入錄制模式,時間軸會顯示為紅色
點擊圖中Preview按鈕進入預覽模式,時間軸會顯示為淺藍色。在時間軸上點擊也會自動進入預覽模式
在錄制模式下,當你對物體進行改動時(例如移動、旋轉、縮放、修改屬性等),Unity會自動在當前時間位置生成關鍵幀,記錄修改的屬性。
在預覽模式下,修改物體不會自動創建/修改關鍵幀,如果需要創建/修改關鍵幀,你需要手動點擊添加關鍵幀按鈕。
錄制關鍵幀
點擊錄制按鈕后,就進入了錄制狀態。
可以通過在時間軸上拖動修改當前所在的時間位置。
在時間軸上拖動修改當前時間
也可以通過修改當前幀數輸入框中的數字,修改時間軸的位置。默認情況下,動畫的幀速率是60,即每秒播放60幀。如果設置當前幀數為30,就是0.5秒的位置。
在錄制模式下,不管是在場景中移動、旋轉、縮放物體,還是在Inspector面板中修改物體組件的屬性(Unity動畫支持的屬性),Unity都會自動在動畫Clip的當前時間上添加關鍵幀保存。
當前被記錄的屬性,在Inspector上會以紅色背景顯示
編輯動畫
編輯完動畫后,可以再次點擊錄制按鈕退出錄制模式,避免后續對物體的操作被記錄到動畫中。
現在你會看到在Animation窗口中,左側多處很多個屬性,這些屬性就是所有被記錄的屬性列表。你也可以通過點擊下方的Add Property按鈕手動添加需要被動畫記錄的屬性。
手動創建關鍵幀
如果沒有在錄制模式下,對物體的修改不會自動記錄到動畫Clip中。如果需要記錄,需要手動添加關鍵幀進行記錄。
如果在Inspector中修改了物體的屬性,物體的屬性會從淺藍色背景變為淺紅色,代表該屬性已經被修改。這時候你可以右鍵點擊對應的屬性,在彈出菜單中點擊Add Key即可添加關鍵幀,將該屬性的數據保存到動畫Clip中。如果你在當前幀修改了多個屬性,可以點擊菜單中的Key All Modified(將所有修改的屬性記錄關鍵幀)或Key All Animated(記錄屬性列表中所有屬性的數值,即使與上一幀相同數值的屬性也會被記錄)來一次性將所有修改的屬性保存。
屬性上的右鍵菜單
也可以點擊Animation窗口左側的Add Keyframe按鈕來記錄當前屬性列表中選中屬性的關鍵幀,如果當前沒有選中任何屬性,則會記錄所有屬性。如下圖所示。
小技巧
添加關鍵幀也有快捷鍵哦,記住快捷鍵能大幅提高制作動畫的效率。
K Key All Animated,將記錄當前屬性列表中選中屬性的關鍵幀,如果當前沒有選中任何屬性,則會記錄所有屬性。
Shift + K Key All Modified,將動畫屬性列表中所有已修改的屬性的數值記錄為關鍵幀。
使用曲線編輯動畫
默認情況下,Animation窗口是DopeSheet模式,顯示的是關鍵幀的點。可以通過點擊下方的Curves切換為曲線模式,進一步調節關鍵幀之間的數值是如何過渡的。
切換到Curves模式后,出現的曲線編輯框和我們之前在粒子系統模塊學到的用法是一樣的,在這就不重復了。
可以在左側屬性列表選中一條或多條曲線進行編輯。
小技巧
別忘了F的妙用,F鍵可以讓曲線充滿整個窗口,這在不同屬性的曲線之間切換時非常有用。
編輯關鍵幀
編輯關鍵幀時,可以多選(在Curve編輯中同理):
按住Shift或Ctrl,再點擊關鍵幀可以選中多個關鍵幀
通過框選多選關鍵幀
按住Shift或Ctrl的同時框選,可以添加或移除框選住的關鍵幀
框選關鍵幀
批量移動關鍵幀
批量縮放關鍵幀
Ripple Edit 波紋編輯
你會發現直接拖拽多個關鍵幀時,后方的關鍵幀并不會跟隨這些關鍵幀移動。如果你想讓后方的關鍵幀也跟著移動,可以按住R鍵,同時拖拽這些關鍵幀。這種編輯方式叫做Ripple Edit(在音視頻編輯軟件中很常見)。縮放同理。
Ripple Edit
預覽動畫效果
點擊Animation窗口中的播放按鈕,就可以在Scene中預覽動畫。
在游戲運行時播放動畫
今天做出來的動畫,在點擊Play按鈕以后就會自動循環播放了。如果不想讓它循環播放,可以選中Animation Clip文件,取消Loop的勾選。
如果不想讓這段動畫自動播放,那就需要修改Animator Controller啦,接著往下學吧!
總結
大智:“敲黑板,今天講了如何使用Unity內的Animation給物體做動畫,希望你能記住一下幾點:”
Animation Clip是Unity中保存動畫的資源文件,保存在工程中。
Animator是Animation Clip的播放器。
Animator Controller是一個“導演”,類似“播放列表”,用來指導Animator如何播放其中的Animation Clip
今日思考題
大智:“動手創建一個簡單的動畫試一試吧!”
小新:“好嘞~”
大智:“收獲別忘了分享出來!別忘了分享給你的朋友,也許能夠幫到他。”
擴展閱讀
【擴展學習】在洪流學堂公眾號回復動畫可以閱讀本系列所有文章,更有視頻教程等著你!
呼~ 今天小新絮絮叨叨的真是夠夠的了。沒講清楚的地方歡迎評論,咱們一起探索。
我是大智(微信:zhz11235),你的技術探路者,下次見!
別走!點贊,收藏哦!
好,你可以走了。
總結
以上是生活随笔為你收集整理的unity3d怎么让模型动起来_Unity动画系统详解1:在Unity中如何制作动画?的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 3DMax基础入门教程,命令面板的设置简
- 下一篇: mysql目录结构与源码