個(gè)時(shí)刻上的狀態(tài)值生成如圖17 所示的動(dòng)畫曲線。對(duì)于目標(biāo)動(dòng)畫而言,圖片A的透明度在Os到5s之間從不透明按照動(dòng)畫 曲線變?yōu)橥该鳌?br>[0147] 與上述方法類似的,在第十五種可能的實(shí)現(xiàn)方式中,根據(jù)起始關(guān)鍵頓的狀態(tài)值、終 止關(guān)鍵頓的狀態(tài)值W及歸一化處理后的各個(gè)時(shí)刻,得到目標(biāo)動(dòng)畫在各個(gè)時(shí)刻上的狀態(tài)值, 包括:
[014引通過公式V = (Vi-V。)X [pow(2,-10XT/l)+l)]+V。計(jì)算各個(gè)時(shí)刻上的狀態(tài)值,其 中,V表示在歸一化處理后的時(shí)刻T上的狀態(tài)值,V。表示起始關(guān)鍵頓的狀態(tài)值,V 1表示終止 關(guān)鍵頓的狀態(tài)值。
[0149] 根據(jù)該公式得到各個(gè)時(shí)刻上的狀態(tài)值,進(jìn)而根據(jù)各個(gè)時(shí)刻上的狀態(tài)值生成如圖18 所示的動(dòng)畫曲線。對(duì)于目標(biāo)動(dòng)畫而言,圖片A的透明度在Os到5s之間從不透明按照動(dòng)畫 曲線變?yōu)橥该鳌?br>[0150] 與上述方法類似的,在第十六種可能的實(shí)現(xiàn)方式中,根據(jù)起始關(guān)鍵頓的狀態(tài)值、終 止關(guān)鍵頓的狀態(tài)值W及歸一化處理后的各個(gè)時(shí)刻,得到目標(biāo)動(dòng)畫在各個(gè)時(shí)刻上的狀態(tài)值, 包括:
[0151] 通過公式
才算各個(gè)時(shí)刻 上的狀態(tài)值,其中,V表示在歸一化處理后的時(shí)刻T上的狀態(tài)值,V。表示起始關(guān)鍵頓的狀態(tài) 值,Vi表示終止關(guān)鍵頓的狀態(tài)值。
[0152] 根據(jù)該公式得到各個(gè)時(shí)刻上的狀態(tài)值,進(jìn)而根據(jù)各個(gè)時(shí)刻上的狀態(tài)值生成如圖19 所示的動(dòng)畫曲線。對(duì)于目標(biāo)動(dòng)畫而言,圖片A的透明度在Os到5s之間從不透明按照動(dòng)畫 曲線變?yōu)橥该鳌?br>[0153] 需要說明的是,在上述的各種可能的實(shí)現(xiàn)方式中,Sin(X)是指C語言Math(數(shù) 學(xué))庫中定義的函數(shù),用來求給定值的正弦值,其原型為;double sin(double x);cos(x) 是指C語言Math庫中定義的函數(shù),用來求給定值的余弦值,其原型為;double cos (double X) ;pow(x,y)是指C語言Math庫中定義的函數(shù),用來求X的y次幕,其原型為;double pow(double X,double y),其中,x,y 表示變量。
[0154] 上述的動(dòng)畫曲線的生成方法,可W應(yīng)用于用來制作動(dòng)畫特效的客戶端中,該客戶 端可W運(yùn)用不同的動(dòng)畫曲線,對(duì)圖像、視頻等進(jìn)行處理,形成特定的動(dòng)畫效果。例如微視" 客戶端可W用來制作動(dòng)感影集,如圖20所示,在點(diǎn)擊"動(dòng)感影集"按鈕后,用戶可W選擇用 來制作動(dòng)感影集的照片,進(jìn)而跳轉(zhuǎn)到如圖21所示的具有動(dòng)畫特效的動(dòng)感影集顯示界面,W "沙灘"效果為例,在"沙灘"效果中,每張照片都隨海灘中的相框運(yùn)動(dòng)而運(yùn)動(dòng),所W每張照片 需要一個(gè)改變位置的動(dòng)畫,郝么就可W采用上述第二種可能的實(shí)現(xiàn)方式中的二次方插值算 法,即先慢速運(yùn)動(dòng)然后速度逐漸加快,W形成所需的動(dòng)畫效果。當(dāng)然,不同的場(chǎng)景可W由設(shè) 計(jì)人員選擇合適的動(dòng)畫曲線,本發(fā)明實(shí)施例對(duì)此不做限制。
[01巧]可選地,在步驟S204之后,方法可W還包括:
[0156] Sl ;將各個(gè)時(shí)刻上的狀態(tài)值W json格式存儲(chǔ)。
[0157] 具體地,本發(fā)明實(shí)施例的動(dòng)畫曲線的生成裝置可W將各個(gè)時(shí)刻上的狀態(tài)值Wjson 格式存成文件,其格式可W為{ "value";[V0,…,Vl],"ke5Ttimes";[T0,…,T1]},方便 設(shè)計(jì)人員直接應(yīng)用到目標(biāo)動(dòng)畫中。
[0158] 在上述環(huán)境下,根據(jù)本發(fā)明實(shí)施例提供的動(dòng)畫曲線的生成方法,在步驟S208中, 可W在屏幕中顯示動(dòng)畫曲線。
[0159] 上述實(shí)施例中,均W改變圖片A的透明度為例,對(duì)生成動(dòng)畫曲線的方法進(jìn)行了示 例性說明,而對(duì)于其它狀態(tài)值,例如長度、寬度、高度及位置等,均可W采用上述方法,此處 不再賞述。
[0160] 在本發(fā)明實(shí)施例中,采用自動(dòng)生成動(dòng)畫曲線的方式,通過獲取目標(biāo)動(dòng)畫的起始時(shí) 刻和終止時(shí)刻、目標(biāo)動(dòng)畫的起始關(guān)鍵頓的狀態(tài)值W及目標(biāo)動(dòng)畫的終止關(guān)鍵頓的狀態(tài)值,根 據(jù)起始關(guān)鍵頓的狀態(tài)值和終止關(guān)鍵頓的狀態(tài)值,得到目標(biāo)動(dòng)畫在起始時(shí)刻到終止時(shí)刻的范 圍內(nèi)的各個(gè)時(shí)刻上的狀態(tài)值,進(jìn)而根據(jù)各個(gè)時(shí)刻上的狀態(tài)值生成目標(biāo)動(dòng)畫的動(dòng)畫曲線,達(dá) 到了多種插值算法,自動(dòng)生成動(dòng)畫曲線,方便設(shè)計(jì)人員快速實(shí)現(xiàn)復(fù)雜動(dòng)畫的目的,從而跟現(xiàn) 有技術(shù)中設(shè)計(jì)人員所有頓都標(biāo)注相比,實(shí)現(xiàn)了自動(dòng)化,消耗生產(chǎn)力低,極大提高生產(chǎn)效率的 技術(shù)效果,進(jìn)而解決了由于二維、H維等復(fù)雜動(dòng)畫曲線需要依靠設(shè)計(jì)人員逐頓標(biāo)注所造成 的動(dòng)畫曲線生成效率較低的技術(shù)問題。
[0161] 需要說明的是,對(duì)于前述的各方法實(shí)施例,為了簡單描述,故將其都表述為一系列 的動(dòng)作組合,但是本領(lǐng)域技術(shù)人員應(yīng)該知悉,本發(fā)明并不受所描述的動(dòng)作順序的限制,因?yàn)?依據(jù)本發(fā)明,某些步驟可W采用其他順序或者同時(shí)進(jìn)行。其次,本領(lǐng)域技術(shù)人員也應(yīng)該知 悉,說明書中所描述的實(shí)施例均屬于優(yōu)選實(shí)施例,所涉及的動(dòng)作和模塊并不一定是本發(fā)明 所必須的。
[0162] 通過W上的實(shí)施方式的描述,本領(lǐng)域的技術(shù)人員可W清楚地了解到根據(jù)上述實(shí)施 例的方法可借助軟件加必需的通用硬件平臺(tái)的方式來實(shí)現(xiàn),當(dāng)然也可W通過硬件,但很多 情況下前者是更佳的實(shí)施方式?;谒蜆拥睦斫?,本發(fā)明的技術(shù)方案本質(zhì)上或者說對(duì)現(xiàn)有 技術(shù)做出貢獻(xiàn)的部分可W W軟件產(chǎn)品的形式體現(xiàn)出來,該計(jì)算機(jī)軟件產(chǎn)品存儲(chǔ)在一個(gè)存儲(chǔ) 介質(zhì)(如R0M/RAM、磁碟、光盤)中,包括若干指令用W使得一臺(tái)終端設(shè)備(可W是手機(jī),計(jì) 算機(jī),服務(wù)器,或者網(wǎng)絡(luò)設(shè)備等)執(zhí)行本發(fā)明各個(gè)實(shí)施例的方法。
[0163] 實(shí)施例2
[0164] 根據(jù)本發(fā)明實(shí)施例,提供了一種動(dòng)畫曲線的生成裝置,在本實(shí)施例中,上述動(dòng)畫曲 線的生成裝置可W應(yīng)用于如圖1所示的設(shè)置有動(dòng)畫曲線生成工具的終端102的硬件環(huán)境 中。如圖1所示,終端102可W但不限于包括W下之一:手機(jī)、平板電腦。終端102的動(dòng)畫 曲線生成工具在生成動(dòng)畫曲線時(shí),可W根據(jù)目標(biāo)動(dòng)畫的起始時(shí)刻和終止時(shí)刻、目標(biāo)動(dòng)畫的 起始關(guān)鍵頓的狀態(tài)值W及目標(biāo)動(dòng)畫的終止關(guān)鍵頓的狀態(tài)值,生成目標(biāo)動(dòng)畫的動(dòng)畫曲線。
[0165] 根據(jù)本發(fā)明實(shí)施例,還提供了一種用于實(shí)施上述動(dòng)畫曲線的生成方法的動(dòng)畫曲線 的生成裝置,如圖22所示,該裝置包括:
[0166] 獲取單元2002,用于獲取目標(biāo)動(dòng)畫的起始時(shí)刻和終止時(shí)刻、目標(biāo)動(dòng)畫的起始關(guān)鍵 頓的狀態(tài)值W及目標(biāo)動(dòng)畫的終止關(guān)鍵頓的狀態(tài)值;
[0167] 計(jì)算單元2004,用于根據(jù)起始關(guān)鍵頓的狀態(tài)值和終止關(guān)鍵頓的狀態(tài)值,得到目標(biāo) 動(dòng)畫在起始時(shí)刻到終止時(shí)刻的范圍內(nèi)的各個(gè)時(shí)刻上的狀態(tài)值;
[016引生成單元2006,用于根據(jù)各個(gè)時(shí)刻上的狀態(tài)值生成目標(biāo)動(dòng)畫的動(dòng)畫曲線;
[0169] 顯示單元2008,用于在屏幕中顯示動(dòng)畫曲線。
[0170] 需要說明的是,本發(fā)明實(shí)施例的動(dòng)畫曲線可W是一維的動(dòng)畫曲線,也可W是二維、 H維等復(fù)雜的動(dòng)畫曲線,本發(fā)明實(shí)施例對(duì)此不做限制。
[0171] 在本發(fā)明實(shí)施例中,關(guān)鍵頓,是指目標(biāo)動(dòng)畫開始的第一頓W及目標(biāo)動(dòng)畫結(jié)束的最 后一頓;目標(biāo)動(dòng)畫的起始時(shí)刻,是指目標(biāo)動(dòng)畫開始的第一頓所對(duì)應(yīng)的時(shí)刻;目標(biāo)動(dòng)畫的終 止時(shí)刻,是指目標(biāo)動(dòng)畫結(jié)束的最后一頓所對(duì)應(yīng)的時(shí)刻;狀態(tài)值,可W為物體的長度、寬度、高 度W及透明度等,例如,目標(biāo)動(dòng)畫改變了物體的長度、寬度、高度W及透明度,則認(rèn)為該目標(biāo) 動(dòng)畫的狀態(tài)值有4種,分別是物體的長度,寬度,高度,透明度;動(dòng)畫值,是指每一頓目標(biāo)動(dòng) 畫改變的一種狀態(tài)值V W及動(dòng)畫頓時(shí)間t組成的值P (t,V);動(dòng)畫曲線,是指W狀態(tài)值V為縱 坐標(biāo),目標(biāo)動(dòng)畫每一頓的時(shí)間t為橫坐標(biāo)t所生成的一系列動(dòng)畫值p(t,v)所組成的曲線。
[0172] 可選地,動(dòng)畫曲線的生成裝置可W接收設(shè)計(jì)人員輸入的目標(biāo)動(dòng)畫的持續(xù)時(shí)間,根 據(jù)該目標(biāo)動(dòng)畫的持續(xù)時(shí)間,確定目標(biāo)動(dòng)畫的起始時(shí)刻和終止時(shí)刻。例如,設(shè)計(jì)人員輸入的目 標(biāo)動(dòng)畫的持續(xù)時(shí)間為5s,動(dòng)畫曲線的生成裝置可W根據(jù)該5s確定目標(biāo)動(dòng)畫的起始時(shí)刻為 Os、目標(biāo)動(dòng)畫的終止時(shí)刻為5s。
[0173] 可選地,目標(biāo)動(dòng)畫的起始關(guān)鍵頓的狀態(tài)值W及目標(biāo)動(dòng)畫的終止關(guān)鍵頓的狀態(tài)值可 W是設(shè)計(jì)人員輸入至動(dòng)畫曲線的生成裝置的,例如,設(shè)計(jì)人員想要將圖片A的透明度從不 透明變?yōu)橥该?,則可W輸入目標(biāo)動(dòng)畫的起始關(guān)鍵頓的狀態(tài)值V。為1,目標(biāo)動(dòng)畫的終止關(guān)鍵頓 的狀態(tài)值Vi為0。
[0174] 在本發(fā)明實(shí)施例中,在獲取目標(biāo)動(dòng)畫的起始時(shí)刻和終止時(shí)刻、目標(biāo)動(dòng)畫的起始關(guān) 鍵頓的狀態(tài)值W及目標(biāo)動(dòng)畫的終止關(guān)鍵頓的狀態(tài)值之后,可W根據(jù)上述各個(gè)參數(shù)得到目標(biāo) 動(dòng)畫在起始時(shí)刻到終止時(shí)刻的范圍內(nèi)的各個(gè)時(shí)刻上的狀態(tài)值。例如可選的,如圖23所示, 該裝置還包括:
[01巧]處理單元2102,用于對(duì)在起始時(shí)刻到終止時(shí)刻范圍內(nèi)的各個(gè)時(shí)刻進(jìn)行歸一化處 理;
[0176] 其中,計(jì)算單元2004用于執(zhí)行W下步驟W實(shí)現(xiàn)根據(jù)起始關(guān)鍵頓的狀態(tài)值和終止 關(guān)鍵頓的狀態(tài)值,得到目標(biāo)動(dòng)畫在起始時(shí)刻到終止時(shí)刻的范圍內(nèi)的各個(gè)時(shí)刻上的狀態(tài)值: 根據(jù)起始關(guān)鍵頓的狀態(tài)值、終止關(guān)鍵頓的狀態(tài)值W及歸一化處理后的各個(gè)時(shí)刻,得到目標(biāo) 動(dòng)畫在各個(gè)時(shí)刻上的狀態(tài)值。
[0177] 其中,歸一化是一種無量綱處理手段,使物理系統(tǒng)數(shù)值的絕對(duì)值變成某種相對(duì)值 關(guān)系,即將有量綱的表達(dá)式,經(jīng)過變換,化為無量綱的表達(dá)式,成為標(biāo)亮。例如,在目標(biāo)動(dòng)畫 的起始時(shí)刻為Os到目標(biāo)動(dòng)畫的終止時(shí)刻為5s的范圍內(nèi),對(duì)第3砂進(jìn)行歸一化處理后的值 為 3/5 = 0. 6。
[0178] 可選地,計(jì)算單元2004用于執(zhí)行W下步驟W實(shí)現(xiàn)根據(jù)起始關(guān)鍵頓的狀態(tài)值、終止 關(guān)鍵頓的狀態(tài)值W及歸一化處理后的各個(gè)時(shí)刻,得到目標(biāo)動(dòng)畫在各個(gè)時(shí)刻上的狀態(tài)值:通 過公式V = V。巧X (Vi-V。)計(jì)算各個(gè)時(shí)刻上的狀態(tài)值,其中,V表示在歸一化處理后的時(shí)刻T 上的狀態(tài)值,V。表示起始關(guān)鍵頓的狀態(tài)值,V I表示終止關(guān)鍵頓的狀態(tài)值。
[0179] 例如,目標(biāo)動(dòng)畫的起始關(guān)鍵頓的狀態(tài)值V。= 1,目標(biāo)動(dòng)畫的終止關(guān)鍵頓的狀態(tài)值Vi =0, T為將對(duì)在起始時(shí)刻Os到終止時(shí)刻5s范圍內(nèi)的各個(gè)時(shí)刻進(jìn)行歸一化處理后的時(shí)刻, 郝么例如:
[0180] 當(dāng) T = 0/5 = 0 時(shí),V = 1+0X (0-1) = 1 ;
[01引]當(dāng) T = 1/5 = 0. 2 時(shí),V = 1+0. 2X (0-1) = 0. 8 ;
[018引 當(dāng) T = 2/5 = 0. 4 時(shí),V = 1+0. 4X (0-1) = 0. 6 ;
[018引 當(dāng) T = 3/5 = 0. 6 時(shí),V = 1+0. 6X (0-1) = 0. 4 ;
[0184]當(dāng) T = 4/5 = 0. 8 時(shí),V = 1+0. 8X (0-1) = 0. 2 ;
[018引 當(dāng) T = 5/5 = 1 時(shí),V = 1+1 X (0-1) = 0。
[0186] W此類推,得到各個(gè)時(shí)刻上的狀態(tài)值,進(jìn)而根據(jù)各個(gè)時(shí)刻上的狀態(tài)值生成如圖4 所示的動(dòng)畫曲線。對(duì)于目標(biāo)動(dòng)畫而言,圖片A的透明度在Os到5s之間從不透明勻速變?yōu)?透明。
[0187] 可選地,計(jì)算單元2004用于執(zhí)行W下步驟W實(shí)現(xiàn)根據(jù)起始關(guān)鍵頓的狀態(tài)值、終止 關(guān)鍵頓的狀態(tài)值W及歸一化處理后的各個(gè)時(shí)刻,得到目標(biāo)動(dòng)畫在各個(gè)時(shí)刻上的狀態(tài)值;通 過公式V = (Vi-V。)XTXT+V。計(jì)算各個(gè)時(shí)刻上的狀態(tài)值,其中,V表示在歸一化處理后的時(shí) 刻T上的狀態(tài)值,V。表示起始關(guān)鍵頓的狀態(tài)值,V 1表示終止關(guān)鍵頓的狀態(tài)值。
[018引例如,目標(biāo)動(dòng)畫的起始關(guān)鍵頓的狀態(tài)值V。= 1,目標(biāo)動(dòng)畫的終止關(guān)鍵頓的狀態(tài)值Vi =0, T為將對(duì)在起始時(shí)刻Os到終止時(shí)刻5s范圍內(nèi)的各個(gè)時(shí)刻進(jìn)行歸一化處理后的時(shí)刻, 郝么例如:
[018引 當(dāng) T = 0/5 = 0 時(shí),V = (0-1) X0X0+1 = 1 ;
[0190] 當(dāng) T = 1/5 = 0. 2 時(shí),V = (0-1) XO. 2X0. 2+1 = 0. 96 ;
[0191] 當(dāng) T = 2/5 = 0. 4 時(shí),V = (0-1) XO. 4X0. 4+1 = 0. 84 ;
[019引 當(dāng) T = 3/5 = 0. 6 時(shí),V = (0-1) XO. 6X0. 6+1 = 0. 64 ;
[019引 當(dāng) T = 4/5 = 0. 8 時(shí),V = (0-1) XO. 8X0. 8+1 = 0. 36 ;
[0194] 當(dāng) T = 5/5 = 1 時(shí),V = (0-1) X IX 1+1 = 0。
[0195] W此類推,得到各個(gè)時(shí)刻上的狀態(tài)值,進(jìn)而根據(jù)各個(gè)時(shí)刻上的狀態(tài)值生成如圖5 所示的動(dòng)畫曲線。對(duì)于目標(biāo)動(dòng)畫而言,圖片A的透明度在Os到5s之間從不透明逐漸加快 變?yōu)橥该鳌?br>[0196] 可選地,計(jì)算單元2004用于執(zhí)行W下步驟W實(shí)現(xiàn)根據(jù)起始關(guān)鍵頓的狀態(tài)值、終止 關(guān)鍵頓的狀態(tài)值W及歸一化處理后的各個(gè)時(shí)刻,得到目標(biāo)動(dòng)畫在各個(gè)時(shí)刻上的狀態(tài)值;通 過公式V = -(Vi-V。)XTX燈-2)+V。計(jì)算各個(gè)時(shí)刻上的狀態(tài)值,其中,V表示在歸一化處理后 的時(shí)刻T上的狀態(tài)值,V。表示起始關(guān)鍵頓的狀態(tài)值,V 1表示終止關(guān)鍵頓的狀態(tài)值。
[0197] 例如,目標(biāo)動(dòng)畫的起始關(guān)鍵頓的狀態(tài)值V。= 1,目標(biāo)動(dòng)畫的終止關(guān)鍵頓的狀態(tài)值Vi =0, T為將對(duì)在起始時(shí)刻Os到終止時(shí)刻5s范圍內(nèi)的各個(gè)時(shí)刻進(jìn)行歸一化處理后的時(shí)刻, 郝么例如:
[019引 當(dāng) T = 0/5 = 0 時(shí),V = -(0-1) XOX (0-2)+1 = 1 ;
[0199] 當(dāng) T = 1/5 = 0. 2 時(shí),V = -(0-1) XO. 2X 〇). 2-2)+1 = 0. 64 ;
[0200] 當(dāng) T = 2/5 = 0. 4 時(shí),V = - (0-1) XO. 4X 〇). 4-2)+1 = 0. 36 ;
[020U 當(dāng) T = 3/5 = 0. 6 時(shí),V = -(0-1) XO. 6X 0). 6-2)+1 = 0. 16 ;
[020引 當(dāng) T = 4/5 = 0. 8 時(shí),V = -(0-1) X0. 8X 0). 8-2) +1 = 0. 04 ;
[020引 當(dāng) T = 5/5 = 1 時(shí),V = - (0-1) XlX (1-。+1 = 0。
[0204] W此類推,得到各個(gè)時(shí)刻上的狀態(tài)值,進(jìn)而根據(jù)各個(gè)時(shí)刻上的狀態(tài)值生成如圖6 所示的動(dòng)畫曲線。對(duì)于目標(biāo)動(dòng)畫而言,圖片A的透明度在Os到5s之間從不透明逐漸減慢 變?yōu)橥该鳌?b