Shaderlab的基本結構

2021-07-27 09:10:47 字數 637 閱讀 7959

shaderlab 不區分大小寫,properties中不能加分號

shader  "name"

_secondtex("secondtex", 2d) = ""{}

subshader

tags

pass

blend srcalpha oneminussrcalpha

properties中 :_maincolor("maincolor", color) = (1,1,1,1)

_maincolor : 在subshader中再次宣告,可以在cg**塊中當作屬性使用

maincolor :在unity面板上可視的

color :表示這個屬性的型別

"="後面的表示這個屬性的預設值

subshader(演算法) :

為gpu渲染所編寫的片段,必須至少有乙個subshader,可以有多個。gpu只會在同一時刻呼叫乙個subshader,編寫的多個subshader,依次每乙個都會比之前的有所簡化,運算指令要少。目的是當遇到更好的硬體時,那麼它會選擇第乙個subshader去完美呈現我們需要的完美的演算法。

fallback :

如果我們編寫的shader沒有乙個能被當前的硬體執行,回滾到指定著色器,一般是unity內建的shader

動態草地的Shaderlab實現方法

最近遊戲 對馬島之魂 發售了。其中的草地特動效十分先進 來自網路 於是我也萌生了寫乙個動態草地的shader 現如今的許多手遊甚至端遊的草地考慮到硬體消耗,常常把草做成星形或者廣告牌草地 來自網路 但是這樣的草地很容易露出破綻,效果也不是特別好,於是這裡我讓每根草都擁有單獨的模型。實際上更好的方法是...

UML的基本結構

通過對uml的學習,整理出了上面這幅uml概要結構圖,主要是uml事物,uml關係和uml圖,還有很多規格說明 符號,修飾,擴充套件機制等等元素沒有體現,其實,圖中的三大塊加上那麼多邊邊角角的元素,高度濃縮概括起來,可以把uml這門課的主要內容描述為 在軟體生命週期中,準確地把 uml事物和uml關...

類的基本結構

今天早上看了一本資料結構的書關於類和動態儲存的章節。書裡面大概地舉了幾個關於在乙個類裡面動態申請記憶體的例子。我由此想到就算是乙個一般的類也應該具備一定的基本結構,而並不不是乙個類頭 幾個資料成員和成員函式就可以作為乙個類 安全 地使用。我們先看一些例子。以前,我看到過有很多人這樣寫乙個類 clas...