一種基於智慧型手機平臺的3d圖形骨骼動畫繪製算法的製作方法
2023-05-03 12:31:06 1
專利名稱:一種基於智慧型手機平臺的3d圖形骨骼動畫繪製算法的製作方法
技術領域:
本發明涉及智慧型手機平臺的3D圖形骨骼動畫繪製算法,尤其是基於智慧型手機平 臺的3D圖形骨骼動畫繪製算法。
背景技術:
現有的3D遊戲和應用程式主要是家用電腦平臺的。而以蘋果的iphone, ipad, ipad2以及android智慧型手機為代表的新型客戶應用平臺正在全球範圍內井噴增長。傳統 的3D骨骼動畫算法在手機平臺上效率低下,無法滿足正常的3D應用及3D遊戲的圖形描O發明內容
本發明的目的在於針對現有智慧型手機平臺上3D圖形動畫描繪的空白,提供一種 基於可攜式行動裝置平臺的3D圖形骨骼動畫繪製算法,具有效率高,方便使用並且易於普 及的優點。
為了實現上述目的,本發明的技術方案是一種基於智慧型手機平臺的3D圖形骨骼 動畫繪製算法,其特徵在於該算法包括製作骨骼動畫,所述骨骼動畫包括基本骨骼和複合 骨骼;將上述骨骼動畫信息導成文本格式動畫信息文件,在導出時,將複合骨骼及基本骨骼 將以4個一組為單位排列,而每個頂點信息中將會分配一個骨骼的編組號碼及4個權重信 息,將所述文本格式動畫信息文件轉換成遊戲用二進位格式文件;底層描繪端讀取分析所 述二進位格式動畫文件,根據權重乘骨骼矩陣列表,獲得頂點位置,實現最終頂點的渲染。
本發明提供一種基於智慧型手機平臺的3D圖形骨骼動畫繪製算法,包括3D設計 軟體Maya,3dMax的動畫製作後的導出插件,數據轉換打包工具,以及骨骼信息在底層描 繪端的讀取方法與實現方式。由所述3D軟體(Maya,3dMax)導出插件將動畫信息導成文 本格式動畫信息文件,所述數據轉換打包工具將所述文本格式動畫信息文件轉換成專用的 遊戲專用二進位格式文件,根據所述智慧型手機平臺的特點動畫信息的複合骨骼及基本骨骼 將以4個一組為單位排列。而每個頂點信息中將會分配一個骨骼的編組號碼及4個權重信 息。所述底層描繪端讀取分析所述二進位格式動畫文件,將每組骨骼權重通過動畫矩陣列 表實現最終頂點的渲染。使用本發明的算法可以在智慧型手機平臺實現手機3D網路遊戲的 開發,或者3D設計軟體等3D應用程式的開發,優化了手機平臺的骨骼運算,提高了實時演 算的3D動畫速度,還加強數據的安全性。具有可靠性高,方便使用,易於普及等優點。
具體實施方式
一種基於智慧型手機平臺的3D圖形骨骼動畫繪製算法,其特徵在於該算法包括利 用3D設計軟體製作骨骼動畫,所述骨骼動畫包括基本骨骼和複合骨骼;利用3D設計軟體 導出插件將上述骨骼動畫信息導成文本格式動畫信息文件,在導出時,將複合骨骼及基本 骨骼將以4個一組為單位排列,而每個頂點信息中將會分配一個骨骼的編組號碼及4個權重信息;利用數據轉換打包工具將所述文本格式動畫信息文件轉換成遊戲用二進位格式文 件;底層描繪端讀取分析所述二進位格式動畫文件,根據權重乘骨骼矩陣列表,獲得頂點位 置,實現最終頂點的渲染。上述所有算法都在手機用戶終端進行,分組,排列,和權重分配是 在導出插件時進行,並且加密保存。然後在描繪時進行解碼並實現描繪。
所述3D設計軟體包括Maya, 3dMax,以及softimage, AutoCad等其他3D設計軟 件。所述智慧型手機用戶終端為蘋果的iPhone系列手機。優選地,所述智慧型手機用戶終端為 使用谷歌Android2.2以上系統的智能安卓手機。優選地,所述智慧型手機用戶終端還包括蘋 果的ipad, ipad2系列平板電腦。優選地,所述智慧型手機用戶終端為使用谷歌Android2. 2 以上系統的智能安卓平板電腦。
所述3D軟體導出插件用於將製作好的動畫文件導成文本格式動畫信息文件,導 出骨骼列表是會以4個為一組,並以權重形式保存在頂點的一個32位內存塊內,而同屬一 個骨骼組的頂點將被打包到同一內存塊內,這樣加速了繪製時的導出效率。
傳統的骨骼動畫算法將骨骼編號及相對應矩陣數據打包生成數據文件,在實時繪 制時通過編號索引出實用矩陣再乘以複合骨的權重信息,獲得最終骨骼位置。但這種算法 在手機平臺上存在運算效率低下,無法實用化的問題。本發明通過對基本骨骼和複合骨骼 進行排序+分組+編號整理,並將骨骼分組後的編號信息通過32位二進位數進行權重保 存。基本骨骼將以4個一組為單位排列,而每個頂點信息中將會分配一個骨骼的編組號碼 及4個權重信息。即骨骼的編號將以4個一組存成32位二進位數,其中每8個二進位數 代表一個骨骼的編號,如=OxffOOOOOO表示使用所述組內的第3號骨骼,並且權重為1.0, 0x00008080表示使用所述組內的第0,I號骨骼,並且權重均為O. 5。
而作為3D運算模塊,底層描繪端讀取分析所述二進位格式動畫文件,將每個頂點 的骨骼權重信息除以255轉換成浮點數,然後通過乘以編排好的矩陣分組列表,獲得最終 的矩陣。再將頂點座標乘以最終矩陣得到頂點的最終座標位置,實現最終頂點的渲染。
如圖所示,假設動作矩陣列表中以四個基本骨骼為一組,表示為MtxOO,MtxOl, Mtx02,Mtx03。則骨骼權重計算時,編號0x00008080:矩陣=Mtx00*0. 5+Mtx01*0. 5+ Mtx02*0. 0+Mtx03*0. 0。即每個頂點用一個 32 位的二進位數 據表示,同時指定4個骨骼的權重,每8位表示所在位置的骨骼權重,將骨骼權重乘以相對 應的每一幀的骨骼運動空間矩陣,就得到了該頂點在每一幀時的運動座標。
所述打包轉換工具均為現有技術,根據本發明的一個實施例,打包轉換工具可以 採用 maya2010, 3dmax 的內置插件 iPad3dTo_NPF3. mel。將 iPad3dTo_NPF3. me I 安裝到 maya2010的系統插件目錄下,進入maya2010,打開做好的3D模型場景或3D模型角色,點擊 「iPad3dToNPF3」按鈕,插件將自動計算出模型的頂點,貼圖,骨骼已經動畫等信息,然後自 動生成文本式的npf3文件。而maya2010, 3dmax的內置工具Npf3ToWJT. exe,通過它將上述 的npf3文件轉換成各種平臺所需的bin文件,供遊戲中使用。
根據本發明的一個實施例,一個角色由10個基本骨骼,O號 9號骨骼組成,並且 角色的總頂點數為1000個。將10根基本骨骼按4個一組分組,如(0,1,2,3)—組,(4,5, 6,7 ) —組,(8,9 ) 一組。則為每個頂點可以被指定一組骨骼,如指定(O,I,2,3 )為500號頂 點的骨骼組,分配一個32位的數據信息,每8位表示所在位置的骨骼權重,則頂點可以同時 指定4個骨骼的權重。如(0x00001010)就表示該頂點是一一(O號骨* 50%) + (I號骨* 50%) + (2號骨* 0%) + (3號骨* 0%)。再將骨骼權重乘以相對應的每一幀的骨骼運動空間矩陣,就得到了該頂點在每一幀時的運動座標。最後通過其他的鏡頭,投影轉換將頂點畫到屏幕上。
根據本發明的一個實施例,npf3文件結構由以下內容構成1.文件頭信息---文件的開頭保存頭信息。頭信息中包含了文件大小,貼圖數量,模型數量等基本信息。
2.模型頭信息---每個模型構成一個模型內容,並且在模型內容的開頭保存一個模型頭信息。模型頭信息包含了頂點總數,貼圖索引,骨骼結構,動畫格式等基本信息。
3.模型信息---緊跟模型頭信息後面是模型的具體數據。包含了頂點數據序列,頂點序列中包括了每個頂點的基本座標值,法線向量,貼圖座標,綁定的骨骼號,骨骼權重等。
4.動畫頭信息---包含了骨骼序列號,總的動畫幀數,關鍵幀編號等信息。
5.動畫信息---緊跟動畫頭信息後面是動畫的具體數據。包含了動畫數據序列,動畫數據序列中包括了每一幀每個骨骼空間運動矩陣。
權利要求
1.一種基於智慧型手機平臺的3D圖形骨骼動畫繪製算法,其特徵在於該算法包括製作骨骼動畫,所述骨骼動畫包括基本骨骼和複合骨骼;將上述骨骼動畫信息導成文本格式動畫信息文件,在導出時,將複合骨骼及基本骨骼將以4個一組為單位排列,而每個頂點信息中將會分配一個骨骼的編組號碼及4個權重信息,將所述文本格式動畫信息文件轉換成遊戲用二進位格式文件;底層描繪端讀取分析所述二進位格式動畫文件,根據權重乘骨骼矩陣列表,獲得頂點位置,實現最終頂點的渲染。
2.根據權利要求1所述的3D圖形骨骼動畫繪製算法,其特徵在於每個頂點用一個32位的二進位數據表示,同時指定4個骨骼的權重,每8位表示所在位置的骨骼權重,將骨骼權重乘以相對應的每一幀的骨骼運動空間矩陣,就得到了該頂點在每一幀時的運動座標。
3.根據權利要求1或2所述的3D圖形骨骼動畫繪製算法,其特徵在於所述3D設計軟體包括 Maya, 3dMax, softimage 或 AutoCacL
4.根據權利要求1或2所述的3D圖形骨骼動畫繪製算法,其特徵在於所述智慧型手機用戶終端為蘋果的iphone系列手機、使用谷歌Android2. 2以上系統的智能安卓手機、蘋果的ipad,ipad2系列平板電腦或者使用谷歌Android2. 2以上系統的智能安卓平板電腦。
全文摘要
本發明提供了一種基於智慧型手機平臺的3D圖形骨骼動畫繪製算法,由3D軟體導出插件將動畫信息導成文本格式動畫信息文件,數據轉換打包工具將所述文本格式動畫信息文件轉換成專用的遊戲專用二進位格式文件,將複合骨骼及基本骨骼將以4個一組為單位排列。而每個頂點信息中將會分配一個骨骼的編組號碼及4個權重信息。底層描繪端讀取分析所述二進位格式動畫文件,將每組骨骼權重通過動畫矩陣列表實現最終頂點的渲染。使用本發明的算法可以在智慧型手機平臺實現手機3D網路遊戲的開發,或3D設計軟體等3D應用程式的開發,優化了手機平臺的骨骼運算,提高了實時演算的3D動畫速度,還加強數據的安全性。具有可靠性高,方便使用,易於普及等優點。
文檔編號G06T13/40GK102999935SQ20111027074
公開日2013年3月27日 申請日期2011年9月14日 優先權日2011年9月14日
發明者毛春華 申請人:恩嘉壹(上海)網絡科技有限公司