屏幕特效算法記錄

記錄下我所看到的屏幕特效的各種算法。

1.水紋特效

水紋特效主要就是挪移UV吊履,借助sin cos來實現(xiàn)

        half2 t = i.uv;
        t.x += sin(_Time.y + t.x * A) * B;
        t.y += cos(_Time.y  + t.y * A) * B;
        return tex2D(_MainTex, t);

A:控制周期不跟,表現(xiàn)為水紋的疏密
B:控制大小,表現(xiàn)為水紋的大小
Time.y:控制函數(shù)X軸向挪動锻煌,表現(xiàn)為水紋蠕動速率。


水紋效果

2.徑向模糊

徑向模糊同樣是移動UV姻蚓,有幾次徑向就需要在原來的顏色上移動幾次宋梧。

        half2 uvDistance = i.uv - uvCenter;
        half4 color = half4(0.0, 0.0, 0.0, 0.0);
        half scale;
        for (int i = 0; i < count; i ++)
        {
            scale = 1.0 + amount * (i / count);
            color += tex2D(_MainTex, half4(uvDistance * scale + uvCenter, 0.0, 0.0));
        }
        
        color /= count;
        return color;

uvCenter:就是需要徑向的UV中心
count:需要徑向的次數(shù)
amount :控制UV挪動距離
scale = 1.0 + amount * (i / count):這里的加號代表向內(nèi)徑向,如果換成減號就是向外
color /= count:由于前面累加了count次顏色狰挡,所以需要稀釋顏色捂龄。


徑向模糊

3.四周泛黑遮罩——類型1

同樣也是通過設(shè)置UV,來得到一個數(shù)值加叁,根據(jù)這個數(shù)值去影響未改變UV對于讀取紋理的顏色輸出

                half2 uv = i.uv * i.uv - i.uv;
                half v = saturate(uv.x * uv.y * A + B);
                return v * tex2D(_MainTex, i.uv);

A:精細化修改遮罩范圍
B:大范圍修改遮罩范圍
i.uv * i.uv - i.uv; uv.x * uv.y:這部操作其實是得到一條逐漸遞增的曲線倦沧,用于控制黑罩范圍。


效果

4.電影黑框式特效

同樣也是通過UV的Y軸的長度進行比較它匕,最近來劃定黑邊范圍展融。

1.首先我們需要在外部獲取屏幕的長寬,以及控制黑邊的范圍超凳。

            float w = (float)source.width;
            float h = (float)source.height;
            float currentAspect = w / h;
            float offset = 0f;

            Material.SetColor("_FillColor", FillColor);

            if (currentAspect < Aspect)
            {
                offset = (h - w / Aspect) * 0.5f / h;
            }
            Material.SetVector("_Offsets", new Vector2(offset, 1f - offset));

FillColor:上下邊框的顏色
Aspect:是我們的控制數(shù)值愈污,只要我們的Aspect大于W/h就進入下面的邏輯
offset = (h - w / Aspect) * 0.5f / h:這句話的意思是獲取下面那條黑邊的UV高度。
1f - offset:就是上面那條黑邊的UV高度轮傍。

            half4 color = tex2D(_MainTex, i.uv);
            half cond = saturate(step(i.uv.y, _Offsets.x) + step(_Offsets.y, i.uv.y));
            color.rgb = lerp(color.rgb, _FillColor.rgb, cond * _FillColor.a);
            return color;

step(i.uv.y, _Offsets.x):如果屏幕UV.y<= 下班那條黑邊的高度暂雹, 就返回1 否則返回0
step(_Offsets.y, i.uv.y):如果屏幕UV.Y>上面那條黑邊的高度,就返回1 否則返回0
lerp(color.rgb, _FillColor.rgb, cond * _FillColor.a):如果cond 為1就是黑色创夜,如果是0就是原先的顏色杭跪。


效果
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市驰吓,隨后出現(xiàn)的幾起案子涧尿,更是在濱河造成了極大的恐慌,老刑警劉巖檬贰,帶你破解...
    沈念sama閱讀 212,884評論 6 492
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件姑廉,死亡現(xiàn)場離奇詭異,居然都是意外死亡翁涤,警方通過查閱死者的電腦和手機桥言,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 90,755評論 3 385
  • 文/潘曉璐 我一進店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來葵礼,“玉大人号阿,你說我怎么就攤上這事≡Х郏” “怎么了扔涧?”我有些...
    開封第一講書人閱讀 158,369評論 0 348
  • 文/不壞的土叔 我叫張陵,是天一觀的道長。 經(jīng)常有香客問我枯夜,道長弯汰,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 56,799評論 1 285
  • 正文 為了忘掉前任卤档,我火速辦了婚禮蝙泼,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘劝枣。我一直安慰自己汤踏,他們只是感情好,可當(dāng)我...
    茶點故事閱讀 65,910評論 6 386
  • 文/花漫 我一把揭開白布舔腾。 她就那樣靜靜地躺著溪胶,像睡著了一般。 火紅的嫁衣襯著肌膚如雪稳诚。 梳的紋絲不亂的頭發(fā)上哗脖,一...
    開封第一講書人閱讀 50,096評論 1 291
  • 那天,我揣著相機與錄音扳还,去河邊找鬼才避。 笑死,一個胖子當(dāng)著我的面吹牛氨距,可吹牛的內(nèi)容都是我干的桑逝。 我是一名探鬼主播,決...
    沈念sama閱讀 39,159評論 3 411
  • 文/蒼蘭香墨 我猛地睜開眼俏让,長吁一口氣:“原來是場噩夢啊……” “哼楞遏!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起首昔,我...
    開封第一講書人閱讀 37,917評論 0 268
  • 序言:老撾萬榮一對情侶失蹤寡喝,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后勒奇,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體预鬓,經(jīng)...
    沈念sama閱讀 44,360評論 1 303
  • 正文 獨居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 36,673評論 2 327
  • 正文 我和宋清朗相戀三年赊颠,在試婚紗的時候發(fā)現(xiàn)自己被綠了格二。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點故事閱讀 38,814評論 1 341
  • 序言:一個原本活蹦亂跳的男人離奇死亡巨税,死狀恐怖蟋定,靈堂內(nèi)的尸體忽然破棺而出粉臊,到底是詐尸還是另有隱情草添,我是刑警寧澤,帶...
    沈念sama閱讀 34,509評論 4 334
  • 正文 年R本政府宣布扼仲,位于F島的核電站远寸,受9級特大地震影響抄淑,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜驰后,卻給世界環(huán)境...
    茶點故事閱讀 40,156評論 3 317
  • 文/蒙蒙 一肆资、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧灶芝,春花似錦郑原、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,882評論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至女器,卻和暖如春酸役,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背驾胆。 一陣腳步聲響...
    開封第一講書人閱讀 32,123評論 1 267
  • 我被黑心中介騙來泰國打工涣澡, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人丧诺。 一個月前我還...
    沈念sama閱讀 46,641評論 2 362
  • 正文 我出身青樓入桂,卻偏偏與公主長得像,于是被迫代替她去往敵國和親锅必。 傳聞我的和親對象是個殘疾皇子事格,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 43,728評論 2 351

推薦閱讀更多精彩內(nèi)容