溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點(diǎn)擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

Unity中ShaderGraph怎么實(shí)現(xiàn)旋渦傳送門效果

發(fā)布時(shí)間:2021-07-10 16:03:04 來源:億速云 閱讀:179 作者:chen 欄目:開發(fā)技術(shù)

本篇內(nèi)容主要講解“Unity中ShaderGraph怎么實(shí)現(xiàn)旋渦傳送門效果”,感興趣的朋友不妨來看看。本文介紹的方法操作簡單快捷,實(shí)用性強(qiáng)。下面就讓小編來帶大家學(xué)習(xí)“Unity中ShaderGraph怎么實(shí)現(xiàn)旋渦傳送門效果”吧!


一,最終效果展示

老規(guī)矩,直接上效果圖:

Unity中ShaderGraph怎么實(shí)現(xiàn)旋渦傳送門效果

二,創(chuàng)建PBRGraph

在Project面板右鍵 --> Create --> Shader --> PBRGraph:

Unity中ShaderGraph怎么實(shí)現(xiàn)旋渦傳送門效果

重命名:RPAShaderGraph(隨意)

Unity中ShaderGraph怎么實(shí)現(xiàn)旋渦傳送門效果

雙擊RPAShaderGraph打開編輯界面

Unity中ShaderGraph怎么實(shí)現(xiàn)旋渦傳送門效果


三,實(shí)現(xiàn)原理介紹

通過Twirl 旋轉(zhuǎn)節(jié)點(diǎn)對Gradient Noise 梯度噪聲節(jié)點(diǎn)進(jìn)行操作,就可得到一個旋轉(zhuǎn)的旋渦效果。

Unity中ShaderGraph怎么實(shí)現(xiàn)旋渦傳送門效果

然后我們添加時(shí)間節(jié)點(diǎn)調(diào)整Twir的偏移量,讓其自動轉(zhuǎn)起來,這個動態(tài)的旋渦效果基本就實(shí)現(xiàn)了。

Unity中ShaderGraph怎么實(shí)現(xiàn)旋渦傳送門效果


四,完整效果實(shí)現(xiàn)

就接著三種的效果,繼續(xù)說吧:
在“PBRGraph”面板空白處 右鍵 --> 選擇“Create Note” 創(chuàng)建Twirl(直接搜索名字即可)。
同理創(chuàng)建“Gradient Noise” 和 “Time” 節(jié)點(diǎn),然后將其輸入輸出連接如下圖:

Unity中ShaderGraph怎么實(shí)現(xiàn)旋渦傳送門效果

現(xiàn)在我們已經(jīng)有了一個動態(tài)的旋渦,在一中的效果圖上我們可以看到,它并不是黑白色的,下面修改一下顏色:

創(chuàng)建“Color”顏色節(jié)點(diǎn) 和 “Multiply”乘法節(jié)點(diǎn),我們將“Gradient Noise”節(jié)點(diǎn)的輸出 和 “Color”顏色節(jié)點(diǎn)的輸出都連接到“Multiply”乘法節(jié)點(diǎn)的輸入上:

Unity中ShaderGraph怎么實(shí)現(xiàn)旋渦傳送門效果

然后修改下“Color”節(jié)點(diǎn)的顏色,就可以得到一個其他顏色的旋渦了:

Unity中ShaderGraph怎么實(shí)現(xiàn)旋渦傳送門效果

接下來,將帶有顏色旋渦的“Multiply”乘法節(jié)點(diǎn)輸出,連接到”PBR Master”主節(jié)點(diǎn)的Albode輸入上,即可在預(yù)覽圖上看到旋渦的效果上了:

Unity中ShaderGraph怎么實(shí)現(xiàn)旋渦傳送門效果

現(xiàn)在預(yù)覽效果上顯示的是一個正方形的,這個樣子看起來有點(diǎn)丑奧~ 而且和想要的效果也不一致,那怎么辦呢?
添加一個圓形的遮罩不就行了:添加“Ellipse” 圓形節(jié)點(diǎn),將其輸入節(jié)點(diǎn)的寬高調(diào)整為0.8,然后將輸出節(jié)點(diǎn),連接到”PBR Master”主節(jié)點(diǎn)的Alpha輸入上:

Unity中ShaderGraph怎么實(shí)現(xiàn)旋渦傳送門效果

然后在點(diǎn)擊Master 主節(jié)點(diǎn)的“設(shè)置”按鈕,將“Surface”屬性設(shè)置為“Transparent” 透明的,即可得到被遮罩的效果了:

Unity中ShaderGraph怎么實(shí)現(xiàn)旋渦傳送門效果

其實(shí)這時(shí)的旋渦效果以及完成了,下面我們添加兩個變量,來對旋轉(zhuǎn)時(shí)間和旋渦的大小進(jìn)行控制,這樣我們就可以在材質(zhì)球上進(jìn)行數(shù)值修改,從而方便的得到想要的效果。

在“Blackboard” 上創(chuàng)建一個“Verctor1”的變量,將其拖拽到空白處,并賦值給“Twirl”的“Strength”輸入,操作步驟如下:

Unity中ShaderGraph怎么實(shí)現(xiàn)旋渦傳送門效果

同理我們在創(chuàng)建一個“Verctor1”變量,然后創(chuàng)建一個“Multiply” 乘法節(jié)點(diǎn),將其“Time”和"V1"相乘后,輸出給“Twirl”的“Offset”輸入:

Unity中ShaderGraph怎么實(shí)現(xiàn)旋渦傳送門效果

至此全部制作就完成了,完整RPA Graph如下:

Unity中ShaderGraph怎么實(shí)現(xiàn)旋渦傳送門效果

PS:注意需要將主節(jié)點(diǎn)的“Surface”屬性設(shè)置為“Transparent”透明的,上圖并沒有體現(xiàn)出來哦~


五,應(yīng)用到場景中

在“RPA Graph” 編輯界面右上角,點(diǎn)擊“Save Asset” 保存一下。然后創(chuàng)建材質(zhì)球,將其材質(zhì)選定為剛剛保存的這個“RPAShaderGraph”。

這里提供一個快捷創(chuàng)建材質(zhì)球的方法,鼠標(biāo)選中我們保存的“RPAShaderGraph”文件,然后右鍵創(chuàng)建材質(zhì)球,這樣我們創(chuàng)建出來的材質(zhì)球,就自動使用這個Shader了。

Unity中ShaderGraph怎么實(shí)現(xiàn)旋渦傳送門效果

最后一步,創(chuàng)建“Plane”將其材質(zhì)賦值為上面創(chuàng)建的材質(zhì)球,可以得到最終效果,這時(shí)我們可以編輯之前設(shè)置好的“Streght”和“Time”屬性的值,就可以直接調(diào)節(jié)想要的效果了:

Unity中ShaderGraph怎么實(shí)現(xiàn)旋渦傳送門效果

到此,相信大家對“Unity中ShaderGraph怎么實(shí)現(xiàn)旋渦傳送門效果”有了更深的了解,不妨來實(shí)際操作一番吧!這里是億速云網(wǎng)站,更多相關(guān)內(nèi)容可以進(jìn)入相關(guān)頻道進(jìn)行查詢,關(guān)注我們,繼續(xù)學(xué)習(xí)!

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI