- 相關(guān)推薦
Unity3D美工設計需要了解的知識
Unity3D和美工相關(guān)的部分主要是五個(gè)部分:場(chǎng)景物品人物模型,動(dòng)作動(dòng)畫(huà),地型系統,光照,動(dòng)態(tài)渲染,粒子效果。其中, 光照、地型系統、粒子效果需要在Unity3D里完成, 模型和動(dòng)畫(huà)全用3dmax和maya制作后導入。動(dòng)態(tài)渲染美工做不了,必須由程序員完成。那么哪些是Unity3D美工設計需要了解的知識呢?請看下文。
1.引擎沒(méi)有說(shuō)具體的面數限制,按機器性能而定。
2.導入圖形或者M(jìn)ESH的方法無(wú)非兩種,一種是直接拷貝到文件目錄下的Assets文件夾下面,Unity3d引擎會(huì )自動(dòng)找到添加的文件,并且能在PROJECT面板中找到它。另一種是我們在PROJECT面板中用右鍵菜單,導入素材。
當然,我是用MAYA導入的,U3D引擎對于MAYA的支持還是不錯的,但是也需要注意,不要用中文的目錄結構,最好直接從MAYA的工程文件夾中導入,最好在導入MESH前先吧貼圖文件放到相應的文件夾,或者相關(guān)文件夾的子文件夾。
在我們導入場(chǎng)景文件的時(shí)候,需要在導入設置中勾選創(chuàng )建碰撞,這樣導入的場(chǎng)景我們就可以踩在上面了。(這跟我們添加碰撞組件是有些不同)
3. Unity3d引擎支持大多數常用的貼圖,比如漫反射貼圖,高光貼圖,法線(xiàn)貼圖。如此一來(lái),它就成了一個(gè)名副其實(shí)的次時(shí)代引擎了。當然與UNREAL引擎的強大材質(zhì)編輯器不同,U3D引擎主要是編輯材質(zhì)的方式是使用一種專(zhuān)門(mén)的語(yǔ)言,類(lèi)似于CgFX和Direct3D的語(yǔ)法。當然如果不是專(zhuān)門(mén)的圖形程序員,我們只要掌握相關(guān)的SHADER的使用方法就可以了。在我們安裝完U3D引擎后,系統自帶的SHADER足夠我們日常大多數情況下使用了。如果我們還有特殊的要求,可以去官方的網(wǎng)站上下載相關(guān)的程序,然后把代碼保存為 .shader 的文件,放到相應的目錄底下,然后我們就有了這種SHADER。
掌握并且理解了上面我說(shuō)的三點(diǎn),你就可以作為一個(gè)U3D引擎的美工開(kāi)始工作了。其中有幾個(gè)需要我們進(jìn)行深入探討的幾個(gè)方面:一是導入的MESH的要求,如何減面,UV的情況怎樣,是否可以重疊UV。 二是導入的貼圖規范,我們的各種貼圖要達到怎樣的程度才能導入,并不是直接拍了照片貼上就很有效果的,我們需要在三維軟件中烘焙,之后才能導入。還有光照貼圖怎么制作。 三是各種材質(zhì)的應用,比如說(shuō)我們最常用在皮膚上的3S材質(zhì)效果,如何在U3D引擎中實(shí)現這種效果?
至此,你可以輕松的駕馭U3D引擎的Assets部分了。
然后我們要用引擎構建關(guān)卡。好吧現在你要成為一個(gè)U3D引擎的關(guān)卡設計師,當然這里面也有很多美工要做的事情。我們不用每天對著(zhù)素材模型,貼圖罵娘了。
作為關(guān)卡設計師,特別是U3D的,一定要有一個(gè)GAME OBJECT的概念,在這個(gè)可愛(ài)引擎中,我們可以看到各種的元素都是由GAME OBJECT組成的,在GAME OBJECT上我們又可以添加組件在實(shí)現特定的功能,比如最簡(jiǎn)單的位移。我在第一次使用這個(gè)引擎的時(shí)候,突然興致大發(fā)想要在場(chǎng)景中創(chuàng )建一盞燈,弄了半天都沒(méi)成,后來(lái)才明白,燈光是要附著(zhù)在GAME OBJECT上的。同理,聲音也是要附著(zhù)在這上面的。
還要有一個(gè)PREFABS得概念,就在層級菜單中的藍色文字所代表的屬性,其實(shí)就是在游戲中可以無(wú)限復制的意思,比如子彈,比如無(wú)數的需要出現的小物件兒。
類(lèi)似于三維軟件以及其他引擎,U3D的燈光分為那么普通的幾類(lèi),電光源、方向光、自然光。了解燈光的屬性和使用方法。
還有U3D引擎的物理系統。當我看到這個(gè)系統的時(shí)候我的心都開(kāi)花了,一想到各種獨立游戲中無(wú)敵的物理效果心里就暗爽。比如我們可以用最簡(jiǎn)單的方法做一個(gè)足球游戲。
還是做游戲好,這個(gè)引擎能做網(wǎng)頁(yè)游戲,也可以做PC單機游戲,網(wǎng)絡(luò )游戲,也可以做IPHONE平臺的手機游戲。真是萬(wàn)能了!
當然,上面很多都是初學(xué)時(shí)候的經(jīng)驗,下面是我后來(lái)加上的一些內容,是經(jīng)過(guò)學(xué)習總結和辛苦翻譯的。
讓你的游戲能夠順暢的運行是成功的第一個(gè)要求。感謝UNTIY,他們通過(guò)大量的優(yōu)化和調整可以讓這個(gè)引擎發(fā)布的游戲運行于各種不同性能的硬件系統。下面是一個(gè)通用的優(yōu)化游戲性能的方法。
如果你比較關(guān)心游戲的速度,請合并模型。最好能夠把合并的模型使用同樣的材質(zhì)和貼圖。Rendering Statistics(渲染靜態(tài)網(wǎng)格)窗口時(shí)很有用的!
現在的圖形顯卡可以很好的支持很多的多邊形,但是他們他們還是有一些瓶頸的。所以如果你有一個(gè)有100個(gè)三角形的MESH,它渲染起來(lái)所需要花費的運算跟1500個(gè)面數的物體是沒(méi)有多大差別的。因此最佳的渲染設置時(shí)每個(gè)模型大約1500-4000個(gè)三角面。
只有在游戲組件中的屬性欄中勾選Mesh Renderer選項顯卡才會(huì )渲染相應的模型,并且在場(chǎng)景中的空的GameObject組件是不會(huì )被渲染的。
所以再次重復,最好的導入渲染設置時(shí)合并Objects直到他們每個(gè)模型在1500個(gè)三角面面甚至更高一些,并且為整個(gè)模型使用一個(gè)材質(zhì)。
如果只是把兩個(gè)模型合并在一起但是不共同使用同一個(gè)材質(zhì)并不會(huì )給你的圖形帶來(lái)一點(diǎn)優(yōu)化。如果你想有效的合并物體,你需要保證你合并后的模型使用一個(gè)材質(zhì)。(其實(shí)就是盡量減少材質(zhì)球的數量)
在你合并物體的時(shí)候需要知道一件事:如果你在你的場(chǎng)景中用到了很多小的燈光,你可以把場(chǎng)景中離得很近的物體合并為一個(gè)Object。
按照上面的思路,如果一個(gè)MESH具有多個(gè)材質(zhì)球,那就說(shuō)明在計算機渲染的時(shí)候是要進(jìn)行多重運算的。最普遍的你之所以一個(gè)MESH用多個(gè)材質(zhì)的原因是因為兩個(gè)材質(zhì)不能使用相同的貼圖。所以如果你想要優(yōu)化渲染設置,你最好確定你合并的那些MESH的材質(zhì)是相同的。
Unity對于向顯卡導出各種多邊形是很擅長(cháng)的,它可以很詳盡的把所有的圖形導入到顯卡,并且優(yōu)化數據。你需要做的只是確定你的圖形顯示卡正常工作。而不是要調整很多手動(dòng)調節的設置。
The number of Pixel Lights affecting an object heavily affects performance. 相當數量的實(shí)時(shí)燈光對于游戲速度也是有限制的。
如果你想要有一個(gè)不錯的展示,并且不關(guān)心凹凸貼圖和實(shí)施燈光(Bumpmapping or Pixel Lighting),可以去Edit->Render Settings...然后設置Pixel Light Coun為0.這將會(huì )給所有的Object使用頂點(diǎn)燈光。這將會(huì )讓所有的物件在每一幀都會(huì )被渲染一次。這是一個(gè)比較極端的LOD設置,所以你的游戲就可以再比較老的圖形顯卡下運行了。
Pixel lights 像素燈光
如果你使用的是像素燈光,那么每個(gè)被這個(gè)燈光照射到的GameObject都會(huì )在每一幀被渲染一次。如果你合并了兩個(gè)距離很遠的物體,他就會(huì )增加物件的大小,然后你就會(huì )需要一些燈光來(lái)照亮這些物體。如果你的物件是分開(kāi)的,燈光將不會(huì )渲染遠處的物體,這將會(huì )導致模型得到多次渲染,相比較沒(méi)有被合并的模型,我們并沒(méi)有得到多少實(shí)惠。因此,如果你的GameObject中有很多獨立物件的時(shí)候,你可以讓他們離得比較遠。
當渲染一個(gè)模型的時(shí)候,UNTIY如果發(fā)現很多燈光在MESH的周?chē),它將?huì )找出那個(gè)是主要影響這個(gè)MSEH的燈光,在Edit->Render Settings中的設置就是用來(lái)調整有多少個(gè)燈光最終作為像素燈光有多少作為頂點(diǎn)燈光。
每一個(gè)燈光通過(guò)計算離MESH得距離和自己燈光強度來(lái)決定自己的重要程度。
在游戲中的某些燈光是很重要的,所以,每一個(gè)燈光都會(huì )有一個(gè)Render Mode設置,這個(gè)用來(lái)設置哪一個(gè)可以被用來(lái)設置為Force Pixel 或者 Force Vertex.
想象一下假如我們是一個(gè)駕車(chē)的游戲,你的角色在夜晚打開(kāi)車(chē)燈,前面的車(chē)燈就是游戲中最重要的燈光。因此,前大燈的渲染模式將會(huì )被設置為Force Pixel
當然如果你有一個(gè)不是很重要的燈光,也是選擇使用"Force Vertex"的渲染模式,這個(gè)方式也不會(huì )對游戲的速度有很大的影響的。
影子
陰影普遍運算量比較大。如果運用得當,可以讓游戲畫(huà)面出色,你也可以樂(lè )隊相關(guān)文檔。
角色建模優(yōu)化
你的角色應該只被用于一個(gè)蒙皮模型渲染器。當然有時(shí)候可能需要多個(gè)蒙皮的模型,但是如果你同時(shí)用兩個(gè)蒙皮來(lái)作為一個(gè)角色,它就相當于你進(jìn)行了兩個(gè)角色的運算量。
你同樣需要保持MESH的材質(zhì)數量盡可能低。一般建議身體的材質(zhì)數量為2-3個(gè),當然如果你有武器的材質(zhì),也是需要單獨一個(gè)的,因為你需要換武器。
減少骨骼的數量,一般來(lái)說(shuō)游戲中的骨骼數量為15-60個(gè)。骨骼越少運行速度越快,一般來(lái)說(shuō)30塊骨骼就可以讓角色動(dòng)的很舒服了。如果你不是有特殊的設置,我們強烈建議每個(gè)角色30個(gè)骨骼。
多邊形的數量主要是看你對游戲的質(zhì)量要求,500-6000個(gè)三角面是比較推薦的。如果你的游戲場(chǎng)景中將會(huì )出現多個(gè)角色,那么就要適當的降低一下多邊形數量了。如果你想要在比較老的機器上運行,你需要更少的多邊形數量。比如,半條命2游戲的角色通常是2500-5000個(gè)三角面。達到AAA標準的次時(shí)代游戲比如像是PS3或者XBOX360上的游戲角色通常有5000-7000個(gè)三角面。
【Unity3D美工設計需要了解的知識】相關(guān)文章:
美工設計基礎知識02-26
了解模特標準知識03-20
網(wǎng)站美工設計基礎知識03-14
初學(xué)薩克斯應該了解的知識03-18
學(xué)習圍棋前需要了解03-13
淘寶美工設計都需要做什么01-09