在unity中很多時候會用到遮罩層,如minnmap、鈕等
這裡貼上相關的shader**和注釋
shader "shaderdemo/masklayer" //目標,即需要被遮罩的
_masklayer("culling mask",2d) = "white"{}//混合的,設定為白色的,任何顏色與白色混合,其顏色不變
_cutoff("alpha cutoff",range(0,1)) = 0
}subshader //渲染佇列設定為 以從後往前的順序渲染透明物體
lighting off //關閉光照
zwrite off //關閉深度快取
blend off //關閉混合
alphatest gequal[_cutoff] //啟用alpha測試
pass//混合貼圖
//混合貼圖,previous為放置在前一串行這樣在進行alphatest的時候會以這個為主來進行混合
settexture[_maintex]} }
白色背景混合的
目標
混合後的結果,這裡的將_cutoff的值設為1後的效果
Unity高階之 Shader渲染
1.螢幕透明 計算每個頂點相關的屬性 位置,紋理座標 2.螢幕扭曲 bump map rgb當做xyz座標來用的 computegrabscreenpos tex2dproj struct vertinput struct vertoutput 計算每個頂點相關的屬性 位置,紋理座標 利用這種效果,...
Unity實驗室之Shader優化
最近有人問到寫shader需要注意哪些地方及如何優化,正好筆者也在研究這方面,這裡主要針對unity來說,其它平台或引擎也可以參考,本文主要分如下幾個方面來說 shader的選擇,屬性和狀態的設定,資料型別選擇,編寫,舉例,除錯 unity中現在可以新建4種shader,分別是standard su...
unity 調色盤之shader繪製
最近閒來無事,給自己找點麻煩,用shader做乙個調色盤,分享給大家 繪製 中心思想是通過uv座標,計算出每個象素的顏色值 左側方志顏色計算公式 i.uv.y color.r i.uv.y 1 i.uv.x 1 color.r i.uv.y color.g i.uv.y 1 i.uv.x 1 col...