于兵科



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