程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> .NET網頁編程 >> C# >> C#入門知識 >> 【Unity】3.3 用3ds Max 2015制作模型並將其導入到Unity,3dsunity

【Unity】3.3 用3ds Max 2015制作模型並將其導入到Unity,3dsunity

編輯:C#入門知識

【Unity】3.3 用3ds Max 2015制作模型並將其導入到Unity,3dsunity


分類:Unity、C#、VS2015

創建日期:2016-04-05

一、常用三維軟件簡介

由於游戲引擎本身的建模功能相對較弱,無論是專業性還是自由度都無法同專業的三維軟件相比,所以大多數游戲中的模型、動畫等資源都是通過專業的三維軟件來制作的,制作完成後再將其導入到Unity中使用就行了。

Unity支持幾乎所有主流的三維文件格式,例如.FBX、.dae、3Ds、.dxf、.obj等。其中,最常用的三維建模軟件有:3Ds Max、Blender、Maya、……等。

用戶在3Ds Max、Blender或Maya中導出文件到Unity工程的資源文件夾下以後,Unity會自動更新這些資源,然後就可以在工程中使用了。

1、3ds Max

Autodesk3D studio Max(簡稱3ds Max或MAX)是Autodesk公司開發的基於PC系統的三維動畫渲染和制作軟件。3ds Max被廣泛應用於廣告、影視、工業沒計、建築設計、三維動畫、多媒體制作、游戲、輔助教學及工裎可視化等領域。

3ds Max 2015(16.9商業版)的文件擴展名為“.max”,可利用該軟件提供的fbx導出插件直接導出.fbx格式的文件(安裝時已經自動包含該插件)。

通過此軟件導出的.fbx文件導入到Unity後,網格(Meshes)、紋理(Textures)、動畫(Animations)、骨骼(Bones)都支持。

2、Maya

Autodesk Maya是美國Autodesk公司出品的三維軟件,應用領域是專業的影視廣告、角色動畫、電影特技等。Maya能夠提供良好的3D建模、動畫、特效及渲染功能,是電影級別的高端三維制作軟件。Maya可在Windows、Mac os等操作系統上運行。

通過此軟件導出的.fbx文件導入到Unity後,網格(Meshes)、紋理(Textures)、動畫(Animations)、骨骼(Bones)都支持。

3、Blender

Blender是—個開源的、跨平台的全能三維軟件,提供從建模、動畫、材質、渲染到音頻處理、視頻剪輯等一系列動畫短片制作的解決方案。Blender以Python為內建腳本,支持Yafaray渲染器,同時還內置游戲引擎,擁有極豐富的功能。

通過此軟件導出的.fbx文件導入到Unity後,網格(Meshes)、紋理(Textures)、動畫(Animations)、骨骼(Bones)都支持。

4、Cinema 4D

Cinema 4D是—套由德國Maxon Computer公司開發的三維軟件,以極高的運算速度和強大的渲染插件而著稱。Cinema 4D應用廣泛,在廣告、電影、工業設計等方面都有出色的表現。它正成為許多—流藝術家和電影公司的首選。

通過此軟件導出的.fbx文件導入到Unity後,網格(Meshes)、紋理(Textures)、動畫(Animations)、骨骼(Bones)都支持。

5、LightWave

LightWave是由美國NewTek公司開發的一款高性價比的三維動畫制作軟件,在生物建模和角色動畫方面功能異常強大。基於光線跟蹤、光能傳遞等技術的渲染模塊,令它的渲染品質幾盡完美。LightWave的11.5版(或更高)已經成為一款功能非常強大的三維動畫軟件,並支持大多數操作系統,而且在各個操作系統上都有一致的操作界面。

通過此軟件導出的.fbx文件導入到Unity後,網格(Meshes)、紋理(Textures)、動畫(Animations)、骨骼(Bones)都支持。

二、導入模型到Unity工程中的方式

導入用其他軟件制作的三維模型時,Unity會將其表示為許多不同對象,包括游戲對象 (GameObject)、網格(可以根據導入選項蒙皮)、動畫片段 (AnimationClip) 等。在Project下的文件夾中,主導入對象為模型預設 (Model Prefab)。

對於網格(Mesh)來說,必須使用網格過濾器 (Mesh Filter) 組件將導入的網格附加到游戲對象 (GameObject) 上。另外,要使網格可見,游戲對象 (GameObject) 還必須附加網格渲染器(Mesh Renderer) 或其他渲染組件。有了這些組件,網格就可以在游戲對象 (GameObject) 位置處可見,其確切外觀取決於渲染器使用的材質。

網格篩選器 (Mesh Filter) 與網格渲染器 (Mesh Renderer) 相結合使模型出現在屏幕上。

Unity的網格導入程序提供了許多選項,用於控制網格生成並將其與其紋理和材質相關聯。

1、將模型導出為.fbx或者.obj格式

