shader 例子學習

2022-09-14 03:42:10 字數 704 閱讀 9725

struct

su***ceoutput ;

background - 最早被呼叫的渲染,用來渲染天空盒或者背景

geometry - 這是預設值,用來渲染非透明物體(普通情況下,場景中的絕大多數物體應該是非透明的)

alphatest - 用來渲染經過alpha test的畫素,單獨為alphatest設定乙個queue是出於對效率的考慮

transparent - 以從後往前的順序渲染透明物體

overlay - 用來渲染疊加的效果,是渲染的最後階段(比如鏡頭光暈等特效)

1:第乙個例項

shader "custom/test" 

cgprogram

#pragma su***ce surf lambert

struct input ;

void surf (input in, inout su***ceoutput o)

endcg

} fallback "diffuse"

}

在表面著色器中讓輸出的rgb = 1(白色)

可以看到身體部分使用了剛剛寫的shader,可以改變輸出的值來顯示不同的顏色。這是乙個最簡單的例子。

Shader簡單例子之溶解

shader custom s2 cankaotex 單通道的圖 2d white 這張圖呢 試驗的話 隨便找個 只有r通道 的即可.當然可可以只有b,也可以不僅僅有r通道,只是去這張圖的r值進行是否溶解的乙個判斷標準 寫漢字只是為了更好理解.rongjietime 完全溶解所需時間 second ...

Shader學習整理

好久沒寫部落格了,研究了一段時間shader,整理一下 unity的shader包含三種,固定渲染管線,cg片段,su ce表面著色器,unity推薦su ce表面著色器,寫起來簡單,很多東西unity都做好了,實際中往往看具體需求而定,一般選cg片段和su ce表面著色器。然而不管怎麼說,基礎理論...

Shader學習筆記

direct和opengl兩種程式設計標準,前者是微軟提供的,一般用於windows平台,而後者是linux android ios等都共同支援的標準。由這兩種標準就衍生出來了集中gpu程式語言,諸如hlsl cg glsl等,在unity裡面,並不直接使用者三種語言去編寫,而是用自己自定義的sha...