Unity 僅提供了建立基本幾何物件的工具,若需要製作遊戲角色或場景模型,必須透過 3ds Max、Maya、XSI、Cinema 4D、Lightwave、Blender、Carara、Cheetah 3D 等 3D 軟體,經過建模、設定材質、貼圖與編輯動畫,再匯入到 Unity 的專案中使用。
Unity 支援的 3D 格式包括 *.3ds、*.dxf、*.dae ( Collada )、*.obj、*.fbx 等。此外,若您的電腦安裝 3ds Max 與 Maya 軟體,Unity 也支援 3ds Max ( *.max ) 格式與 Maya ( *.mb ) 格式。不過 FBX 仍是最為建議使用的檔案格式。
使用 3ds Max 製作模型使用 3ds Max 製作的模型,可直接將 .max 儲存於 Unity 專案資料夾,並選擇匯出 Autodesk .FBX 格式到 Unity 程式使用。
若出現 3ds Max couldn't conver the max file to an fbx file 訊息,請檢查是否已安裝 3ds Max 軟體,並且軟體的授權是否失效。
在 3ds Max 匯出 FBX 檔案,請點選功能表 [ File > Export ] 或 [ File > Export Selected ] 開啟匯出設定對話框。
若製作的模型包含動畫,轉存 FBX 檔案時請勾選「Animation」,並可設定動畫的開始與結束範圍。
若製作的 3D 模型已設定材質貼圖時,請務必開啟「Embed Media」,這個選項在預設的情況並不是啟用的。
檢查 Axis Conversion 轉換座標軸,確認為「Y-up」座標系統(3ds Max 的預設座標系統為 Z 軸向上)。
當您回到 Unity 時,FBX 檔案將會自動匯入,請將檔案從 Project 專案視窗拖曳到 Scene 場景視窗或 Hierarchy 階層視窗。
匯入 3D 模型時,Unity 會將所有的多邊形轉換成三角形 ( Polygon ***s ) 。在預設的情況,匯入的模型放到場景時尺寸非常小,這是因為預設的縮放比例 0.01 ,請將數值改為 1.0 並按下 Apply 按鈕套用。
提示:使用 3ds Max 建立的燈光與攝影機,在匯入 Unity 時並未具有照明與攝影的功能,您必須分別套用燈光元件與攝影機元件。
關於 Unity 的動畫設定若您需要將 3D 模型動畫,匯出 FBX 檔時若是忘了勾選 「Animation 」,匯入 Unity 時就無法存取動畫,並且在 Inspector 屬性編輯器會出現 No animation data available in this model. (這個模型沒有動畫資料)的訊息。
至於匯入後動畫無法正常播放的問題,從 Inspector 屬性編輯器切換到 Rig 標籤,將 Animation Type 動畫類型從預設的 Generic 改為 Legacy,按下播放測試,動畫只會播放一次,可改為循環播放。
使用 Maya 製作模型若您使用 Maya 製作 3D 物件,選擇匯出 FBX 格式到 Unity 程式使用。
使用 Maya 匯出檔案時若無法選擇 FBX 格式,請開啟 Plug-in Manager 並勾選 fbxmaya.mll 再重新匯出。
FBX Plug-ins 的下載與安裝若使用 3ds Max 或 Maya 匯出 FBX 檔案遇到問題,請前往 Autodesk 網站下載最新版本的 FBX Plug-ins 安裝。
下載網址
http://usa.autodesk.com/fbx/ 選擇對應的軟體版本。
開始安裝。
選擇 I accept 後按 Next 按鈕下一步。
選擇 Autodesk FBX Plug-in 安裝的資料夾。
複製 Autodesk FBX Plug-in 說明文件。
FBX Importer 設定Meshes 網格設定
Generate Colliders 勾選時 Unity 會自動在整個模型加網格碰撞器,若是整個物件皆需進行碰撞偵測,即可使用此功能。
Calculate Normals 計算法線,開啟此功能即讓 Unity 處理所有的模型表面,使該物件在遊戲中能夠正確的呈現。
Smoothing Angle 當開啟前一項計算法線的功能後,此參數允許您指定平滑的角度,設定值以下的角度將產生硬邊 ( Hard edge ) 的效果。
Animation 動畫設定
Generation 設定產生動畫的方式
- Don't Import 不匯入動畫。
- Store in Original Roots 儲存於根物件 ( Root object ),可能與 Unity 的根物件不同。
- Store in Nodes 儲存於節點,若需要進行複雜的設定或使用腳本控制,請使用此選項。
- Store in Root 動畫儲存於場景中的變形根物件 ( Transform root object )。
Animation Wrap Mode 動畫模式
- Default 預設
- Once 動畫僅播放一次
- Loop 動畫循環播放
- Ping Pong 動畫來回播放
- Clamp Forever
設定後請用滑鼠點一下 Scene 場景檢視面板,出現 Unapplied import settings 訊息對話框時,按下 Apply 按鈕套用設定,否則遊戲執行時可能無法呈現正確的動畫效果。
Bake Animations 使用 IK ( Inverse Kinematics ) 骨架動畫。
Reduce Keyframes 從匯入的檔案移除用不到的動畫關鍵影格,若沒有特殊的考量,此選項應該保持開啟以提升執行效能。
Ragdoll 物件Ragdoll 是 Unity 內建的布偶系統,為了說明 Ragdoll 的功能,我們從 Asset Store 資源商店下載 Soldier Character Pack 士兵角色。
下載並匯入目前的遊戲專案。
點選功能表 [ GameObject > Create Other > Ragdoll ] 開啟 Create Ragdoll 對話框。
Root。
Left Hips 左臀部。
Left Knee 左膝。
Left Foot 左腳。
Right Hips 右臀部。
Right Knee 右膝。
Right Foot 右腳。
Left Arm 左手臂。
Left Elbow 左手肘。
Right Arm 右手臂。
Right Elbow 右手肘。
Middle Spine 脊椎。
Head 頭部。
Total Mass 總質量(維持預設值即可)。
Strength 強度(維持預設值即可)。
Flip Forward 正向反轉(維持預設值即可)。
點選功能表 [ GameObject > Create Other > Ragdoll... ]
您只需要拖曳不同的 limbs 到布偶精靈 ( Ragdoll Wizard ) 視窗,按下 Create 按鈕後 Unity 將會自動產生所有的碰撞器與 Joints
將 Hierarchy 階層視窗的 soldier > Hips 拖曳到布偶精靈 ( Ragdoll Wizard ) 視窗的 Root 欄位。
Left Hips 欄位 < LeftUpLeg
Left Knee 欄位 < LeftLeg
Left Foot 欄位 < LeftFoot
Right Hips 欄位 < RightUpLeg
Right Knee 欄位 < RightLeg
Right Foot 欄位 < RightFoot
Left Arm 欄位 < LeftArm
Left Elbow 欄位 < LeftForeArm
Right Arm 欄位 < RightArm
Right Elbow 欄位 < RightForeArm
Middle Spine 欄位 < Spine
Head 欄位 < Head
Total Mass 維持預設值
Strength 維持預設值
Flip Forward 維持預設值
當 Ragdoll 布偶的所有項目都設定完成後,按下 Create 按鈕。按下 Play 鍵進行測試,您可以看到遊戲角色像是失去意識般的倒下,您可以嘗試在播放模式移動角色,觀察此人物角色的物理效果與真實世界的布偶幾乎相同。
最後的步驟是將設定完成的布偶儲存為預製物件,點選功能表 [ Assets > Create > Prefab ] ,您將會看到一個新的預製物件出現在 Project 專案視窗,別忘了幫你的布偶取個名字吧!
原網站