康文慧
(安徽工商職業(yè)學院信息工程學院,安徽 合肥 231131)
數字媒體時代,動畫行業(yè)迅速興起。虛擬空間技術使動畫變得生動起來,為用戶帶來新的視覺享受。許多學者開展了對交互式動畫設計方法的研究,張巧靈等[1]研究了牛骨三維模型建立及交互演示方法,預先對三維動畫空間定位,然后進行交互設計;馬洪石等[2]研究了Web端室內三維交互系統的快速構建方法,主要將層次模型應用到其中,構建具備交互能力的三維原型系統。上述交互式動畫設計方法能夠實現動畫交互,但在應用過程中,還存在不足之處。本文設計數字媒體時代下交互式動畫設計方法,以期提高交互式動畫的交互效果,使形成動畫的各個階段都能夠取得較好的效果與體驗。
基于動畫的格式不同、類型不同,想要使動畫人物變得更加生動飽滿,就要根據模型的特點對三維空間的場景進行仿真建模,收集真實模型的形態(tài)特征和數據信息,以此為基礎完成同等比例的場景中交互式動畫設計。收集的主要內容包括圖像基本信息、空間全景設計與相關人物動作,將核心數據結合到一起,構成一個相對完整的仿真模型[3],科學合理地連接虛擬與現實世界。
在建模過程中,交互動畫節(jié)點的移動速度決定動畫的最終呈現效果,為了保證動畫的一致性與完整性,以場景作為一個靜態(tài)的空間[4],準確地利用坐標來描述節(jié)點。假設存在一點Pl,其平面坐標為(u,v),三維坐標為(Xw,Yw,Zw),使平面與三維坐標相互轉化,最后得到統一后的坐標表達式為
(1)
其中,ax為虛擬空間中的轉換因子,ay為現實平面中的轉換因子,xd(1)與xd(2)分別代表橫軸上隨機兩個點,(u0,v0)為處理后的Pl的坐標。
將歸化后的坐標逐一進行迭代,實現坐標的代償作用[5],當xw迭代成xd時,兩者的關系為
(2)
其中,xn為迭代后的坐標,δ為迭代次數,k為系數。
可推算出實際坐標的表達式為
(3)
其中,R代表矩陣,(Xc,Yc,Zc)代表實際坐標。
為了使動畫可以不依靠人工操作,而自動化地進行交互處理,將所采集的數據信息分類成特征集,按照虛擬空間的運行模式來逐一融合[6],得到的向量為x1,x2,x3,x4,其表達式為
(4)
其中,m為特征因子,p1,p2,p3為場景的特征向量。
動畫模型η及函數Rx描述為
(5)
并滿足條件:
(6)
其中,L(η)為場景中的檢驗函數,w(i,j)為動畫中的節(jié)點坐標,d為圖像邊緣的模糊值,Z(i)為像素點的權重,而獲得的動畫重構仿真函數[7]為
(7)
其中,r為距離。
r能直接表明像素點的密集程度[8],而后得到的虛擬空間大小范圍公式為
G1=(1+μY)(1+λY)G,
(8)
其中,G1為三維空間中場景,G為實際模擬的場景,μ為一個整數,λ為系數,通過對這幾個元素的控制,來確定空間中場景的實際大小。
而對于場景的特征模型,可采用反向思維,通過誤差的范圍來確定模型重構的幾率[9]。假設虛擬的模型為A,實際的數量為N,那么誤差的表達式為
(9)
其中,l1,l2為誤差,ω為誤差的特征向量。
基于誤差變化生成的三維動畫場景模型[10]為
(10)
其中,κ代表自動生成的模型,P代表概率,q代表隨機因子,根據重構圖像的邊緣信息就可以生成動畫的主要部分,有效地激發(fā)出動畫的自主匹配能力。
動畫模擬需要在三維空間建立過程中對動畫軌跡進行模擬。目前,最為可靠且成熟的捕捉技術是軌跡模擬與動畫插件技術,不但可以快速地構成一個模擬動作,還可以識別出更加細致的人類行為,使動畫的移動更加順暢。運動捕捉模塊如圖1所示。
圖1 運動捕捉模塊
利用攝像或者視頻對動作進行采集,然后將拍攝到的圖像進行模擬分析,通過捕捉技術將動作分解成多個點的集合。利用點與點之間的相關性將其連接,形成一個連續(xù)的、光滑的三維動畫,最后對動畫的每個細節(jié)進行逐一處理,獲取相關數據,保存已經優(yōu)化的動畫,將其加入到三維空間中進行交互。整個交互流程如圖2所示。
圖2 交互式動畫交互流程
但是在交互過程中,最難控制的就是節(jié)點的變化性與移動性,這兩者直接決定節(jié)點的穩(wěn)定性[11],為此需要進一步處理。假設節(jié)點移動的加速度為ai,可以利用虛擬與現實之間的比例關系計算得出ai,然后就能夠得到節(jié)點的位置范圍[12],描述出節(jié)點運動的曲線。
(11)
其中,t為時間,vi為速度,ri為距離。
在確定距離與速度的情況下,對t時節(jié)點的速率進行計算,則
(12)
交互式動畫最常用的交互方法為SPH法,其中涉及的元素有速度、時間與網速,在此基礎上建立光滑函數,來描述每個節(jié)點在虛擬空間的連接變化[13]。
(13)
而節(jié)點的排列變化為
(14)
結合上述公式,得到
(15)
其中,Wp表示函數關系,h表示場景大小,r為距離。
與其他函數相比,該函數可以精確到每一個節(jié)點之間的細微距離,在計算中只需對距離進行限制,最大程度地降低了計算的失誤率,減少元素的輸出[14],避免過多的變量影響計算結果。
當節(jié)點間距離為負時,其排列變化也會發(fā)生改變,逐漸縮短距離,直到消失。與此同時,當距離為負時,節(jié)點移動速度會直線上升,不再進行有規(guī)律運動,而是沒有方向地混亂變換位置[15],其數學表達式為
(16)
而運動的規(guī)律為
(17)
當距離r接近0時,節(jié)點的規(guī)律性增強,其交互能力相對更強。而對于動畫動作的光滑性來說,只涉及動畫中點的變化,其表達式為
(18)
光滑因子的表達式為
(19)
運用SPH算法,能夠有效地完成動畫的復刻與模擬,實現交互式動畫設計。
此次實驗中應用的硬件配置:Intel?Pentium?Dual CPU2200、顯示卡、DELL顯示器等。
系統軟件配置:三維視景仿真軟件、可視化仿真建模軟件、DI-Guy人體交互仿真軟件。
仿真系統的整體結構流程如圖3所示。
圖3 視景仿真結構流程圖
在整個交互過程中,同時使用硬件系統與軟件系統,實時控制實驗過程,直到完成實驗為止。為了減少實驗時間預先對實驗場景建模與場景驅動,采用場景驅動軟件平臺,渲染仿真場景并進行驅動控制。該仿真系統在VC++環(huán)境下使用,利用視景仿真軟件的應用程序接口與圖形化界面實現場景的視景渲染。
以人體關節(jié)活動情況為例,制作人體關節(jié)動畫,然后進行交互,對比結果如表1所示。
表1 人體關節(jié)動畫前彎、后彎位置交互效果
由表1可知,在交互中,運用本文方法設計的人體動畫位置,與實際前彎、后彎位置基本保持一致,而其他兩種方法與實際位置具有一定的差距,動畫交互效果不佳。
人體動畫關節(jié)左歪、右歪位置交互結果如表2所示。
表2 人體關節(jié)動畫左歪、右歪位置交互效果
人體左轉、右轉位置交互結果如表3所示。
表3 人體關節(jié)動畫左轉、右轉位置交互效果
由表3可以發(fā)現,本文提出的交互式動畫設計方法,在交互設計后人體關節(jié)動畫在各個角度的位置與實際位置都能夠保持較小的誤差,而其他兩種方法都發(fā)生了不同的較大誤差,交互效果不佳,不能按照用戶需求與動畫交互。
在此基礎上進一步驗證該方法的有效性,對比三種方法動畫交互的實時性,結果如圖4所示。
由圖4可知,本文提出的交互式動畫設計方法的實時性較好,當用戶下達指令后能夠在短時間內實現動畫的交互,較其他兩種方法,應用效果更好。
圖4 動畫交互實時性對比
虛擬世界中的交互式動畫設計,不但將數字媒體推向了新的高度,也是動畫產業(yè)以及技術成熟的標志。本文提出的交互式動畫設計方法,在傳統技術的基礎上進行創(chuàng)新,使現代技術手段與虛擬技術融合,彌補了傳統方法的不足。本文方法在實驗部分對比指標不是很全面,后續(xù)研究將通過實驗進一步完善。