幀動畫,Tween 動畫,骨骼動畫等動畫的關係及分類是怎樣的?

動畫有哪幾種類型?是如何分類的,關於 IK, FK 和幀動畫,骨骼動畫,tween動畫又有什麼關係?
--
本題來自知乎圓桌 ?動畫電影動畫人,歡迎關注討論。


應該說所有動畫都是基於關鍵幀的。

幀動畫:一張一張的圖片,每張圖片是一個關鍵幀。

骨骼動畫:仿照「真實」的骨骼結構,建立一個節點樹,每個節點算是一個骨骼的關節,然後在這些關節上指定關鍵幀,通過一些計算來生成中間幀。所謂FK和IK,都是計算中間幀節點位置的方法。3D骨骼需要兩個步驟,一是rigging(綁骨),就是建立一個骨骼框架,而是skinning(貼皮?),就是把3D模型對應到骨骼框架上。2D骨骼其實是一個比較模糊的概念,可以按照3D這個流程走,進行綁骨和貼皮,但是很多遊戲所謂的2D骨骼並沒有一個嚴謹的骨骼結構(通常也沒有必要),而是直接在「皮」上做動畫。在骨骼基礎之上,用一些拉伸變形的非骨骼技巧也是非常常見的。

FK(Forward Kinematics,翻譯成正向運動?):就是直接指定節點的位置,然後簡單的計算中間幀位置。

IK(Inverse Kinematics,翻譯成反向運用?):正向的指定節點位置太麻煩了,根據一些簡單的觀察,大家(搞機器人和計算機圖形的)發現典型的人體運動是有規律的,關節彎曲的時候會以一個盡量「省力」的方法。IK就是定義一個「省力的標準」,自動生成中間節點的位置。比如一個動畫師在調手臂的動畫,用FK,他需要分別指定手關節和肘關節兩個節點的骨骼位置和方向,用IK,他只需要放置手關節的節點,動畫工具會根據演算法自動生成肘關節的位置和方向。因為大部分IK的實現是基於經驗的簡單演算法,所以通常會有一些死角和不可用的情況。想準確的計算骨骼中間節點位置需要模擬肌肉和骨骼的biomechanics,在一般的動畫軟體中做不大,也沒多大必要。

所謂tween動畫,我接觸這個名字是在flash里。基本意思就是「補間」,也就是把兩個關鍵幀連起來。通常做法就是線性的計算中間數值(也可以是任何函數變換)。這種簡單的線性插值計算可以用在任何參數上,位置,大小,方向,等等等等。FK/IK可以說都在用,僅僅是計算兩幀之間的中間值而已。


動畫從製作來講 粗糙的分成二維動畫 三維動畫 定格動畫
二維動畫簡單的理解成畫的動畫(當然畫的定義較為寬泛) flash動畫也是二維動畫 宮崎駿的動畫(他的動畫 有的部分鏡頭有三維處理) 《獅子王》 《白雪公主》
三維動畫 在中期製作和二維就有很大的不同 中期製作在三維軟體里完成 不明白三維軟體的話 想一下 建築效果圖是什麼做的 現在迪斯尼動畫多為三維 玩的大部分網遊多為三維動畫製作
定格動畫 例如偶動畫 粘土動畫 《小雞快跑》 國產的《曹沖稱象》
IK FK解釋起來可能有些麻煩 題主可以抬一下自己的手 力的傳遞為肩 手臂 手 但是做俯卧撐順序會反過來 手 手臂 肩 胸 因為力的來源不同 其實就製作時人為的使身體某一部位不被身體帶動
骨骼動畫已經涉及具體動畫製作了 題主就當做真實的人是骨頭把帶著肌肉皮膚運動 骨骼動畫是在三維軟體里的表現形式
tween動畫 不懂


這裡面混雜著好幾種不同性質,無法類比的概念。一個一個說。

首先「幀動畫」應該是指的是逐幀動畫,也就是動畫的每一幀都獨立地保存在媒體內,連續播放這些幀即形成了連續動態。一般常見於GIF動畫。廣義上來說,所有的視頻都屬於這個範疇。

「Tween動畫」是一個比較特殊的叫法。我估計可能是受到了Flash的影響。Tween其實是In-between的簡寫,指的是計算機自動插值補全關鍵幀Keyframe之間的動畫。補全的動畫既可以是動態Motion也可以是變形Morph。所以Tween其實只是一個補全的過程,更加合理的稱呼應該是關鍵幀動畫。

