Unity3D 游戲引擎之構(gòu)建3D游戲世界的基本地形
創(chuàng)建一個(gè)3D地形
在上一章中介紹了簡(jiǎn)單的游戲平面,當(dāng)然Unity3D中提供了非常強(qiáng)大的地形編輯器,凹凸,貼圖,碰撞,你能想到的功能它都可以做,給力吧??炜鞓?gòu)建我們的3D游戲地形~哇咔咔~~~
點(diǎn)擊Terrain - > Create Terrain 創(chuàng)建一個(gè)游戲地形,我們命名為MyTerrain。
調(diào)整一下攝像頭的角度,正對(duì)著我們創(chuàng)建的游戲地形,補(bǔ)充一下Unity3D 場(chǎng)景編輯器的移動(dòng)的控制。
模型的旋轉(zhuǎn): Option + 鼠標(biāo)左建
模型的平移: Option + 鼠標(biāo)中鍵
模型的縮放: Option + 鼠標(biāo)右鍵
在下圖中可以清晰的看見(jiàn)創(chuàng)建的游戲地形,與攝像頭映射的方向與顯示的內(nèi)容。

地形一旦創(chuàng)建完畢后,Unity3D會(huì)默認(rèn)地形的大小,寬度,厚度,圖像分辨率,紋理分辨率,等等,這些數(shù)值是可以任意修改的。
點(diǎn)擊Terrain - > set Resolution打開(kāi)設(shè)置地形參數(shù)菜單,如下圖所示。
如上圖所示從上到下分別代表的含義是
Terrain Width: 地形的寬度
Terrain Height: 地形的高度
Terrain Length:地形的長(zhǎng)度
HeightMap Resolution:地形高度圖的分辨率.
Detail Resolution:細(xì)節(jié)分辨率,控制草和細(xì)節(jié)網(wǎng)格地圖的分辨率。數(shù)值越高標(biāo)示效果越好,想對(duì)也越消耗機(jī)器性能,可能會(huì)卡。根據(jù)情況適當(dāng)?shù)恼{(diào)節(jié)。
Control Texture Resolution:控制不同紋理的分辨率。
Base Texture Resolution:控制相對(duì)紋理分辨率,這里指一定范圍內(nèi)的。
設(shè)置完畢點(diǎn)擊 set Resolution按鈕,有興趣的朋友可以動(dòng)態(tài)的修改一下參數(shù),看看你的地形發(fā)生了什么樣的改變?
這樣子我們的地形表面就創(chuàng)建完畢,下面給地形上添加一些五彩繽紛的元素吧。。。
五彩繽紛的元素
Hierarchy中點(diǎn)擊Terrain,Unity編輯器右側(cè)欄中出現(xiàn)地形編輯窗口。下圖中紅框內(nèi)是比較重要的一些信息,從上倒下分別為。
1 .Position Rotation Scale地形的位置旋轉(zhuǎn)縮放,任何模型物體點(diǎn)擊后右側(cè)都會(huì)出現(xiàn)這個(gè)窗口,標(biāo)志著當(dāng)前模型在3D空間中的位置,修改參數(shù)模型也會(huì)跟著在三維空間中改變。
2.這里包含7個(gè)按鈕,從左到右依次為編輯高度、編輯特定高度、設(shè)置平滑、紋理貼圖、畫(huà)樹(shù)模型、畫(huà)草模型、其他設(shè)置.善用著七個(gè)工具可以編輯一個(gè)好看實(shí)用的地形,稍后我會(huì)介紹這七個(gè)按鈕的具體操作流程。
編輯高度
默認(rèn)光標(biāo)是指在編輯高度這個(gè)按鈕上。
Brushes:地形繪制畫(huà)筆,這里有很多種畫(huà)筆的圖案可供我們選擇。
Brush Size :畫(huà)筆寬度取值范圍
Opacity :畫(huà)筆高度取值范圍
各位盆友們具體設(shè)置一下拖動(dòng)鼠標(biāo)點(diǎn)地形中點(diǎn)擊一下就可以充分的感受這些參數(shù)的意義,鼠標(biāo)左右移動(dòng)是畫(huà)筆繪制地形寬度,上下移動(dòng)則是繪制地形高度。按住Shift鍵拖動(dòng)鼠標(biāo)是凹陷地形。
如下圖所示簡(jiǎn)單的地形就映入我們的眼簾,看起來(lái)有點(diǎn)粗糙,別擔(dān)心好戲在后面。
編輯特定高度
和編輯高度頁(yè)面中的信息差不多多了一個(gè)Height用來(lái)設(shè)置最大的高度,編輯高度中Opacity是最大高度,但是在這里Height才是最大高度但是Opacity必需有數(shù)值,舉個(gè)例子Opacity設(shè)置為100 Height設(shè)置 80 最高的高度就是80 .Opacity設(shè)置為20 Height設(shè)置 100最高的高度還是20.
設(shè)置平滑
用上面的方法創(chuàng)建的地形,感覺(jué)邊角有點(diǎn)粗糙,在這里可以設(shè)置邊角平滑過(guò)渡。
紋理貼圖
給地形添加圖片,制作好看的游戲地形,資源方面我們可以導(dǎo)入系統(tǒng)標(biāo)準(zhǔn)的資源庫(kù),里面有很多好看的地形資源,當(dāng)然也可以自己添加喜歡的圖片做地形資源。
Project 標(biāo)簽中 ,右鍵 - > Import Package - > Terrain Assets。我們可以看見(jiàn)里面有很多資源包,暫時(shí)我們先導(dǎo)入地形的資源,之后再去考慮其他資源包。
點(diǎn)擊Edit Textures 出現(xiàn)一個(gè)下拉列表
add Textures 添加一個(gè)貼圖
Edit Textures 編輯貼圖
Remove Textures刪除貼圖
一個(gè)場(chǎng)景可以添加多個(gè)貼圖,比如山丘用綠色的,平原用黃色的等等。
Add Terrain Texture (添加貼圖)
splat :選擇一個(gè)貼圖,上面導(dǎo)入了系統(tǒng)自帶的地形資源,在這里隨便添加兩個(gè)貼圖用于區(qū)分資源。也可以添加自己喜歡的圖片,拖放在工程中就可以在這里看到圖片資源。
Tile size x: 設(shè)置貼圖X軸寬度
Tile size x:設(shè)置貼圖Y軸寬度
Tile offset x:設(shè)置貼圖X軸偏移量
Tile offset y:設(shè)置貼圖Y軸偏移量
有興趣的盆友修改一下參數(shù)方可看到效果,這里暫時(shí)使用默認(rèn)數(shù)值。。
如下圖所示,這里我添加了兩種顏色的貼圖,用于區(qū)分山丘和平地。
本章就先到這里,有關(guān)地圖的特效畫(huà)樹(shù)模型、畫(huà)草模型、其他設(shè)置這三組模型的建立,可以豐富我們的游戲場(chǎng)景,我將在下一章中重點(diǎn)介紹.