這種方式先用某種三維軟件導出三維文件,比如導出為.FBX文件或者.OBJ文件,然後再將導出的三維文件導入到Unity中。

這是建議的方式。

優勢:

  • 僅導出所需數據
  • 使用可驗證的數據(在 Unity 重新導入至三維資源包)
  • 文件通常更小
  • 鼓勵使用模塊化方法 - 例如,根據碰撞類型或交互性選擇不同的組件。
  • 支持其他三維包(不直接支持其專有格式的三維包)。

劣勢:

  • 原型和迭代的管道會導致運行速度更慢。
  • 容易丟失源工作文件和游戲數據(如導出的 FBX)之間的版本信息記錄。
  • 直接導入專業三維軟件的工程文件

這種方式直接導入三維應用文件到Unity中,比如直接導入用3DS Max制作的.max文件,或者直接導入用Blender制作的.Blend文件。

一般不采用這種方式。

優勢:

  • 快速的迭代過程(節省源文件和 Unity 重新導入的時間)
  • 簡化的初始階段。

劣勢:

  • 使用 Unity 工程的所有機器都必須安裝有許可證的軟件副本。
  • 無用數據會大大增加文件的容量。
  • 文件太大會降低 Unity 更新的速度。
  • 增加了故障排除的難度。

3、縮放因子(Scale Factor)和文件縮放比例(File Scale)

Unity的默認度量單位為“米”,將其他專業三維軟件制作的模型導入到Unity 5.3.4中時,如果希望模型和原來的大小相同,需要設置縮放因子,其默認的比例關系如下:

導入3ds Max時,縮放因子應設置為0.01

導入Lightwave時,縮放因子應設置為0.01

導入Maya時,縮放因子應設置為100

導入Cinema4D時,縮放因子應設置為100

如果是導入的文件,Unit會再提供一個文件縮放比例,這個比例實際上就是縮放系數。

下面通過例子說明具體步驟。

三、示例—將用3ds Max 2015創建的.fbx模型導入到Unity

下面以3ds Max 2015(16.9商業版)為例,說明用專業三維軟件創建模型的基本辦法,以及將創建的模型導入到Unity中的基本操作步驟。

1、先解決3ds Max 2015顯示驅動程序的問題

不知道什麼原因,3ds Max 2015推薦的顯示驅動程序(Direct3D 11.0)在本人的計算機上無法正常顯示模型,只能顯示線框。為了解決這個問題,需要先更改一下顯示驅動程序。具體辦法為:運行3ds Max 2015,選擇主菜單的【自定義】->【首選項】,在彈出的窗口中,將【顯示驅動程序】改為“Direct3D 9.0”,如下圖所示:

修改以後,重新啟動3ds Max 2015,就可以正常顯示模型或線框了(F3切換)。

2、設置度量單位

由於3ds Max 2015導出的.fbx模型導入到Unity中時默認的縮放因子為0.01,為了讓創建的模型導入到Unity後看到的大小一致,可將3ds Max 2015的【系統單位】和【顯示單位】都設置為“厘米”。下面是具體操作辦法。

啟動3ds Max 2015,【自定義】->【單位設置】,如下面的左側圖所示。在下面右側的彈出界面中,將【顯示單位比例】設置為“厘米”:

  

單擊上圖右側的【系統單位設置】按鈕,在下面的彈出界面中,將【系統單位比例】也設置為“厘米”:

依次單擊【確定】按鈕,完成單位設置。

3、創建立方體

創建—個長寬高都為100cm的立方體,並將其位置移動到坐標原點。如下圖所示:

4、將模型導出為.fbx格式

選中創建的立方體,然後選擇【導出】->【導出選定對象】,將該模型導出到文件名為Box001.fbx的文件中。如下圖所示。

記住導出的文件位置,以備下一步使用。

還有一種更簡便的辦法,就是直接將模型導入到Unity工程的某個文件夾下,這樣就可以在Unity工程中直接雙擊該模型打開3ds Max 2015並編輯該模型,編輯後Unity會自動更新,不需要再復制了。

為了演示如何導入現有的模型,本節的例子並沒有將模型直接保存到Unity工程下(下一節的例子再介紹這種辦法)。

5、導入模型到Unity

運行Unity,打開ch03Demos工程,然後將從3ds Max 2015導出的Box001.fbx文件(如果有其他文件和文件夾,要一塊導入)拖放到工程視圖Assets文件夾下的Models文件夾下:

觀察檢視器,可看到該模型的【File Scale】為0.01,而【Scale Factor】為1:

6、使用導入的模型

將Box001.fbx拖放到層次視圖中,並調整其位置,如下圖所示:

7、貼圖

將Texture文件夾下的磚塊紋理拖放到層次視圖的Box001上,就能在場景中看到該模型貼圖後的效果了:

通過這個例子,我們就理解了從用3ds Max 2015創建模型到在Unity中導入並使用這些模型的基本操作步驟,以後既可以自己去創建模型,也可以直接導入別人創建好的各種復雜模型了。

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved