關鍵幀
概述
關於flash的套用:在flash中,每個關鍵幀都可以被賦予更多的用途。
其中,關鍵幀的用途又分為:普通關鍵幀(用於處理圖形圖像和動畫);動作腳本關鍵幀(用於存放動作腳本,關鍵幀可以通過動作腳本控制flash影片和其中的影片剪輯);
引導層關鍵幀
引導層關鍵幀(基於引導圖層創建的普通關鍵幀,該種關鍵幀在播放flash影片時是不可見的,僅用於注釋flash影片);
當然,每個關鍵幀都同時可以被賦予幾種用途(除 引導層關鍵幀外),關鍵幀也可以通過影片圖層實現疊加的效果。
空白關鍵幀
空白關鍵幀是沒有任何對象存在的幀,主要用於在畫面與畫面之間形成間隔,它在時間軸上是以空心圓的形式顯示,用戶可以在其上繪製圖形,一旦在空白關鍵幀中創建了內容,空白關鍵幀就會自動轉變為關鍵幀,按F7快捷鍵可創建空白關鍵幀。
一般新建圖層的第1幀都是空白關鍵幀,如果在其中繪製圖形,則會自動變為關鍵幀,同理,如果將某關鍵幀中的對象全部刪除,則這個關鍵幀就會轉變為空白關鍵幀。
發展歷程
關鍵幀的概念來源於傳統的卡通片製作。在早期Walt Disney的製作室,熟練的動畫師設計卡通片中的關鍵畫面,也即所謂的關鍵幀,然後由一般的動畫師設計中間幀。在三維計算機動畫中,中間幀的生成由計算機來完成,插值代替了設計中間幀的動畫師。所有影響畫面圖象的參數都可成為關鍵幀的參數,如位置、鏇轉角、紋理的參數等。關鍵幀技術是計算機動畫中最基本並且運用最廣泛的方法。另外一種動畫設定方法是樣條驅動動畫。在這種方法中,用戶採用互動方式指定物體運動的軌跡樣條。幾乎所有的動畫軟體如Alias、Softimage、Wavefront、TDI、3DS等都提供這兩種基本的動畫設定方法。
插值方法
無論是樣條驅動動畫還是關鍵幀插值方法,都會碰到這個問題:給定物體運動的軌跡,求物體在某一幀畫面中的位置。物體運動的軌跡一般由參數樣條來表示。如果直接將參數和幀頻聯繫起來,對參數空間進行等間隔採樣,有可能帶來運動的不均勻性。為了使物體沿一樣條勻速運動,必須建立弧長與樣條參數的一一對應關係。Guenter等提出用Gauss型數值積分方法計算弧長,用Newton-Raphason疊代來確定給定弧長點在曲線上的位置,並採用查找表法記錄參數點弧長值的方法來加速計算。在動畫設計中,動畫師經常需調整物體運動的軌跡來觀察物體運動的效果,互動的速度是一個很重要的因素。Watt等提出了用向前差分加查找表的方法來提高互動的速度。在精度要求不是很高的情況下,他們的方法非常有效。
原理
從原理上講,關鍵幀插值問題可歸結為參數插值問題,傳統的插值方法都可套用到關鍵幀方法中。但關鍵幀插值又與純數學的插值不同,它有其特殊性。一個好的關鍵幀插值方法必須能夠產生逼真的運動效果並能給用戶提供方便有效的控制手段。一個特定的運動從空間軌跡來看可能是正確的,但從運動學或動畫設計來看可能是錯誤的或者不合適的。用戶必須能夠控制運動的運動學特性,即通過調整插值函式來改變運動的速度和加速度。為了很好地解決插值過程中的時間控制問題,Steketee等提出了用雙插值的方法來控制運動參數。其中之一為位置樣條,它是位置對關鍵幀的函式;另一條為運動樣條,它是關鍵幀對時間的函式。Kochanek等提出了一類適合於keyframe系統的三次插值樣條,他們把關鍵幀處的切矢量分成入矢量和出矢量兩部分,並引入三個參數:張量t、連續量c和偏移量b對樣條進行控制。該方法已在許多動畫系統中得到了套用。