【Unity】4.5 樹木建立器

分類:Unity、C#、VS2015 編輯器

建立日期:2016-04-11 工具

1、簡介

在地形編輯器一節中,已經告訴了你如何使用已經建立好的樹來造成大片樹林。這一節告訴你在 Unity 5.3.4中如何利用【樹木建立器】一步一步地建立一棵樹: 性能

image

當你學會了建立樹的基本操做後,你就能夠根據本身的須要建立任意形狀的樹了:3d

image

2、導入Unity自帶的Environment組件

若是你原來沒有導入Unity自帶的Environment組件,須要導入它: orm

image

辦法是:鼠標右擊工程視圖下的Assets文件夾,選擇Environment,在彈出的窗口中,單擊【All】按鈕,而後單擊【Inport】按鈕。 blog

此時,在Standard Assets文件夾下就會看到導入的資源:遊戲

image

依次單擊Environment/SpeedTree文件夾下的各個子文件夾,觀察子文件夾中的文件,以便對其結構有一個大概的瞭解。 資源

image

另外,除了樹組件(SpeedTree)之外,Environment下還包含地形組件(TerrainAssets)以及水組件(Water)。 get

導入Environment之後,就能夠直接使用這些組件了。 it

3、建立第一棵樹

一、建立場景

先添加一個Demo06文件夾,而後在該文件夾下建立一個名爲Demo06Scene的場景:

image

雙擊打開該場景。

二、添加一棵新樹

要在剛建立的場景中建立一個新的樹 (Tree) 資源,須要先鼠標右擊層次視圖(Hierarchy),選擇【3D Object】->【Tree】:

image

此時在工程視圖 (Project View) 中建立了一個文件名爲Tree的預製體文件,將該文件拖放到Demo06文件夾中:

image

拖放後,在Demo06文件夾下就能夠看到這個文件,將其換名爲Demo06Tree01以方便識別是哪一個例子建立的:

image

換名後,在當前打開的場景中,便可看到實例化的Demo06Tree01樹(若是看到的不是這樣,將其旋轉縮放一下就看到了):

image

如今這棵新樹還很簡單,只有一個樹幹,接下來咱們爲它添加樹枝、樹葉。

三、觀察樹木建立器的大體結構

選中這棵樹,先在檢視器 (Inspector) ) 中看一下樹木建立器的大體結構(紅色框):

image

檢視器中提供了塑造和雕刻你所建立的樹的全部工具和屬性。

在【Tree】選項卡下,可看到呈現節點的樹木層級視圖 (Tree Hierarchy) :樹根 (Tree Root) 節點和一個單一的樹枝組 (Branch Group) 節點(稱爲樹幹)。

爲了方便介紹,之後將樹木建立器中右下角的4個小按鈕(小紅色框內)從左到右分別命名爲【按鈕1】、【按鈕2】、【按鈕3】、【按鈕4】:

【按鈕1(Add Leaf)】:添加樹葉。向當前選擇的組節點添加一個樹葉組節點。

【按鈕2(Add Branch)】:添加樹枝。向當前選擇的組節點添加一個樹枝組節點。

【按鈕3(Copy Node)】:複製節點。複製當前選擇的組。

【按鈕4(Delete Node)】:刪除節點。刪除層次視圖 (Hierarchy) 中當前選擇的組或場景視圖 (Scene View) 中的一個節點或一個樣條線點。

除了這4個按鈕外,還有:

【樹木狀態(Tree Stats)】:樹木的狀態信息(在4個小按鈕的上方),此狀態告訴你樹木具備多少頂點、多少三角形和多少種材質。

【外部重載(External Reload)】:也叫刷新,即再次計算整棵樹(該按鈕在4個小按鈕的左邊)。在樹葉網格已改變的狀況下,可以使用此按鈕。

四、添加樹枝(Adding Branches)

在【Tree】選項卡中,單擊【按鈕2(Add Branch)】添加一個樹枝:

image

選中剛添加的樹枝,利用4個按鈕下方的【移動樹枝】、【旋轉樹枝】、【自定義樹枝】按鈕,以及【按鈕4(Delete Node)】,經過鼠標拖放小方塊在場景中改變該樹枝的形狀:

image

單擊主樹幹,而後單擊【按鈕2(Add Branch)】,按照上面介紹的相同的辦法,再添加另外一個樹枝:

image

在樹幹上建立了樹枝後,還能夠進一步選擇次級樹枝組 (Branch Group) 並再次單擊【按鈕2(Add Branch)】在新建立的樹枝上添加更小的樹枝。微調這個組的值,可繼續建立更多鏈接至次級樹枝的樹枝。

如今,這棵簡單的樹的樹枝結構已經完成,若是遊戲場景不是發生在冬天,那麼還須要在樹枝上添加樹葉(Leaf)。

五、添加樹葉

添加樹葉和添加樹枝的操做基本上是同樣的。基本步驟是:先選中某個樹枝節點,而後單擊【按鈕1(Add Leaf)】按鈕便可。

image

若是想進行很是細緻地塑造,也能夠再在最小的樹枝上添加另外一個樹葉組。

下圖是分別在樹幹和2個樹枝上各添加一個樹葉後的場景:

image

如今,樹葉僅僅被渲染成不透明的平面。這是由於在爲它們添加材質以前,咱們須要先調整樹葉的值(大小、位置、旋轉等)。調整合適之後,就能夠爲其添加材質了。

六、添加材質

爲了使樹看起來更加逼真,還須要在樹枝和樹葉上應用材質 (Material)。

(1)建立樹枝材質

鼠標右擊Demo06文件夾,選擇【建立 (Create)】 -> 【材質 (Material)】 ,在該文件夾下建立一種新材質,並將其重命名爲Demo06Bark01,意思是Demo06文件夾下建立的第1個樹皮(Bark)材質。

image

在着色器 (Shader) 下拉菜單中,選擇【天然 (Nature)】 -> 【樹木建立器樹皮 (Tree Creator Bark)】:

image

將【基礎(Base)】屬性和【光澤 (Gloss)】屬性都選擇【BroadleafBark】紋理:

image

法線貼圖 (Normalmap) 屬性使用【BroadleafBark_Normal】紋理:

image

這樣在Demo06文件夾下就獲得了建立的樹枝材質(Demo06Bark01.mat文件):

image

選擇某個樹枝,將建立的樹枝材質應用到該樹枝:

image

依次選擇其餘樹枝,直到所有應用材質爲止。

(2)建立樹葉材質

按照與建立樹枝材質一樣的步驟,再建立一個文件名爲Demo06Leaf01.mat的材質。

在着色器 (Shader) 下拉菜單中,選擇【天然 (Nature)】 -> 【樹木建立器樹葉 (Tree Creator Leaves)】:

image

指定紋理:

image

這就獲得了樹葉材質:

image

選擇某個樹葉,將材質應用到該樹葉:

image

對全部樹葉都作一樣的處理,直到全部樹葉應用完畢。

如今再來看看添加材質後的這棵樹(每一個樹枝上都有一個樹葉):

image

選中某個樹葉,觀察【Frequency】屬性的值,可看出此時該值默認爲1:

接下來將【Frequency】屬性的值調整爲42,即獲得下面的效果:

image

對另外兩個樹枝執行一樣的操做,就獲得了咱們但願的樹:

image

說明:建立樹是一個反覆試驗的過程,總的原則是通常不要建立太多的樹葉/樹枝,由於太多的話會影響渲染的性能。

七、添加角色控制器

最後再添加一個第1人稱角色控制器,以便旋轉、拉伸、移動場景:

image

按【播放】按鈕預覽運行效果。

相關文章
相關標籤/搜索