回覆列表
  • 1 # 寒來一暑往

    (引自別處,希望有用)用Max匯出Unity3D使用的FBX檔案流程註解從max匯出FBX到Unity,以下環節需要特別注意。1,單位設定很多人在建模,動畫的時候,預設的maxsystemunit是設定的inch,建議修改成metres或者centimetres,否則匯出的模型和動畫可能比例不一致2,匯出物在匯出模型和動畫時,建議選擇的匯出模式,是根據你要匯出模型或者動畫,使用exportselected模式匯出,即,只匯出選中的物件。3,動畫中必須有模型在使用exportselected匯出動畫時,要全選你要匯出的全部骨骼,包括Bipe,和Bone,以及他們的Nub。然後選中任何1個模型,一起匯出;FBX不允許沒有模型的動畫單獨存在;4,可能丟失蒙皮資訊的原因1在使用exportselected匯出模型時,要選中你要匯出的模型,以及全選所有的骨骼,才會有蒙皮資訊。檢視匯出的FBX有沒有蒙皮資訊,可以把FBX檔案拖到Unity裡,看Mesh上面有沒有一個引數叫做skinedmeshmaterial,如果沒有,則是你沒有選中骨骼就匯出了,因此沒有蒙皮資訊。5,可能丟失蒙皮資訊的原因2在匯出有蒙皮資訊的模型檔案成FBX時,一定要給每一個模型或者submesh指定他們的材質,且給每個材質正確的命名,且其Diffusemap不能為空。否則也不會有skinedmeshmat,也就是蒙皮資訊也無法匯出。6,ResetXForm記得在skin或者physique之前,一定要嚴格的進行ResetXForm,否則匯出的FBX,模型會有嚴重的偏移;以下是自用的FBX自動匯出指令碼說明書FBX_AniExporter.ms當模型/動畫的unit和system的unit一致時(建議都是centimetres),使用這個指令碼進行FBX動畫檔案的批次匯出,需要修改裡面的匯入資料夾和匯出資料夾路徑,指令碼會對匯出FBX自動命名;指令碼會自動全選場景中所有的$Bip*和$Bone*,以及1個模型進行匯出;FBX_AllMeshExporter.ms批次匯出場景中的所有模型/子物體為一個個單獨的FBX模型檔案(含模型,UV,蒙皮資訊,不含動畫資訊);指令碼在匯出時自動使用以下規則:模型1+全部$Bip+全部$Bone,模型2+全部$bip+全部$Bone,模型3+全部$bip+全部$Bone;FBX_MeshExporter.ms舊版的FBX_AllMeshExporter,可以不管;ANI_1by1.ms當模型/動畫的unit和system的unit設定不一致時,將systemunit設定正確,然後逐個開啟要匯出的max檔案,使用這個指令碼一個個匯出;InitMatFile.ms給場景中所有模型/子物體設定獨立的材質球,給材質球自動命名為模型的名字並且填充DiffuseMap,需要指定其中的map路徑,且map路徑裡的TGA貼圖張數不能小於場景裡的模型數量,指令碼才能正確執行;Select2Export故名思意,匯出選中的模型和骨骼。unity3d模型匯入技巧Unity3d匯入3dMax模型會產生若干問題,按照官方的說明,將max模型導成fbx檔案匯入untiy似乎也不能解決1、x軸向偏轉3dmax模型匯入後自動有一個x軸270度的偏轉,巧合的是,在unity中旋轉模型的時候,你會發現y軸參照方向永遠朝上,而x和z軸則以模型本身的區域性座標為準,這樣當模型沿x軸旋轉270度之後,z軸正好與y軸重合,這樣你試圖用程式控制方向的時候就會發現旋轉y和旋轉z效果相同,這顯然不是你期望的結果。解決這個問題的方法是,將.max檔案匯出為.3ds檔案再匯入untiy,而不是官方說的導成.fbx2、材質問題模型在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這樣,但最重要的是貼圖名字和模型名字要相同,否則很亂。

  • 中秋節和大豐收的關聯?
  • 第一個字是馬的四字成語有哪些?