逐幀動畫和關鍵幀動畫才是相對應的兩個概念。在實際製作的過程中,由於成本的原因,很少有人逐幀製作了,但也有例外,可以查一下Rotoscoping,不展開了。即使傳統手繪動畫製作的過程中也是「原畫」和「動畫」兩組人馬分開進行——前者相當於Keyframing,後者Tweening。

「骨骼動畫」並不是一種動畫製作形式,而是一種製作手段。目前的動畫物體,特別是有機體,其構成和變形非常複雜,比方說一個由成千上萬個點構成的3D角色。儘管動畫本質上是這些點在空間內做位移構成的,但直接驅動這些點非人力能為。因此我們把運動簡化成骨骼來代表,並把點一一映射到骨骼上。構成骨骼的過程叫Rigging,把點映射到骨骼上的過程叫蒙皮Skinning。目前技術所限,Rigging和Skinning的過程基本上都是手工為主。專業的生產流程中由專人負責。

骨骼蒙皮完成後,採取何種形式動畫,那就是你的自由了。

反向動力學IK和正向動力學FK是一對骨骼系統特有的概念,指的是兩種相反的骨骼層級控制方式。舉個典型的例子,在上臂——前臂——手的層級上進行動畫,利用IK我們可以直接動畫手,前臂和上臂會自動調整成合理的角度,這是因為通過逆向動力學,我們可以計算出上臂和前臂骨骼應有的角度。如果沒有IK,而是使用FK,子物體是無法影響父物體。如果想讓手抬起來的話,就要先抬一點上臂,再抬一點前臂,最後調整手。這種顯然反直覺的動畫方式是效率非常低的。

總結一下,「逐幀動畫」和「關鍵幀動畫」是動畫製作形式。「骨骼動畫」是動畫製作手段,而IK和FK則是基於骨骼系統的兩種相對的控制方式。


我來簡單說點原理吧:

用手臂的動作來簡單解釋下ik和fk的區別

fk其實就是讓大臂繞著肩關節轉動,小臂繞著肘關節轉動,手掌繞著腕關節轉動,關鍵幀紀錄的是旋轉運動。

想像我們要去拿一個杯子,fk會甩動我們的大臂到一定位置,然後甩動小臂到一定位置以讓手掌夠到杯子。怎麼樣?聽著都覺得彆扭對不?那讓我們來試試ik。

ik就人性化多了,ik會在我們的肩關節,肘關節,和腕關節三點間構建一個三角,腕關節的位移會帶動肘關節的相應位移,而關節的位移會帶動大臂與小臂被動旋轉。

現在,讓我們再試試用ik來拿杯子,我們抓起腕關節移向杯子就可以了,大臂和小臂自己知道該怎麼旋轉。這和我們平時用手臂的方式是一致的,很自然,也更簡單。

現在我們來說說關鍵幀。在3D動畫里,關鍵幀其實就是需要你去定義的幀,以拿杯子這個動作來說,手掌從a點移動到杯子處,手臂在a點會有一個關鍵幀,到達杯子處一個關鍵幀,至於關鍵幀之間的中間幀,電腦會自動插值計算,如果需要干涉電腦的插值方式,可以調節插值曲線或者再插入關鍵幀。

現在我們去看看骨骼的綁定,一開始搭建的骨骼都是fk狀態,然後我們在四肢上面加上ik,讓動畫師可以抓著角色的手去做動作,而不是單純去旋轉那些大臂小臂,煸情點說,ik可以讓我們用滑鼠和角色握手了,一個最簡單的骨骼就綁定好了(好的骨骼綁定可以非常複雜,但這裡沒必要深入探究)。

骨骼搭建好了,現在電腦需要知道每根骨骼的旋轉需要帶動模型上哪些相應的點對吧,對於許多相鄰的骨骼來說,有些點例如肘彎部分的點是既屬於上臂也屬於下臂的,這就需要進行權重的劃分,為不同的骨骼分配點的權重,權重分配適當後,骨骼的動作才會被很好地賦予模型。這就是蒙皮。


IK, FK是關節運動解算的兩種方式,IK是通過控制子關節來帶動父關節的運動;FK是正向動力學,通過父關節來影響子關節,就好比手辦玩具。IK/FK都是通過控制單一關節的位移來計算整條關節連中各關節在一定結構下的運動角度,是一種很方便的控制方法,是動畫的工具,僅此而已。

幀動畫
所有的動畫都可以稱之為幀動畫,沒有幀就沒有動畫這個概念,甚至就連影像這個概念都不會有。

