本次筆記中,我們將利用unity來創建并使用材質,把材質添加到我們的Prefab中去。
這一系列教程以及素材均參考自人人素材翻譯組出品的翻譯教程《Unity游戲引擎的基礎入門視頻教程》,下載鏈接附在第二篇學習筆記中。
? ? ? 繼續上次筆記中所記錄的東西,在Project視圖中,ImportedAssets-Meshes-Materials下我們可以看到一個沒有紋理的材質球,這個材質是跟隨我們的3d Max模型來的默認材質。因為這里我們要添加自己的材質,所以我們直接把這個材質球刪除。?
刪除后,我們看到本來的Prefab顏色也發生了改變。
接下來我們在Materials文件夾下,右鍵新建一個材質(Material),命名為Stone_Floor。現在這是一個空白的材質,我們要為他選擇著色器,Unity提供了十分多樣的著色器(shader),這里我們先不做深入的討論,直接選擇Bumped Specular(凹凸高光),這是十分常用的著色器。
? ? ?Bumped Specular中可以從下往上看,BaseMap和Normal?map(基礎貼圖和法線貼圖);Shininess是反射度;Specular Color就是高光顏色;Main Color也就不需要解釋了。。
現在我們還沒有導入任何的紋理(Texture),接下來我們來導入紋理。
????? 先在ImportedAssets文件夾下面新建一個文件夾,命名為Textures,進入Textures 后,引入我們的第一個紋理。
????? 右鍵Import?-New Assets,然后進入我們的工程文件中,找到我們想要找的紋理。路徑是:Imported Assets——Textures——Floor_Tile_Diffuse.tga。
? ? ?Assets文件的下載地址為:http://pan.baidu.com/s/1bn8MSlL
引入紋理貼圖之后,選中它,將目光移到Inspector視圖上去,首先是Texture Type,材質的類型,有Texture,
Normal Map(法線貼圖)等選擇,這里我們就選擇Texture,如果你要作類似第一人稱射擊的游戲界面,
我們可以選擇GUI相關的類型。
接下來是第二個Texture,繼續右鍵,Import new Assets,將Floor_Tile_Normal_Output.tga引入。顧名思義,我們可以看得出來這個紋理是我們的法線貼圖,我們可以直接在Inspector視圖中將其Texture?Type修改為Normal Map,但Unity可以自動檢測,來為我們提供的貼圖進行訂正,所以這里我們先不修改第二個Texture的類型。
? ? ?我們先回到Materials文件夾,找到我們之前創建的那個新材質球,來為他添加貼圖。
?????方法有兩種:
?????第一種方法是選中材質球后,移動到Textures文件夾,直接把兩個材質拖動到對應位置。下面我們把基礎貼圖拖動過去。拖動之后,我們會在又下角看到這個紋理的效果。
? ? ?第二種方法是選擇Normalmap空白紋理框中的select按鈕,來選擇紋理。我們選中Floor_Tile_Normal_Output.tga,雙擊就可以導入。
這個時候,你會發現紋理有些不正常,是因為Unity現在沒有識別法線貼圖。我們看到在效果顯示圖上方,有一行小字,This texture is not marked as a normal map。正是因為我們引入的時候沒有修改紋理的類型,所以才會這樣,我們點擊Fix Now,就能夠迅速修復。
?????這個時候,回到我們導入的第二個紋理,會發現它的類型已經被訂正為Normal map。
現在,我們的材質球已經制作完成,可以將它拖動到任何我們想賦予此種材質的物體上。
這里還要說的是,我們可以調整此地板材質的分格數量,選中材質球后,Inspector視圖中,將兩個紋理貼圖的Tiling中XY均改為2,那么地面的“瓷磚”就會多一倍。應該盡量讓兩個Tiling的數值保持一致,否則有時候效果會看起來怪怪的。
?????我們可以通過下面兩個圖地面和右下角預覽的對比中觀察出來。
? 這里視頻的原作者為大家推薦了一款功能強大的紋理制作軟件叫做Substance?Designer,可以結合PS來處理十分細節的紋理圖案,我們即將導入的兩個紋理就是視頻作者使用這款軟件制作的,大家有興趣的可以自己探索一下~我現在真的還不會用。
? ? ? 我們知道如何導入紋理制作自己的材質后,我們再引入幾種材質,來將墻壁和天花板的材質也填充完畢。在Materials文件夾下,右鍵,Import New Asset,選擇工程文件Materials文件夾下的Rock.sbsar和WoodPlank.sbsar。我們會發現,Materials文件夾下會多出兩個材質球。這是石頭和木板的紋理。
????? 這里要說明一下,這兩個紋理是使用第三方插件制作,所以有一個小弊端就是,在Project視圖中無法將材質球拖動賦予給一個物體。我們需要這樣將材質賦予給一個物體。首先選中Rock.sbsar材質球,我們會在Inspector中發現有關這個材質的更多細節。我們需要拖動Inspector中間的小Rock材質球才可以將材質賦予物體。如下面第二張圖。
按照同樣的方法,將石頭材質再賦給天花板,將木板材質賦給兩邊的墻。這樣我們就已經完成了對組件材質的添加,我們選中當前Scene視圖中的組件,點擊Apply,就可以將材質變化同步到Prefab中,這樣以后添加的所有Prefab都會帶有紋理。
至此,我們已經可以自己為物體添加材質了。
? ? ?2015.2.28? ? ?19:42
? ? ?By Mr.Losers