最美情侣中文字幕电影,在线麻豆精品传媒,在线网站高清黄,久久黄色视频

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

MMD聯(lián)動Unity學(xué)習(xí)筆記 Vol.23 ShaderGraph漩渦實(shí)例

2019-06-07 14:46 作者:NXL2  | 我要投稿

前言

????本期繼續(xù)ShaderGraph主題。這次的筆記內(nèi)容來自狗子大神的視頻《漩渦消失與出現(xiàn)效果》。如果有不明白的地方可以去看下面視頻。

具體操作

????這里我們不再對場景和其它效果進(jìn)行贅述,我們只研究物件的Shader是如何實(shí)現(xiàn)的,下面我們直接進(jìn)入正題。

????首先我們創(chuàng)建一個新的Shader,還是選擇PBR Shaer,命名為Twist,打開ShaderGraph編輯器。我們要做的事情是讓它邊緣發(fā)光,使用FresnelEffect節(jié)點(diǎn),然后混合一個顏色節(jié)點(diǎn),選擇HDR,選擇一個顏色,加一個Multiply,讓它混合一下。連接到主節(jié)點(diǎn)的Emission端口。修改一下FresnelEffect的Power值為3。

????接著我們加入一個SampleTexture2D節(jié)點(diǎn),再傳入一個貼圖,在黑板創(chuàng)建一個貼圖變量,命名為Albedo。將它們連接起來,輸出到主節(jié)點(diǎn)Albedo端口。先保存一下。

????我們回到場景中,將物件的材質(zhì)設(shè)置為新建的Shader,來看一下效果。

????下面我們來做漩渦的動畫,首先我們要獲取它在屏幕中的位置,添加一個Position節(jié)點(diǎn),空間設(shè)置為世界即可。還需要把它變換一下,添加一個Twirl節(jié)點(diǎn),將位置節(jié)點(diǎn)連接到Twirl的UV端口,讓它變成黑洞的效果,我們要控制它的強(qiáng)度和中心點(diǎn)的位置。

????我們在黑板再加兩個變量,一個是Vector2,一個是Vector1,分別命名為CenterPos和Strength,將它們分別連接到Center和Strength端口,我們想讓它在中心是話CenterPos就是0,0。它的強(qiáng)度設(shè)置為15,強(qiáng)度越大它旋轉(zhuǎn)的越夸張。

????下面我們再給它添加一張噪音貼圖,添加SimpleNoise節(jié)點(diǎn),我們將Twirl節(jié)點(diǎn)的Out端口連接到噪音貼圖的UV端口,再調(diào)整噪音貼圖的Scale值,讓它變成我們想要的效果,我們也通過一個變量來控制它,在黑板中添加一個Vector1,命名為NoiseScale,我們先將默認(rèn)值設(shè)置為10。

????現(xiàn)在我們再增加一個動畫的效果,我們添加一個Step節(jié)點(diǎn),它的作用就是將噪音貼圖的輸出進(jìn)行處理,當(dāng)In的值高于Edge值時,它就進(jìn)行輸出。

????我們來創(chuàng)建一個變量來控制它的輸出,在黑板中創(chuàng)建一個Vector1,命名為Desolve,將它拖給Edge端口,我們可以看到我們改變Desolve值時,輸出產(chǎn)生的明顯的變化。

????最后我們將Step的輸出端口連接到主節(jié)點(diǎn)的AlphaClipThreshold端口上。我們再將Alpha設(shè)置為0.5。我們保存一下,看下效果。

????我們回到物件的檢查器可以調(diào)整暴露出來的變量,來達(dá)到我們想要的效果。我們調(diào)節(jié)CenterPos的x和y值可以調(diào)整旋渦的中心位置。

????下面我們使用Time的方法來實(shí)現(xiàn)自動播放的動畫,我們將Desovle的連接先取消掉。如果我們需要自己來改變它的消失效果時,我們可以再將它連接起來。這時我們想要實(shí)現(xiàn)自動播放的效果,我們就要用Time節(jié)點(diǎn),將Time節(jié)點(diǎn)的Sine Time端口連接到Step節(jié)點(diǎn)的Edge端口,這樣的話,它的值就會一直在0和1之間重復(fù)。

我們回到場景中播放,可以看到物件不斷地消失和顯現(xiàn)。

我把小電視換成猴子了,-w-


最終節(jié)點(diǎn)圖

總結(jié)

????這個案例我們的著色器按效果共分為三個部分:

  1. 通過一個基本紋理作為其基礎(chǔ)效果。

  2. 邊緣高光,通過一個菲涅爾節(jié)點(diǎn)和顏色相乘賦給自發(fā)光。

  3. 隨時間的扭曲和剔除,通過Step階梯點(diǎn)和Twirl扭曲節(jié)點(diǎn)實(shí)現(xiàn),Noise節(jié)點(diǎn)輔助產(chǎn)生扭曲條紋狀效果。

節(jié)點(diǎn)說明?

  • Fresnel 菲涅爾反射,簡單來說就是表面與視角越是平行,則高光效果越明顯

  • Step 如果輸入In大于等于輸入Edge,返回1,否則返回0

  • Twirl 將類似于黑洞的旋轉(zhuǎn)扭曲效果應(yīng)用于輸入的UV。扭曲效果的中心參考點(diǎn)由輸入?yún)?shù)Center決定,效果的整體強(qiáng)度由輸入?yún)?shù)Strength決定。輸入Offset可用于偏移結(jié)果的各個通道。

  • Position 獲取mesh的頂點(diǎn)或片段的位置??蛇x的空間有Object, View, World, Tangent。(我們使用該位置為世界坐標(biāo)下的位置,作為Twirl的中心點(diǎn)位置)

  • Time 可以獲取Unity中的時間值。

????最后感謝狗子大神的分享,emmm



MMD聯(lián)動Unity學(xué)習(xí)筆記 Vol.23 ShaderGraph漩渦實(shí)例的評論 (共 條)

分享到微博請遵守國家法律
岫岩| 阳江市| 鸡西市| 巴里| 泾川县| 呼伦贝尔市| 巴彦县| 武汉市| 巴林右旗| 廊坊市| 南阳市| 克山县| 宜良县| 银川市| 雅江县| 淳化县| 沙湾县| 界首市| 四会市| 阿合奇县| 通辽市| 渭南市| 磴口县| 南岸区| 集安市| 敦煌市| 桃江县| 电白县| 井研县| 临高县| 琼中| 濉溪县| 芒康县| 石楼县| 西青区| 西安市| 凤凰县| 伊金霍洛旗| 石泉县| 丹阳市| 宝应县|