于兵科
摘? 要: 針對傳統(tǒng)三維虛擬動畫模型方法中行為控制數(shù)據(jù)點識別水平低下的問題,設(shè)計一種三維虛擬動畫設(shè)計中的角色建模與行為控制方法。采用動力學(xué)方式,以物理引擎為基礎(chǔ),建立角色骨骼模型,并采用ODE開源物理引擎模擬關(guān)節(jié)運動軌跡,完成效果的實時渲染。實驗結(jié)果表明,與傳統(tǒng)方法相比,所提方法在角色行為控制的過程中所采集到的數(shù)據(jù)點更加密集,動畫效果更加逼真,具有極高的有效性及優(yōu)越性。
關(guān)鍵詞: 三維虛擬動畫; 動畫設(shè)計; 角色建模; 行為控制; 實時渲染; 仿真實驗
中圖分類號: TN911.73?34; TP391.9? ? ? ? ? ? ? 文獻標識碼: A? ? ? ? ? ? ? ? ? ? ?文章編號: 1004?373X(2020)10?0108?03
Character modeling and behavior control in 3D virtual animation design
YU Bingke
(Xijing University, Xian 710123, China)
Abstract: In allusion to the low recognition level of behavioral control data points in the traditional 3D virtual animation model method, a method of character modeling and behavior control in the 3D virtual animation design is designed. The skeleton model of the character is built on the basis of the physics engine and by means of the dynamics mode, and the joint movement trajectory is simulated by the ODE open source physics engine to complete the real?time rendering of the effect. The experimental results show that, in comparison with the traditional method, the data points collected by the proposed method in the process of character behavior control are more intensive, and the animation effect is more realistic. It has very high efficiency and superiority.
Keywords: 3D virtual animation; animation design; character modeling; behavior control; real?time rendering; simulation experiment
0? 引? 言
隨著人們對動畫欣賞需求的增長,三維虛擬動畫設(shè)計行業(yè)越發(fā)受到關(guān)注。作為計算機動畫中的一個重要分支,三維虛擬動畫技術(shù)主要采用計算機圖像學(xué)相關(guān)處理技術(shù)對真實人事物進行模擬,設(shè)計出虛擬、抽象的內(nèi)容,且無需受到空間條件的影響[1],其被廣泛應(yīng)用于教育、軍事、醫(yī)學(xué)以及娛樂等領(lǐng)域。隨著三維虛擬動畫技術(shù)的發(fā)展進步,近年來逐漸涌現(xiàn)出多種優(yōu)秀的動畫制作軟件,使三維虛擬動畫的制作水平與制作效率都得到了顯著提升[2]。角色建模是三維虛擬動畫設(shè)計的基礎(chǔ),將立體概念與平面動畫融合,結(jié)合二維模型的角色特征,建立相應(yīng)的三維虛擬角色模型。但三維虛擬結(jié)構(gòu)無法輕易通過一個或多個圖形生成,需要匹配二維動畫,才能組合為完整的三維虛擬角色模型[3]。三維虛擬角色模型的建立都是從數(shù)學(xué)的角度出發(fā),計算其矩陣及向量,利用角色輪廓線中的各個取樣點所形成的曲線序列形成三維網(wǎng)絡(luò)。虛擬角色的行為控制主要是通過關(guān)節(jié)以及骨骼動畫來完成,利用人工神經(jīng)網(wǎng)絡(luò)對角色模型進行運動及其反應(yīng)的控制,保證三維虛擬角色在一定范圍內(nèi)保持規(guī)律性運動[4]。
1? 三維虛擬動畫角色模型建立
為保證角色模型形態(tài)合理布線,需采用動力學(xué)方式,以物理引擎為基礎(chǔ),生成三維虛擬角色姿態(tài)動畫[5]。角色動畫與其他流體動畫或變形動畫不同,一般分為骨骼模型建立與外層皮膚建立兩個部分。外層皮膚普遍依附于骨骼模型,并隨著骨骼的運動而變化,因此,骨骼模型最為重要。骨骼模型的建立需要由關(guān)節(jié)連接組成,也就是以鉸鏈對象作為載體,將各個骨骼模型分別連接到其本身的父骨骼,由關(guān)節(jié)模型將每一組父子骨骼進行連接,并由該關(guān)節(jié)對其父子骨骼的運動軌跡進行定義[6]。最高層級骨骼為根骨骼,其骨骼關(guān)節(jié)的旋轉(zhuǎn)具有6個自由度[7](代表著其在旋轉(zhuǎn)空間內(nèi)的旋轉(zhuǎn)量與位移量)。通過骨骼模型結(jié)構(gòu),對子骨骼相對于其父骨骼的旋轉(zhuǎn)量及根骨骼的位置進行記錄,具體情況見圖1。
為此采用Maya軟件系統(tǒng)創(chuàng)建骨骼模型進行,并建立IK/FK轉(zhuǎn)換系統(tǒng)以控制手臂轉(zhuǎn)換,使其能夠應(yīng)用到任意一個角色模型中。骨骼模型創(chuàng)建過程如圖2所示。
通過圖2可知,骨骼模型的建立需借助ODE開源物理引擎模擬器對關(guān)節(jié)物理運動軌跡進行模擬[8],并將其與角色的鉸鏈式結(jié)構(gòu)相互聯(lián)系,從而控制角色的物理模擬效果,將模擬器的狀態(tài)實時傳遞給角色關(guān)節(jié),使其完成實時生成與渲染。其具體關(guān)系如圖3所示。
由圖3得知,三維虛擬動畫角色與物理模擬引擎進行數(shù)據(jù)交換時,需制定模擬對象,建立動態(tài)世界容納骨骼與關(guān)節(jié)。為預(yù)防三維動畫數(shù)據(jù)混亂,需清空角色模型所在動畫序列,將模擬出的三維虛擬動畫存儲在序列中[9]。復(fù)制模擬產(chǎn)生的三維虛擬角色當前狀態(tài)到模擬器,根據(jù)實際需求,對其線速度及角速度具體設(shè)置,并保證角色在模擬之前所承受力與力矩皆為0。至此,角色模型建立完成[10]。
2? 三維虛擬動畫角色行為控制
在完成三維虛擬動畫角色建模后,主要采用動作控制器生成角色行為動作,使其具有真實物理交互性,具體過程如圖4所示。
對角色運動軌跡的捕獲采用物理動力學(xué)方法,使角色的行為更逼真生動[11]。為使角色按實際需求完成動作,以比例微分控制器對角色控制[12],改變角色狀態(tài)的驅(qū)動力,對角色的關(guān)節(jié)施加壓力,并允許用戶根據(jù)該機制對控制器進行調(diào)節(jié)定制[13]??刂屏鞒桃妶D5。
應(yīng)用反饋控制理論,其控制器代表反饋控制器,輸入相關(guān)控制參數(shù),通過虛擬角色的受控系統(tǒng)[14],輸出角色關(guān)節(jié)的旋轉(zhuǎn)數(shù)據(jù)信息。由于反饋控制系統(tǒng)能夠接收外界傳來的信息數(shù)據(jù),其亦可能會受外力干擾。由于每個行為姿態(tài)皆由骨骼結(jié)構(gòu)的空間形態(tài)與根關(guān)節(jié)的空間平移量組成,將單位四元數(shù)與旋轉(zhuǎn)矩陣相互轉(zhuǎn)換,則一個單位四元數(shù)[q=w,x,y,z]所對應(yīng)的旋轉(zhuǎn)矩陣如下:
[M=1-2y2-2z22xy-2wz2xz+2wy2xy+2wz1-2x2-2z22yz-2wx2xz-2wy2yz+2wx1-2x2-2y2]? ? (1)
式中,根關(guān)節(jié)的空間平移量為[P=x,y,z]。對[q1=w1,x1,y1,z1]和[q2=w2,x2,y2,z2]兩個單位四元數(shù)進行球面線性插值,得出:
[slerpq1,q2,μ=sin1-μθsin θq1+sin μθsin θq2] (2)
式中:[θ=arccosw1w2+x1x2+y1y2+z1z2]為[q1]轉(zhuǎn)向[q2]的夾角;[μ∈0,1]為插值參數(shù)。
當[q2q-11=w,x,y,z]時,則[q1]與[q2]間的距離為[dq1,q2=arccos ω]。對具有n個關(guān)節(jié)的三維虛擬動畫角色而言,其具有[ma=Pa,qa1,qa2,…,qan]與[mb=Pb,qb1,qb2,…,qbn]兩種不同行為姿態(tài),[ma]與[mb]兩者之間的行為姿態(tài)相似度為:
[simma,mb=1-1nπi=1nωidqai,qbi] (3)
式中:[qai]與[qbii=1,2,…,n]為該三維虛擬動畫角色分別在行為姿態(tài)[ma]及[mb]上的第i個骨骼關(guān)節(jié)的單位四元旋轉(zhuǎn)量;[ωi]為第i個骨骼關(guān)節(jié)的運算權(quán)重;[simma,mb]的取值范圍為[0,1]且[i=1nωi=1]。
計算得出,[simma,mb]的值越大,三維虛擬動畫角色的行為姿態(tài)[ma]與[mb]越相似。當其之間的各骨骼關(guān)節(jié)參數(shù)完全相同,且[simma,mb]達到最大值1時,通過調(diào)整[ωi]能夠計算出三維虛擬動畫角色在不同骨骼部件上的相似程度[15]。當對一個行為控制序列的指定末端效應(yīng)器的連續(xù)運動軌跡進行約束時,能夠得到滿足該約束新的行為控制序列。
3? 仿真實驗
為驗證所提出的三維虛擬動畫角色行為控制方法的有效性,對其控制過程中的數(shù)據(jù)點進行采集,并與傳統(tǒng)方法采集效果進行比較,完成模擬實驗。
3.1? 實驗準備
該實驗選取型號為OMEN by HP Laptop 17?cb0001TX 的計算機,在計算機中設(shè)定原始數(shù)據(jù),并利用角色行為自動控制綜合應(yīng)用平臺,創(chuàng)建三維虛擬動畫角色行為邏輯,并上傳所得到的數(shù)據(jù),采用傳統(tǒng)三維虛擬動畫角色行為控制方法與本文方法進行對照實驗,比較兩者所采集的數(shù)據(jù)點。
3.2? 實驗對比分析
所采集的數(shù)據(jù)點具體對比結(jié)果如圖6所示。
圖6a)為傳統(tǒng)方法采集結(jié)果,圖6b)為本文方法采集結(jié)果。與傳統(tǒng)方法相比,本文方法采集的數(shù)據(jù)點更密集,因其控制點識別明顯,精準度得到明顯提升。為使本次實驗結(jié)果的嚴謹性得到保障,進行多次行為控制模擬實驗。反復(fù)多次實驗論證得出,本文方法具有極高的有效性與優(yōu)越性。
4? 結(jié)? 語
隨著我國動畫產(chǎn)業(yè)的不斷崛起,人們對動畫角色構(gòu)建效果的要求不斷提高,原有角色建模技術(shù)已無法滿足人們的審美要求。本文對三維虛擬動畫中人物建模的方法進行更新設(shè)計,有效提高人物角色畫面的精細度,色彩更加豐富,人物效果更加逼真。在設(shè)計人物行為控制方法時,本文著重對控制語言與控制路徑進行設(shè)計,采用二進制語言完成對動畫人物的行為控制,有效提升動畫人物的建模效果。
參考文獻
[1] 戴敏宏,文翠,張衛(wèi)國.Maya三維卡通角色建模技術(shù)在吉祥物設(shè)計中的應(yīng)用[J].信息技術(shù)與信息化,2014,12(9):177?178.
[2] 李濤濤,方雄兵,林銳,等.基于Top?down建模機制的三維虛擬人快速建模方法[J].中國艦船研究,2017,12(1):38?44.
[3] 戴敏宏,趙寶春,馬瑞智.藝用人體比例在Maya三維動畫造型中的重要性[J].電子技術(shù)與軟件工程,2018,6(9):50.
[4] 李艷妮.Maya場景建模技術(shù)在泥偶動畫立體造型設(shè)計中的應(yīng)用[J].現(xiàn)代電子技術(shù),2017,40(19):135?137.
[5] 李默塵.微課教學(xué)模式下的Maya角色建模教學(xué)探析[J].新課程研究(中旬刊),2017,12(7):14?15.
[6] 朱華西,鄒劭芬.基于ZBrush角色建模教學(xué)過程中技巧應(yīng)用的研究[J].價值工程,2015,13(23):246?247.
[7] 葉長青,周朝陽.從游戲角色建模層次看教育游戲的發(fā)展水平[J].現(xiàn)代教育技術(shù),2017,27(6):38?44.
[8] 馬亞輝,李洋.空中預(yù)警平臺體系貢獻率建模研究[J].數(shù)字通信世界,2018(4):105?106.
[9] 吳丹.基于3DsMax的三維角色建模方法應(yīng)用分析[J].電腦編程技巧與維護,2018,27(1):157?158.
[10] 熊影娜,彭國貴,朱詩謠,等.普及角色建模及骨骼動畫的研究[J].廣東教育(職教版),2016,11(5):85?87.
[11] 郭雪昆,陳浩,邱天,等.針對創(chuàng)意角色模型的蒙皮與三維制造技術(shù)[J].計算機輔助設(shè)計與圖形學(xué)學(xué)報,2017,29(7):1177?1185.
[12] 羅陸鋒,鄒湘軍,程堂燦,等.采摘機器人視覺定位及行為控制的硬件在環(huán)虛擬試驗系統(tǒng)設(shè)計[J].農(nóng)業(yè)工程學(xué)報,2017,33(4):39?46.
[13] 孫偉,王淑禮.基于整數(shù)線性規(guī)劃的角色挖掘建模方法[J].信陽師范學(xué)院學(xué)報(自然科學(xué)版),2017,30(2):299?303.
[14] 韓瑩,蘇鑫昊,王帥.基于3DsMax與Unity3D三維高層火災(zāi)逃生場景建模[J].信息與電腦(理論版),2017,12(6):94?96.
[15] 王迪.基于計算機三維動畫建模技術(shù)的中國皮影藝術(shù)新傳承[J].電腦知識與技術(shù),2017,13(3):217?219.