之前做了乙個爆散的效果,那是利用已有頂點的偏移來實現。今天做的增厚效果則是將已有的頂點複製出來乙個,然後沿法線方向偏移,形成雙層結構,讓最終繪製出來的影象有一定的厚度。
**:
shader "myshader/ss_14"
_mask("mask", 2d) = ""{}
} subshader
; struct v2f
;float3 twist(float3 p, float3 center, float power)
float s = sin(power*t);
float c = cos(power*t);
float3x3 m = float3x3(
c, -s, 0,
s, c, 0,
0, 0, 1
);return mul(m, p - center);
}#define add_vert(v,_uv) \
o.vertex = unityobjecttoclippos(v);\
o.uv=_uv;\
#define add_tri(p0, p1, p2,uv0,uv1,uv2) \
add_vert(p0,uv0) \
add_vert(p1,uv1) \
add_vert(p2,uv2) \
tristream.restartstrip();
[maxvertexcount(30)]
void geom(******** v2f v[3], inout ********streamtristream)
fixed4 frag(v2f i) : sv_target
endcg
pass}}
本來準備用一張額外的圖來實現不同的厚度,但是沒成功,就做了乙個旋轉效果。
返回目錄:
一日一Shader 水面折射 SG 17
今天回看昨天做的折射的效果,發現我想的太狹隘了,我完全是按球體的光學原理來實現,所以用其他形狀的透鏡時,效果就是錯誤的。想了想,不規則透鏡的折射效果更多的是一種模擬。不過,我還是想嘗試實現波紋水面的折射效果,因為只用考慮乙個面,所以光學模型還是比較容易構建的。將上圖中的光線原理轉換為幾何問題 已知向...
一日一結2012 5 2
今天去圖書館把作業系統概念借到了,期待很久,欣喜萬分。專業知識部分 今天主要學習了一下mfc六大關鍵技術,感覺講得不錯。主要的例子是以基於文件類的程式,感覺學到了東西。以前看孫新老師的書時是有點半知不解,看了這個資料讓我對mfc程式的內部有了更深一層的理解。課外知識部分 看完10000小時code ...
一日一結2012 5 6
今天天氣很熱,感覺已經進入夏天。看了galaxy 3 效能評測,不錯。專業知識部分 今天看了作業系統概念的虛擬記憶體,了解了虛擬記憶體的概念和原理,虛擬記憶體這種記憶體管理技術允許執行程序不必完全在記憶體中。而且,虛擬記憶體將記憶體抽象成乙個巨大的 統一的儲存陣列,進而將使用者看到的邏輯記憶體和物理...