You are currently viewing 【學習筆記】Blender to Unity 匯出設定

【學習筆記】Blender to Unity 匯出設定

  • Post category:筆記
  • Reading time:4 mins read
  • Post author:

整理模型

  1. Apply Modifler,因為Unity沒有修改器,所以必須先全部套用、轉成普通的模型。
  2. 檢查法向,打開Viewport Overlays下拉式選單,勾選Face Orientation,藍色的是正面,紅色是反面(這點很重要,因為blender是雙面渲染,從背面還是能看到模型,但Unity是單面)。 整理的方法是:選擇要轉向的面 -> Shift+N

整理Transform

1.將每個物件都Apply Transform,讓旋轉量歸零、尺寸歸一。 也就是說,以當前尺寸作為Unity中scale的「1」。

(在這裡可以查看)

2.將每個物件都Set Origin to Geometry,將軸心移到物件的中心點(如果有特殊需求就Set Origin to 3D Cursor將軸心移到想要的位置)。

整理Texture

如果預設是用路徑載入貼圖,而非直接匯入圖檔,要特別將貼圖打包到一個資料夾,這樣才能在Unity中調整材質。

點選File→External Data→Unpack All Into Files,Blender就會自動建立一個textures資料夾存放所有貼圖。

匯出設定

1.將fbx匯入Unity後會發現所有物件全都變成一個同檔案名稱的空物件的子物件,簡單來說,並不會記錄Outliner中的分層,要讓他能保持階級關係,匯出時要將Batch Mode改成Collection

(右邊的資料夾按鈕可以設定是否為每個Collection新增資料夾。)

2.匯出設定打勾Apply Transform。
(沒打勾的話在Unity會看到下圖這個樣子,原因很簡單,因為blender的預設單位是公分、Unity是公尺;blender中正面是面向-y、Unity中是z。)

Unity中Inspector的Transform數值

3.匯出設定中確認Y軸向上、-Z向前

整理Material(Unity)

fbx會儲存材質球,但不會存node,簡單來說貼圖不會自動指定給材質球,所以要在Unity中處理。
(話雖如此,但我個人建議直接在Unity中重新製作材質,省下以下步驟的時間、全程在Unity中製做也比較有彈性。)

1.點選匯入的fbx,Inspector下選擇Materials,按Extract Materials…,新增一個資料夾存放材質球。

2.Texture一樣建個資料夾來放,要將Texture Type改成Sprite。

3.現在就可以編輯材質球了。

Unity的預設材質球沒有類似Blender中Texture Coordinate的功能,所以沒拆UV的話基本上貼圖都會跑掉(比例或位置不對),可以用Shader Graph調整、或是先拆好UV再匯入。

簡單來說,在blender中貼上貼圖後的效果不一定跟Unity中一樣,這就是UV的功用。



最後再整理一次整個匯出的流程&注意事項:

  1. 套用修改器。
  2. 檢查法向。
  3. 套用transform。
  4. 設定軸心
  5. 整理貼圖(決定用路徑還是檔案)。
  6. 匯出設定(檔案內容、分層、transform & animation)。
  7. 編輯材質(Unity)。

Leave a Reply