今天
看教學做一些東西
沿任意面切除模型
Sprite shader
Hull Outline
沿任意面切除模型
Surface Shader做的,用C# 把切面傳入Shader
再用Dot Product算出計算點和切面的距離,小於0 的部分就剔除掉
最後是切面顏色,他其實不是切面,而是內部
學到幾個新東西
struct Input
float facing : VFACE;
可以取得面的方向,正(外)面 1,反(裡)面 -1
把模型裡面上自發光(Emission)就會看起來像切面了,因為看不出深度
但如果有其他物體進去就穿幫ㄌ
函式 clip ()
clip() 如果輸入的值小於0,剔除象素,就是用這個方式切模型的
後續的切面修正
Sprite Shader
本質上還是和Mesh一樣,Sprite Renderer會根據sprite自動生成Mesh
所以也就只是把圖畫上去而已,再用Blend 畫不透明
但是ZWrite 會關掉,因為Sprite renderer是雙面的
還有 render type 和 queue 都要調成 trnasparent
outline
這次是用剔除正面的方式做的,竟然可以這樣
有嘗試用深度圖做,但又失敗了
今天先醬