Unity 遊戲開發技巧集錦之材質的應用的建立反射材質

Unity 遊戲開發技巧集錦之材質的應用的建立反射材質

Unity中材質的應用

遊戲中,大多數材質的應用都離不開紋理,而紋理自己是圖片。因此,在學習本章時,最好在電腦上安裝一個能夠編輯圖片的功能強大的軟件,如PhotoshopGIMP。本章使用的是前者。另外,有些紋理須要包含Transparents通道,因此圖片最好保存成能夠存儲相應信息的格式,例如,PSDTGAapp

unity中建立反射材質

生活中,反射材質(reflective material)的實例有不少。例如,水面、光滑的金屬、鏡子等物體均可以反射其它的物體,如水中的倒影、鏡子裏的人物,如圖3-1所示。學習

3-1  圖中的金屬球,以及反射出的周圍環境spa

Unity裏,能夠模仿出這種反射效果。只要使用具備反射特性的着色器,而後再稍作配置便可。具體的操做過程以下:orm

1)準備兩張紋理圖,其中一張紋理圖須要包含透明信息,也就是有Alpha通道,而後導入到項目中。本節使用的兩張紋理,如圖3-2所示。對象

3-2  導入兩張紋理圖遊戲

2)選中不包含透明信息的紋理,而後在Inspector視圖裏,作以下修改:圖片

  • q  設置Texture Type屬性爲Reflection遊戲開發

  • q  設置Mapping屬性爲Cylindrical開發

而後單擊Apply按鈕。如此設置,說明了此紋理將被用作圓柱體的反射圖。對紋理的設置以及設置後的紋理如圖3-3所示。it

3-3  Inspector視圖對紋理的設置以及設置後的紋理

3)在Project視圖裏,建立一個材質,並命名爲Mat_reflect,選中它而後在Inspector視圖作以下設置:

  • q  設置Shader(着色器)屬性爲Reflective/Specular

  • q  設置Base(RGB) Gloss(A)爲包含透明信息的紋理;

  • q  設置Reflection Cubemap爲普通紋理;

如圖3-4所示。           

3-4  Inspector視圖裏                      3-5  Scene視圖裏的Cylinder對象

4)在Hierarchy視圖裏,添加Cylinder對象。在Scene視圖裏看到的Cylinder如圖3-5所示。它此時沒有反射出周圍的任何物體。

5)拖動Mat_reflect材質到Cylinder對象上,如圖3-6所示,效果就大不相同,它即顯示出了自己的顏色,又反射出了周圍的物體。

提示:紋理含有的透明信息,越透明所反射的物體所成的像越清晰。圖3-7,調低透明度之後,反射的圖像暗了,清晰度也降低了。

3-6  正在反射出周圍物體的Cylinder對象            3-7  調低透明度之後,反射成像的效果

本文選自:Unity 遊戲開發技巧集錦大學霸內部資料,轉載請註明出處,尊重技術尊重IT人!

相關文章
相關標籤/搜索