1. 程式人生 > >研究了下FBX Sdk小記錄

研究了下FBX Sdk小記錄

大過年的找不到耍事,研究了下FBXSdk,用於將FBX格式的東西導成我們私貨需要的資料樹容器&格式檔案。翻了好多文章的說……

寫FBX的讀取解析工具與寫3DsMAX的外掛相比有以下幾種好處:

1.很多3D圖形應用軟體都支援這個格式,而且FBX本身屬於大而全的描述方式,這就意味著只需要寫FBX的讀取解析工具就能應對不同的軟體,而不用一一為它們開發用於匯入匯出的外掛。

2.方便除錯- -。

和之前寫3dsmax的匯出外掛時的問題差不多,這玩兒明擺著不是為遊戲而生的,為了減少沉鬱資料,頂點位置、uv座標、法線等等資料的多少不是對齊的,它們依靠各自的索引相互連結起來,可編輯性很強,這種組織方式更偏向圖形應用軟體而不是遊戲。

圖形應用程式是為了可編輯或掛接一些修改器等等原因適用這種資料描述方式。

而遊戲程式卻與之相反,遊戲進行時不需要什麼模型編輯功能,而遊戲的實時性要求需要對齊的資料(至少我們的私貨需要)來方便讀取資料,建立圖形裝置的頂點快取並方便提交。

而這就是我這幾天做的事:需要將實際用到的真實的頂點一一還原並統計下來(話說我寫外掛時為了看動畫效果,沒這麼做,所以法線、uv座標是錯的),數量有點多而且不是索引形式的……(Ps:我加了一個毫無意義的……有點意義的索引用於翻轉三角面,因為修正矩陣映象了-z軸。另,我們的私貨的裝置一定要傳頂點索引- -#)

加上索引,儘量合併一些頂點,再帶化一次應該能減少很多頂點資料量……但願如此,哦還要按材質再切分- -。

最後Ps:上圖中的光照是錯的法線方向不對……