在Unity中使用Shader


1、Material 和 Shader 的關系。一個材質包括一個Shader程序。在Shader中設置的屬性能夠通過Material可視化設置


2、內建Shader,5.0之后的版本號中大部分舊的Shader都集成在了Standard Shader中了,能夠通過設置Standard Shader的屬性達到不同的須要的渲染效果。

 

Albedo:反光率

Specular:鏡面反射

Smoothness:鏡面反射的光滑度

NormalMap:法線貼圖

為什么叫法線貼圖。我們知道法線(Normal)是垂直於一個面的直線。通過計算光線與這條法線的角度就能夠知道與面的角度。進而能夠計算出面應得到的顏色值。如果我們知道物體每一個面的法線就能實現對這個物體進行光照渲染。可是一堵牆或許僅僅有四個頂點,也就是僅僅有一個面,它終於的渲染效果將會非常單一。如果這堵牆上有很多其它的磚的凹凸痕跡。我們增樣實現僅用四個頂點渲染出立體感非常強,細節層次感非常強的這堵牆呢。使使用方法線貼圖。 在法線貼圖技術中,我們就是通過把牆面的每一個像素的法線存儲在一張紋理中,渲染的時候依據每一個像素的法線確定他們的陰暗程度,而這張法線貼圖是能夠用photoshop軟件從一張牆的紋理生成相應的法線貼圖的。到此,熟悉法線貼圖的朋友會對以上內容非常熟悉的。

HeightMap:高度圖

Occlusion:貼圖吸收

加入一個貼圖之后設置吸收的系數

Emission:自發光貼圖和顏色

 

 

 

3、創建自己定義Shader程序

l 創建一個Material

l 創建自己定義的Shader程序

l 為Material指定Shader程序(依據Shader文件內定義的名稱查找)

l 將Material指定給GameObject查看效果

 

 

 

 

4、Shader程序的語法和規則

http://blog.csdn.net/zh13544539220/article/details/46925009


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM