緊接著上一篇文章的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
如果模型的貼圖沒有縮放和偏移,則可以直接采用原生的頂點紋理坐標。
延伸閱讀
- ssh框架 2016-09-30
- 阿里移動安全 [無線安全]玩轉(zhuǎn)無線電——不安全的藍牙鎖 2017-07-26
- 消息隊列NetMQ 原理分析4-Socket、Session、Option和Pipe 2024-03-26
- Selective Search for Object Recognition 論文筆記【圖片目標分割】 2017-07-26
- 詞向量-LRWE模型-更好地識別反義詞同義詞 2017-07-26
- 從棧不平衡問題 理解 calling convention 2017-07-26
- php imagemagick 處理 圖片剪切、壓縮、合并、插入文本、背景色透明 2017-07-26
- Swift實現(xiàn)JSON轉(zhuǎn)Model - HandyJSON使用講解 2017-07-26
- 阿里移動安全 Android端惡意鎖屏勒索應用分析 2017-07-26
- 集合結(jié)合數(shù)據(jù)結(jié)構(gòu)來看看(二) 2017-07-26