五月天青色头像情侣网名,国产亚洲av片在线观看18女人,黑人巨茎大战俄罗斯美女,扒下她的小内裤打屁股

歡迎光臨散文網(wǎng) 會員登陸 & 注冊

用ShaderGraph實現(xiàn)塞爾達的導(dǎo)師消失特效

2020-08-13 23:27 作者:皮皮關(guān)做游戲  | 我要投稿

作者:Yumir

哈嘍大家好我是yumir。

為了實現(xiàn)一個小小的效果接觸了ShaderGraph之后,我又想起了塞爾達神廟里面導(dǎo)師消失的特效:

通關(guān)神廟的時候這段特效我都是不跳過的,太好看了。我試著在Unity里面模仿了一下,其實就是”溶解"+“自發(fā)光“+"粒子系統(tǒng)”的結(jié)合體,效果如下:

最終效果

一、準(zhǔn)備工作

準(zhǔn)備好一個2019.1以上版本的Unity,新建一個URP項目:

新建一個PBR Shader Graph用于制作溶解特效,新建一個Unlit Shader Graph用于制作發(fā)光的粒子效果。


二、在Shader Graph中實現(xiàn)溶解效果

這是一個非常簡單且實用的效果,Unity提供了三種不同的噪聲節(jié)點(Procedural>Noise)可以用來實現(xiàn)很多看似復(fù)雜的特效比如現(xiàn)在使用的溶解效果和水流效果,建議進一步了解。

在PBR Master點擊右上角的小齒輪,將屬性Surface選為Opaque模式,就可以利用AlphaClipThreshold進行透明度過濾,該模式下所有大于AlphaClipThreshold值的透明度都為1,否則為0。

利用這個節(jié)點以及PBRMaster上的這一特性,只需要額外兩個節(jié)點(另外兩個是貼圖節(jié)點不算)就可以實現(xiàn)一個溶解的效果。


三、在Shader Graph中實現(xiàn)邊緣發(fā)光

在上一步的基礎(chǔ)上,對滑動條輸入的數(shù)值加(Add)一個偏移量,并利用Step(In>=Edge In=1,In<Edge In=0)進行過濾,得到我們需要發(fā)光的范圍。

為了讓這個區(qū)域發(fā)光需要加上一個Color節(jié)點,將節(jié)點的Mode設(shè)置為HDR,并調(diào)整圖中框選位置的數(shù)值;

新建一個Multiply節(jié)點,將Color節(jié)點的輸出值和Step節(jié)點的輸出值分別連接到Multiply節(jié)點,再將Multiply節(jié)點的輸出值連接到PBRMaster的Emission(自發(fā)光),效果如下:


四、制作發(fā)光的粒子

顯然我們只需要引入一個HDR類型的Color屬性就可以制作出一個讓粒子發(fā)光的材質(zhì)球了,作為一個材質(zhì)球他還需要有一個貼圖屬性,將我們的HDR類型的Color與Vertex Color(粒子Inspector上設(shè)置的Color)相乘使粒子可以進行透明度的變化,內(nèi)容如下:

將材質(zhì)球拖拽到粒子上就可以得到一個發(fā)光的粒子特效,用dotween寫一個插值動畫,并在Update更新對應(yīng)的數(shù)值:

??? void Start()

??? {

??????? material = go.GetComponent<MeshRenderer>().material;

??????? dissolve = 0;

???????

??????? DOTween.To(() => dissolve, X => dissolve = X, 1.0f, 10);

??? }

??? private void Update()

??? {

??????? material.SetFloat("_Dissolve", dissolve);

??? }

?

在適當(dāng)?shù)奈恢梅胖昧W犹匦?,調(diào)整數(shù)值(底部粒子先播放、越往上延時越長),為了效果更好一點我做了一個螺旋的粒子:

就是文章前面效果圖里的效果啦,詳細數(shù)值可以下載項目查看,下次見~

鏈接:https://pan.baidu.com/share/init?surl=PaYEqw_DjloM45TuZfvRYA

提取碼:48y5



歡迎加入游戲開發(fā)群歡樂攪基:1082025059

對游戲開發(fā)感興趣的童鞋可戳這里進一步了解:levelpp.com/

用ShaderGraph實現(xiàn)塞爾達的導(dǎo)師消失特效的評論 (共 條)

分享到微博請遵守國家法律
石门县| 宝丰县| 博客| 汤原县| 会泽县| 民勤县| 尼勒克县| 股票| 武定县| 揭东县| 黄骅市| 巨鹿县| 延安市| 武夷山市| 南澳县| 抚州市| 耒阳市| 维西| 溧水县| 靖安县| 皋兰县| 栾川县| 安多县| 萨嘎县| 平度市| 高安市| 惠来县| 鄯善县| 班戈县| 尼勒克县| 阳城县| 沅陵县| 荔浦县| 石景山区| 商城县| 陇川县| 酒泉市| 拜泉县| 新营市| 富阳市| 峨山|