Unity3D美工設計需要了解的知識

才智咖 人氣:1.66W

Unity3D和美工相關的部分主要是五個部分:場景物品人物模型,動作動畫,地型系統,光照,動態渲染,粒子效果。其中, 光照、地型系統、粒子效果需要在Unity3D裡完成, 模型和動畫全用3dmax和maya製作後匯入。動態渲染美工做不了,必須由程式設計師完成。那麼哪些是Unity3D美工設計需要了解的知識呢?請看下文。

Unity3D美工設計需要了解的知識

1.引擎沒有說具體的面數限制,按機器效能而定。

2.匯入圖形或者MESH的方法無非兩種,一種是直接拷貝到檔案目錄下的Assets資料夾下面,Unity3d引擎會自動找到新增的檔案,並且能在PROJECT面板中找到它。另一種是我們在PROJECT面板中用右鍵選單,匯入素材。

當然,我是用MAYA匯入的,U3D引擎對於MAYA的支援還是不錯的,但是也需要注意,不要用中文的目錄結構,最好直接從MAYA的工程資料夾中匯入,最好在匯入MESH前先吧貼圖檔案放到相應的資料夾,或者相關資料夾的子資料夾。

在我們匯入場景檔案的時候,需要在匯入設定中勾選建立碰撞,這樣匯入的場景我們就可以踩在上面了。(這跟我們新增碰撞元件是有些不同)

3. Unity3d引擎支援大多數常用的貼圖,比如漫反射貼圖,高光貼圖,法線貼圖。如此一來,它就成了一個名副其實的次時代引擎了。當然與UNREAL引擎的強大材質編輯器不同,U3D引擎主要是編輯材質的方式是使用一種專門的語言,類似於CgFX和Direct3D的語法。當然如果不是專門的圖形程式設計師,我們只要掌握相關的SHADER的使用方法就可以了。在我們安裝完U3D引擎後,系統自帶的SHADER足夠我們日常大多數情況下使用了。如果我們還有特殊的要求,可以去官方的網站上下載相關的程式,然後把程式碼儲存為 er 的檔案,放到相應的目錄底下,然後我們就有了這種SHADER。

掌握並且理解了上面我說的三點,你就可以作為一個U3D引擎的美工開始工作了。其中有幾個需要我們進行深入探討的幾個方面:一是匯入的MESH的要求,如何減面,UV的情況怎樣,是否可以重疊UV。 二是匯入的貼圖規範,我們的各種貼圖要達到怎樣的程度才能匯入,並不是直接拍了照片貼上就很有效果的,我們需要在三維軟體中烘焙,之後才能匯入。還有光照貼圖怎麼製作。 三是各種材質的應用,比如說我們最常用在面板上的3S材質效果,如何在U3D引擎中實現這種效果?

至此,你可以輕鬆的駕馭U3D引擎的Assets部分了。

然後我們要用引擎構建關卡。好吧現在你要成為一個U3D引擎的關卡設計師,當然這裡面也有很多美工要做的事情。我們不用每天對著素材模型,貼圖罵娘了。

作為關卡設計師,特別是U3D的,一定要有一個GAME OBJECT的概念,在這個可愛引擎中,我們可以看到各種的元素都是由GAME OBJECT組成的,在GAME OBJECT上我們又可以新增元件在實現特定的功能,比如最簡單的位移。我在第一次使用這個引擎的時候,突然興致大發想要在場景中建立一盞燈,弄了半天都沒成,後來才明白,燈光是要附著在GAME OBJECT上的。同理,聲音也是要附著在這上面的。

還要有一個PREFABS得概念,就在層級選單中的藍色文字所代表的屬性,其實就是在遊戲中可以無限複製的意思,比如子彈,比如無數的需要出現的小物件兒。

類似於三維軟體以及其他引擎,U3D的燈光分為那麼普通的幾類,電光源、方向光、自然光。瞭解燈光的屬性和使用方法。

還有U3D引擎的物理系統。當我看到這個系統的時候我的心都開花了,一想到各種獨立遊戲中無敵的物理效果心裡就暗爽。比如我們可以用最簡單的方法做一個足球遊戲。

還是做遊戲好,這個引擎能做網頁遊戲,也可以做PC單機遊戲,網路遊戲,也可以做IPHONE平臺的手機遊戲。真是萬能了!

當然,上面很多都是初學時候的經驗,下面是我後來加上的一些內容,是經過學習總結和辛苦翻譯的。

讓你的遊戲能夠順暢的執行是成功的第一個要求。感謝UNTIY,他們通過大量的優化和調整可以讓這個引擎釋出的遊戲運行於各種不同效能的硬體系統。下面是一個通用的優化遊戲效能的方法。

如果你比較關心遊戲的速度,請合併模型。最好能夠把合併的模型使用同樣的材質和貼圖。Rendering Statistics(渲染靜態網格)視窗時很有用的!

現在的圖形顯示卡可以很好的支援很多的多邊形,但是他們他們還是有一些瓶頸的。所以如果你有一個有100個三角形的MESH,它渲染起來所需要花費的運算跟1500個面數的物體是沒有多大差別的。因此最佳的渲染設定時每個模型大約1500-4000個三角面。

只有在遊戲元件中的屬性欄中勾選Mesh Renderer選項顯示卡才會渲染相應的模型,並且在場景中的空的GameObject元件是不會被渲染的。

所以再次重複,最好的匯入渲染設定時合併Objects直到他們每個模型在1500個三角面面甚至更高一些,並且為整個模型使用一個材質。

如果只是把兩個模型合併在一起但是不共同使用同一個材質並不會給你的圖形帶來一點優化。如果你想有效的合併物體,你需要保證你合併後的模型使用一個材質。(其實就是儘量減少材質球的數量)

在你合併物體的時候需要知道一件事:如果你在你的場景中用到了很多小的燈光,你可以把場景中離得很近的物體合併為一個Object。

按照上面的思路,如果一個MESH具有多個材質球,那就說明在計算機渲染的時候是要進行多重運算的。最普遍的你之所以一個MESH用多個材質的原因是因為兩個材質不能使用相同的貼圖。所以如果你想要優化渲染設定,你最好確定你合併的那些MESH的材質是相同的。

Unity對於向顯示卡匯出各種多邊形是很擅長的,它可以很詳盡的把所有的圖形匯入到顯示卡,並且優化資料。你需要做的只是確定你的圖形顯示卡正常工作。而不是要調整很多手動調節的設定。

The number of Pixel Lights affecting an object heavily affects performance. 相當數量的`實時燈光對於遊戲速度也是有限制的。

如果你想要有一個不錯的展示,並且不關心凹凸貼圖和實施燈光(Bumpmapping or Pixel Lighting),可以去Edit->Render Settings...然後設定Pixel Light Coun為0.這將會給所有的Object使用頂點燈光。這將會讓所有的物件在每一幀都會被渲染一次。這是一個比較極端的LOD設定,所以你的遊戲就可以再比較老的圖形顯示卡下運行了。