三维软件转Unity的系统单位设置研究
Unity的系统单位为米,其他3D软件的模型导入,而保持和Unity的比例一致是非常重要的,下面对各软件进行测试:
㈠. 3dsmax 转 Unity的比例为100:1;也就是说Unity单位是3dsmax的100倍。
设置为100米的情况下,导入到Untiy才等于1米。
設定3ds MAX製作模型單位為 "公分"
1."Customize">"Units Setup"
2.在Setup中 "Display Unity Scale" 選擇 "Centimeters"公分
3.在System Unit Setup內設定"System Unit Scale" > 1Unit = 1.0 Centimeters [每單位尺寸1公分]
3dx MAX 軸向.貼圖.動畫 輸出FBX檔設定
1.由於MAX中 是Z軸向上, UNITY是Y軸向上 , 輸出FBX檔 (按Export 到FBX檔) 可存入UNITY專案擋方便作業
2.之後會打開設定視窗, 勾選 "Embed Media" 帶有貼圖
3.在" Axis Conversion", "Up Axis" 選Y-up 讓輸出時Y軸向上
4.若有動畫, 則勾選"Animation", "Bake Animation"...並確定start/end影格數.
5.拉入UNITY下Project視窗完成匯入
模型歸零(縮放.位移.旋轉)
Utility面板下的 "Reset XFrom", "Reset Selection"
使用UNITY 群體種樹功能
1.必須將3ds MAX製作的樹頂, 朝向MAX內的Y軸 (看起來是一個橫倒的樹木)
2.加入Utility下的 Reset XFrom, Reset Selection
3.匯出到UNITY專案
骨架
1.在"Creat"面板選"System"模組.點擊Biped.
2.使用滑鼠左鍵拖拉出一個Biped骨架. 預設名稱Bip001, 可在"Root Name"修改
讓Unity支援.max檔
1.該電腦比需安裝有3ds MAX
2.在.max檔上按右鍵.選"開啟檔案"."選擇預設程式".選"3ds MAX"軟體
使用Motion Builder
1.Motion Builder預設檔就是FBX, 所以不用像MAYA或3ds MAX要調整許多設定
2.只要確定Save Option下要帶的貼圖.動畫.骨架等等Take右邊那有打勾
3.匯出給UNITY即可
Unity3d導入3dMax模型會產生若干問題,按照官方的說明,將max模型導成fbx文件導入untiy似乎也不能解決
1、x軸向偏轉
3dmax模型導入後自動有一個x軸270度的偏轉,巧合的是,在unity中旋轉模型的時候,你會發現y軸參照方向永遠朝上,而x和z軸則以模型本身的局部座標爲準,這樣當模型沿x軸旋轉270度之後,z軸正好與y軸重合,這樣你試圖用程序控制方向的時候就會發現旋轉y和旋轉z效果相同,這顯然不是你期望的結果。解決這個問題的方法是,將.max文件導出爲.3ds文件再導入untiy,而不是官方說的導成.fbx
2、材質問題
模型在3dmax裏賦予材質之後,不管通過何種方式導入到unity中,都是沒有材質的,好在untiy自動生成了這些材質的材質球,我們需要做的是將貼圖再重新設置一遍,如果你的材質還有其他效果,比如lightmap,則需要選擇正確的shader之後再設置貼圖。
另外一個是多重材質,多重材質暫時還不知道如何在unity中顯示,所以在製作模型的之後,應該先確定哪些部件應該合在一起,而哪些需要獨立,比如,對於一架直升飛機來說,身體和螺旋槳就可以分爲兩個部件,而不應該把螺旋槳與發動機合併成一個部件,這樣程序就無法旋轉螺旋槳了。
3、縮放因子問題
模型導入到untiy中,如果你之前在3dmax中沒有關心過“單位”問題,則它在場景裏的大小一定會出呼你的意料。
unity中的1單位是fbx文件中的1單位的100倍
所以,如果我們想unity中使用1單位=1米的話,那在max和maya中製作的時候,單位就設置成1釐米
如果我們想unity中1單位=100M,那單位就設置爲1M
如果我們想unity中1單位=1釐米的話,那單位就設置爲0.1毫米,或者在單位爲1釐米的情況下把比例因子改爲1
在max中,單設置應該像這樣
1Unit = 1釐米,這樣在unity中1格就等3dmax中的1M了
針對經常出現的問題,將需要注意的點羅列如下:
1、物體的頭要朝下
2、所有遊戲中的車輛飛機大致都可以分成兩個部分,一個是身體,一個是炮臺或螺旋槳,那麼身體要有一個統一的名稱,都叫做Body,螺旋槳叫做Airscrew,炮臺叫做 Barbette ,這樣我就可以找到所有的身體,並把爆炸效果的火焰和身體連接起來
3、模型尺寸比例問題,參考前文所說的設置,另外不管是飛機,還是坦克,尺寸都在10米左右(以這個尺寸爲基準),也就是3dmax裏的10格大小
4、模型要在場景中居中,否則導入物體質心位置不對
5、起名字可以起這個武器的實際名稱,如果不知道的話,也可以叫做Tank1,Tank2這樣,但最重要的是貼圖名字和模型名字要相同,否則很亂
如果真的要輸出FBX, 可以在3ds max設定editable poly後 加掛一個skin修改器即可