緊接著上一篇文章的shader入門知識的總結(jié),本文主要總結(jié)shader中的紋理貼圖、透明度混合、頂點動畫、后期特效處理等操作。如果有什么地方有錯,請指出更正,謝謝。本文的代碼主要來自開源書:unity入門精要

一、Unity shader中的紋理

  1、簡單紋理  

      在unity shader中,紋理的主要作用是用來給模型貼上一個外表,這樣得到的模型顏色就具有紋理的顏色混合。在常見的一些shader上,都會有一個_MainTex的選項,這就是我們常常用的主紋理貼圖。對于紋理貼圖,其對應的需要有紋理坐標。在應用階段,unity就會將模型的紋理坐標進行整理,存儲在語義為TEXCOORD的語義中,通常我們會在shader中定義應用階段到頂點計算階段的結(jié)構(gòu)體:

struct a2v{
     vertex:POSITION;  
     texcoord:TEXCOORD;  
}

  其中的texcoord就是紋理坐標,注意這是模型上頂點的原始紋理坐標,還需要在頂點著色器上進行坐標轉(zhuǎn)換操作:

TRANSFORM_TEX(i.texcoord,_MainTex)  =  i.texcoord.xy * _MainTex.Scale + _MainTex.Offset

  如果模型的貼圖沒有縮放和偏移,則可以直接采用原生的頂點紋理坐標。

延伸閱讀

學習是年輕人改變自己的最好方式-Java培訓,做最負責任的教育,學習改變命運,軟件學習,再就業(yè),大學生如何就業(yè),幫大學生找到好工作,lphotoshop培訓,電腦培訓,電腦維修培訓,移動軟件開發(fā)培訓,網(wǎng)站設(shè)計培訓,網(wǎng)站建設(shè)培訓學習是年輕人改變自己的最好方式