本發(fā)明涉及一種骨骼蒙皮動畫網格表面附加模型的方法,屬于計算機三維動畫領域。
背景技術:
當前在3d游戲角色表面進行模型吸附,常用方法是先使用射線與模型表面的三角形網格求交點,根據(jù)交點位置選擇離其最近的角色骨骼節(jié)點,并記錄該交點與最近骨骼的相對位置與相對旋轉。當角色進行動畫播放時,再根據(jù)相對位置與相對旋轉進行空間坐標校正推算出世界坐標。
因為與吸附物計算相對位置的骨骼節(jié)點是基于骨骼蒙皮動畫蒙皮后的結果選擇的,而骨骼蒙皮動畫中三角面的位置卻是由自身頂點信息中記錄的骨骼索引、骨骼權重決定的。兩者計算方式不一致,無可避免會出現(xiàn)吸附物陷入或偏離模型表面的奇怪現(xiàn)象。
骨骼蒙皮動畫:是一種計算機動畫技術,它將三維模型分為兩部分:用于繪制模型的蒙皮,以及用于控制動作的骨架。
重心坐標:也叫面積坐標,根據(jù)三角形內某點分別與三角形中其余兩個頂點圍成的子三角形面積與總面積之比形成的坐標。
技術實現(xiàn)要素:
針對現(xiàn)有技術的不足,本發(fā)明的技術方案提供了一種游戲圖形需求和設計的系統(tǒng)和方法,用于實現(xiàn)高效的游戲動畫圖形制作本專利提案針對現(xiàn)有技術的缺陷,對一般游戲預發(fā)布的現(xiàn)狀與造成的原因加以深入分析,分析預發(fā)布有哪些流程上的特點,各種職位的人員有哪些工作上的習慣,使用了一種防范預發(fā)布游戲盜版的數(shù)字指紋系統(tǒng)和方法,以達到提高內部工作人員的安全防范意識,保護游戲預發(fā)布版本的安全,方便各種職位的人員良好分工合作的目的。
本發(fā)明的技術方案包括一種骨骼蒙皮動畫網格表面附加模型的方法,其特征在于,該方法包括:a.使用射線與主體模型網格進行求交計算,取得與射線相交的三角形和交點;b.獲取并記錄所述三角形的蒙皮信息;c.基于所述步驟b得到三角形的蒙皮信息計算并記錄交點在三角形內的重心坐標;d.進行主體模型網格與附加模型網格的網格合并。
根據(jù)權所述的骨骼蒙皮動畫網格表面附加模型的方法,該方法還包括:所述步驟a、b、c的處理過程由一圖形編輯器完成,所述步驟d的處理過程使用三維動畫引擎執(zhí)行處理。
根據(jù)所述的骨骼蒙皮動畫網格表面附加模型的方法,該方法還包括:所述步驟a還可以通過遍歷吸附目標網格的所有三角面,對所有頂點進行骨骼蒙皮動畫形變計算,以最終計算結果組成的三角形與射線求交,取得三角形。
根據(jù)權所述的骨骼蒙皮動畫網格表面附加模型的方法,該方法還包括:對于基于蒙皮的網格,所述步驟a還可以使用調用三維動畫引擎的接口產生不規(guī)則碰撞體,利用物理引擎獲得相交三角形。
根據(jù)所述的骨骼蒙皮動畫網格表面附加模型的方法,所述步驟a還包括:使用一條射線與需要進行附加模型的主體模型區(qū)域進行相交,進一步對射線執(zhí)行求交,得到相交三角形的原始切線、原始法線及原始位置坐標。
根據(jù)所述的骨骼蒙皮動畫網格表面附加模型的方法,所述步驟b還包括:所以記錄三角形頂點的蒙皮信息包括骨骼索引、骨骼權重、原始位置、原始法線及原始切線。
根據(jù)所述的骨骼蒙皮動畫網格表面附加模型的方法,其特征在于,所述步驟d還包括:s41,分別對三角形三個頂點進行骨骼蒙皮計算,得到三個頂點對應的三組經過蒙皮形變后的位置、法線及切線;s42,基于所述步驟s42計算得到三組計算結果和對應的一個重心坐標,將三組計算結果基于自身骨骼權重合成為一組;s43,根據(jù)目標法線和目標切線用叉乘求得第三個向量;s44,由一個坐標點和三個相互垂直的向量,形成一個三維直角坐標系;s45,基于所述步驟s44得到的三維直角坐標系,對吸附物的附加模型施加額外的局部坐標偏移、局部旋轉得到最終主體模型與附加模型的附加結果。
本發(fā)明的有益效果為:使得在模型在骨骼蒙皮動畫的形變結果之上,能在其模型表面附加不同的模型,并獲得感知正確的表現(xiàn)效果。從而獲得通過小部件組合出具有復雜表現(xiàn)效果的整體,提高模型復用率,減少模型建模量。
附圖說明
圖1所示為根據(jù)本發(fā)明實施方式的總體流程圖;
圖2所示為根據(jù)本發(fā)明實施方式的詳細流程圖。
具體實施方式
為了使本發(fā)明的目的、技術方案和優(yōu)點更加清楚,下面結合附圖和具體實施例對本發(fā)明進行詳細描述。本發(fā)明的游戲圖形需求和設計的系統(tǒng)和方法適用于游戲動畫圖像的開發(fā)。
圖1所示為根據(jù)本發(fā)明實施方式的總體結構圖。其包括
s101,使用射線與主體模型網格進行求交計算,取得與射線相交的三角形和交點;
s102,獲取并記錄所述三角形的蒙皮信息;
s103,基于所述步驟s102得到三角形的蒙皮信息計算并記錄交點在三角形內的重心坐標;
s104,進行主體模型網格與附加模型網格的網格合并。
圖2所示為根據(jù)本發(fā)明實施方式的詳細流程圖。其具體包括以下步驟:
分別對三角形三個頂點進行骨骼蒙皮計算,求得三組經過蒙皮形變后的位置、法線、切線;
根據(jù)三組計算結果和一個重心坐標,將三組計算結果依據(jù)各自權重合成為一組;
根據(jù)目標法線和目標切線用叉乘求得第三個向量;
一個坐標點,三個相互垂直的向量,形成一個三維直角坐標系;
以此坐標系為基準,對吸附物施加額外的局部坐標偏移、局部旋轉即為最終呈現(xiàn)姿態(tài)。
本發(fā)明的技術還工公開了以下技術方案:
(1)在三維動畫開發(fā)引擎中,可以通過遍歷吸附目標網格的所有三角面,對所有頂點進行骨骼蒙皮動畫形變計算,以最終計算結果組成的三角形與射線求交,取得關鍵三角形。
2,同樣在三維動畫引擎中,對于基于蒙皮的網格,可以使用接口產生不規(guī)則碰撞體,利用物理引擎獲得相交三角形。
以上所述,只是本發(fā)明的較佳實施例而已,本發(fā)明并不局限于上述實施方式,只要其以相同的手段達到本發(fā)明的技術效果,都應屬于本發(fā)明的保護范圍。在本發(fā)明的保護范圍內其技術方案和/或實施方式可以有各種不同的修改和變化。