骨骼動畫
動畫製作中使用到骨骼工具就算是用骨骼製作的幀動畫,簡稱骨骼動畫。

tween動畫
tween就是補間,所謂補間就是根據前後兩個關鍵幀來自動計算中間的過度畫面。補間的幀數和時間長度是完全可控的,但是在處理複雜運動時,效果非常不理想,通常需要大量手動修改。

樓主可以從基本的二維軟體,如Flash開始學起,單看概念很容易木。

補充一下:動畫就是動畫,動起來的畫。一般只有在風格和表現手法上進行分類,很少會單純從技術上分類。就好比電影,你不會太在意拍攝時用了多少特效,用的什麼攝像機,膠片還是數字,色彩空間和寬容度是多少。


因為接觸移動端比較多,所以講下在移動端使用到的情況.
幀動畫和補間動畫(tween)
幀動畫

逐幀動畫是一種常見的動畫形式(Frame By Frame),其原理是在「連續的關鍵幀」中分解動畫動作,也就是在時間軸的每幀上逐幀繪製不同的內容,使其連續播放而成動畫。 因為逐幀動畫的幀序列內容不一樣,不但給製作增加了負擔而且最終輸出的文件量也很大,但它的優勢也很明顯:逐幀動畫具有非常大的靈活性,幾乎可以表現任何想表現的內容,而它類似與電影的播放模式,很適合於表演細膩的動畫。例如:人物或動物急劇轉身、 頭髮及衣服的飄動、走路、說話以及精緻的3D效果等等。

比如我們看的動漫,都是一張一張畫出來,效果細膩,想像空間大
在移動端的實現中,都是事先準備好一些需要循環的圖片,通過線程去循環播放。
這就涉及到了一個問題,資源。

補間動畫
補間動畫則是通過在兩個關鍵幀之間補充漸變的動畫效果來實現的。在程序的實現中,可以選擇性的添加透明度(alpha),位移(translate),旋轉(rotate)等animation來實現效果。
相對於幀動畫來說,補間動畫佔用資源少,調用方便。

嗯,暫時想到了這些,想到了會繼續補充。
拋磚引玉之用。


說的都挺全面了。總結精鍊一點。
按照表現形式區分:二維動畫,三維動畫,定格動畫。
從製作方法上來講 現在一般都是逐幀動畫。定格動畫也就是拍攝一張照片就算一幀,所以也屬於逐幀。
二維動畫,就理解為手繪吧。
三維動畫,通過計算機使用比如MAYA 3DMAX製作的。比如功夫熊貓什麼的。有很多三維模仿二維效果的動畫都有很不錯的反響。
定格動畫,用木偶或者陶土之類的模型擺拍的,工程量略大。我就想起來一個殭屍新娘。印象實在太深。
解釋一下你說的 tween動畫 就是關鍵幀動畫了 , 電腦動畫特有的名詞,在一個時間長度範圍內設置多個關鍵幀,之後電腦自動解算出這其中的動作。如果關鍵幀擺放的合適 這是比較省事省力的。但是實際操作的時候 感覺除了放個動力場讓電腦解算。別的還是算了吧。
幀動畫。幀就是在動畫或這電影製作過程中 最小的一個時間單位。通常一秒30幀。有些國產電視動畫會略低,不點名了。分為關鍵幀和逐幀。
逐幀 就是相對於上面說的關鍵幀動畫的,每一幀都帶有畫面的變化。二維動畫都是這樣的 因為沒有電腦可以計算就是一幀一幀的畫。
IK, FK 是骨骼綁定系統中的一種控制模式。IK 反向動力學 。 FK 正向動力學。兩者區別在於 FK的計算邏輯是父子關係,也就是上級帶動下級。IK與之相反。不理解IK沒事。。。不用理解= = 只是實際應用中適用於不同場合罷了。
說一下骨骼,三維動畫 先要建模,也就是一個物體或者人物的模型,骨骼帶動模型,然後再創建控制器,控制器再帶動骨骼。製作過程中 動畫人員只能編輯控制器的活動 不能直接編輯骨骼和模型的活動。

以上?


推薦閱讀:

如何評價《新世紀福音戰士》的動畫製作?
為什麼中國的CG動畫人物動作很遲鈍?
學動畫應該掌握哪些軟體?
怎麼評價古橋一浩監督?
《大鱼海棠》是不是动画片里的《小时代》?

TAG:動畫 | 動畫製作 |