Unity Visual Effect Graph小筆記

Kiloyd
講座隨筆 & 實作觀察日記
3 min readNov 17, 2018

本篇是Unity技術講座─天使之城篇(2018/11/16)之筆記,特別針對Visual Effect Graph方面整理並簡單實作。如果有任何錯誤歡迎在留言區指正!

概觀

Visual Effect Graph一覽

圖中右邊的節點即為VFX Graph的工作區,整體運作的順序是由上而下堆疊,左右橫向可以使用額外的節點來改變特效中的屬性。

和原先的Particle System比較:
Particle System:使用CPU運算,適合簡單的運算,或是需要物理、碰撞的相關處理。
VFX:使用GPU繪製,能夠產生大量且複雜的特效,適合呈現流體、高密度之特效。

Capacity = 100000 with Gravity

結構

在Graph中分成Node(節點)和Block(區塊),上圖中為Node的有Spawn和Initialize,Block則包含於Node之中,如Initialize中的Set Velocity Random

一般的VFX Graph包含基礎的4個節點:
1. Spawn:主要控制生成速率
2. Initialize:類似於MonoBehavior中的Start,
3. Update:同MonoBehavior中的Update,每禎執行內含的Block的功能
4. Output:輸出前經過的Node,為結果進行最後調整。
※Update內可以為空

Block則類似在Particle System中的Emission、Color、lifetime等選項都能在Node裡呼叫,在Node中按右鍵就能新增。

右側Inspector可以顯示參數,中間的blackboard “test”內可以自行設定參數

參數部分,點擊Node便能夠在Inspector中看到名稱、類別以及byte,方便觀察以及進行優化,另外於Graph視窗左上角點擊Blackboard(紅圈處)就能夠在當中添加自訂參數,完成後直接拖拉便能夠在Graph中拉線使用、或提供外部腳本參考、調用,下拉選項中的exposed打勾就能夠在Inspector中直接調整。

Exposed打勾後便在Inspector中顯示

小結

目前的Visual Effect Graph仍舊是Beta版,偶爾會發生crash,Kelvin也提到可以使用Binder將特效與Mesh或Pointer cache綁定,再過一陣子也可能會舉辦相關的WorkShop,有興趣的同好可以再多多注意Unity Taiwan的消息囉!

--

--