愛鋒貝

 找回密碼
 立即注冊

只需一步,快速開始

扫一扫,极速登录

查看: 735|回復: 7
打印 上一主題 下一主題
收起左側

UE4 2.5D Niagara Dash VFX

[復制鏈接]

1423

主題

1507

帖子

5891

積分

Rank: 8Rank: 8

跳轉到指定樓層
樓主
發(fā)表于 2022-1-18 18:22:17 | 只看該作者 回帖獎勵 |倒序瀏覽 |閱讀模式

一鍵注冊,加入手機圈

您需要 登錄 才可以下載或查看,沒有帳號?立即注冊   

x
大家好,這里是Wild Wolf,距離上次更新快有半年時間了~~~
其實攢了很多內容想寫,但是因為項目保密的關系不能寫~~不然就翻車了。。。
參與獨立游戲研發(fā)接近半年了,前期準備階段就在嘗試去實現(xiàn)和解決各種腦海里想要實現(xiàn)的功能和效果,所以
本人作為一名TA幾乎參與了一款游戲開發(fā)所有模塊的工作,包括程序,動畫,材質,場景優(yōu)化,特效以及工具等等,小團隊就這樣,身兼多職~~~
然后某一天主程序(連策劃都沒有,程序自己當策劃  hhhhh -.-)說需要制作一個人物沖刺的特效,行,按照慣例先看看某tube或者B站有木有類似的效果,然后自己仿一個出來,這年頭沒有誰做特效從0開始的吧- -    都是東拼西湊完事~~~    然后問題就來了,因為做的獨立游戲是橫板2.5D,網上的效果以3D居多,看了一圈下來居然能參考的所剩無幾,有一個看上去感覺還行的但是制作方式有很大限制~~~   



通過材質偏移實現(xiàn)類似拖尾的效果,受限于材質太單一

回到我們自己的主角上十個不同的材質沒辦法這么做,所以只能靠自己,大概琢磨了兩三天玩出來一個不是那么復雜的效果~~~


場景和人物資源東拼西湊的,后期全部要換掉,所以不礙事~~
Dash沖刺效果總共三個部分組成:
1,Niagara制作粒子拖尾和Sparks
2,Ghost Trails 幽靈拖尾
3,藍圖實現(xiàn)整體邏輯

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
首先對整體效果做一個拆分
1,Niagara制作粒子拖尾和Sparks:
進入Niagara系統(tǒng),組成很簡單,兩個發(fā)射器



分別負責采樣人物骨骼位置信息和閃光粒子

NE_SampleSkeletalMesh    單獨啟用效果


可以看出,僅僅只是一個模擬速度感的一個抽象的效果,但其實是黏在主角人上的一堆模型~~~
關閉所有效果調節(jié)的Module的樣子~~




https://www.zhihu.com/video/1465016696888680448
就是在人物身上釋放一群模型同時跟隨人物移動~~如何實現(xiàn)的呢,其實官方在很早的直播就有講到~~包括印度阿三的教程也有涉及到~~~
傳送門:
兩個核心的Module->initialize Mesh Reproduction Sprite 和 Update Mesh Reproduction Sprite
為了細化每一個步驟,這里我們用小白人做演示:
新建一個NiagaraSystem,選擇Fountain,只保留基礎模塊,其它全刪


接著添加Initialize Mesh Reproduction Sprite模塊,預覽模型選擇小白人


加高粒子發(fā)射個數(shù)至20000,Emitter State修改粒子循環(huán)為只執(zhí)行一次,循環(huán)周期改為Infinite,粒子生命周期改為0.1秒,可以在預覽窗口看到效果


拖入場景看到粒子附著在小白人身上~~


但是這一步僅僅只是通過Niagara粒子系統(tǒng)采樣模型頂點的世界位置信息作為例子生成的位置,說簡單點,就是粒子剛剛出生,那么要讓粒子黏在小白人身上我們需要實時更新粒子的位置信息,這里就需要繼續(xù)添加
Module->Update Mesh Reproduction Sprite
修改粒子渲染為GPUSim,減少釋放個數(shù)到5000左右,修改粒子大小為4


到這一步感覺好像沒什么變化哈~~~   稍安勿躁,進入小白人的藍圖,在Mesh下面添加我們的粒子


然后臨時關閉Update Mesh Reproduction Sprite進程,同時修改粒子生命周期為1.0秒,運行效果如下


這是因為粒子在Spawn的那一刻本身帶有速度屬性,所以會散開,官方是這么說,不細究~~
所以我們需要更新粒子在生成之后每一幀的位置,開啟Update .....


粒子就正常了~~


接著修改粒子發(fā)射模型,發(fā)射圓錐,修改模型朝向以及模型大小




就出現(xiàn)一群模型圍繞在人物身上的效果


接著我們進入一個橫板游戲的視角,調整對應的數(shù)值看看效果




使用Spawn Per Unit  檢測到當前有速度增量時生成粒子,然后調整模型的長度即可
接著新建一個材質如圖


邏輯很簡單,再稍加設置,效果如下


橫板游戲,我希望效果不要蓋住我們的人物,感官上就感覺是效果渲染在人物后面一樣,這里我用了一個最簡單粗暴的方法,直接限制粒子模型的位置信息
新建一個自定義Module ,強行把粒子的軸向寫一個固定值,相當于把粒子壓成一個平面






其實另一個角度看是這個樣子


嗯~~各位輕噴~~~  2333
然后大家再調整下細節(jié)方面的東西就行了~~
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
NE_Sparks  單獨啟用效果



制作方式也很簡單,采樣模型頂點位置信息,然后反向噴射粒子完事~~~


這里就不需要用Initialized了,直接采樣模型就行,然后添加了一個Inhert Velocity然后速度給一個負值就能讓粒子反向發(fā)射出去~~~




大致效果就出來了,然后再用藍圖傳遞一些細節(jié)的控制即可
兩者組合在一起即可


到這里,Niagara部分完成~~~
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
進入第二部分:
Ghost Trails 幽靈拖尾
其實是虛幻商城的一個資源,魔改了之后的效果
單獨看看效果就是~~~


其實就是在很短的時間內連續(xù)釋放多個Pose然后消失掉~~~   


具體實現(xiàn)過程就不啰嗦,有藍圖基礎的同學去某寶~~   呸。。。   虛幻官方商城直接可以買到~~
幾個關鍵步驟說一下:



這里的開啟模型自定義深度渲染開關為后面材質亂序做準備

Copy Pose from Skeletal Component 這個節(jié)點就是拷貝當前動畫的Pose然后復制


然后TrailsCore在生成的時候添加一個Poseable Mesh用來承載拷貝過來的Pose


接著替換給Mesh一鍵添加所有材質


材質也很簡單,只不過為了修復UE4本身渲染本透明時候的亂序,多加了一部分邏輯用來處理亂序問題,就是個像素深度和自定義深度的對比,網上一堆教程和文章告訴你怎么做~~~
記得開起材質的Allow Custom Depth Writes  允許半透明材質寫入自定義深度,不然就對比了個寂寞


同時開啟Used With Skeletal Mesh 和 Used With Clothing的開關,不然材質編不過去,無法給模型添加上材質
(此處感謝騰訊天美大佬 @大畫渣 的幫助)
回到TrailCore


拷貝Pose 賦予材質 然后給一個當前人物運動反方向的偏移作為初始化操作
接著進入核心部分


這一段就直接拷貝了代碼,然后去掉自己不需要的部分
其實邏輯很簡單,獲取當前釋放瞬間游戲時間(這個時間一直在持續(xù)增加)然后跟定義好的Life Time做一個映射,然后把單位化的結果給材質的Alpha,但是這個Alpha是0到1所以需要用一個Lerp反轉數(shù)據(jù)來實現(xiàn)模型消失的效果,當Alpha無限接近于0的時候也代表這個模型即將被銷毀Destory。


接著在人物沖刺的時候寫個邏輯子啊短時間內釋放多個當前pose的Mesh  也就是一個Actor,這個Actor只負責呈現(xiàn)出當前動畫的Pose然后消失
看看幾種不同數(shù)值的對比  :
釋放間隔0.2  模型消失1.0


釋放間隔 0.02  模型消失0.5


然后再調整下其它參數(shù)比如材質BaseColor,F(xiàn)renel,這些東西就差不多了
接著為了讓效果能通用,給別的角色也能用,我們得讓引擎知道怎么去拿人物的Mesh,可以使用最通用的方法,加標簽Tag,視線轉移到我們的角色


需要拿到的是Mesh,然后可以在初始化的時候自動給Mesh打上Tag,如圖


然后找到帶有特定標簽的Component即可


到這里基本上快要完成了~~~

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
3,藍圖實現(xiàn)整體邏輯
創(chuàng)建一個Actor Component,然后通過添加Component的方式讓功能生效


其實也是常規(guī)做法,讓功能的移植更方便~~~   
最后再把剩下的部分參數(shù)微調即可


~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
此文章僅作為個人思路的參考,其實可以添加細節(jié)的地方有很多   
鑒于目前網絡上相關資料很少,所以就提供了自己的一個制作思路~~~
創(chuàng)作不易~~~   走過路過點個贊吧客官~~~   

-----------------------------
精選高品質二手iPhone,上愛鋒貝APP

0

主題

54

帖子

3

積分

Rank: 1

沙發(fā)
發(fā)表于 2022-1-18 19:24:55 | 只看該作者
很好 下一秒就是我的了[蹲]
精選高品質二手iPhone,上愛鋒貝APP

0

主題

40

帖子

5

積分

Rank: 1

板凳
發(fā)表于 2022-1-18 20:39:25 | 只看該作者
很棒,我已經學會了[贊同]
精選高品質二手iPhone,上愛鋒貝APP

0

主題

44

帖子

3

積分

Rank: 1

地板
發(fā)表于 2022-1-18 22:28:45 | 只看該作者
太屌了沃夫
精選高品質二手iPhone,上愛鋒貝APP

0

主題

47

帖子

3

積分

Rank: 1

5
發(fā)表于 2022-1-18 23:30:12 | 只看該作者
歡呼
精選高品質二手iPhone,上愛鋒貝APP

0

主題

46

帖子

3

積分

Rank: 1

6
發(fā)表于 2022-1-19 00:53:42 | 只看該作者
可以可以
精選高品質二手iPhone,上愛鋒貝APP

0

主題

47

帖子

3

積分

Rank: 1

7
發(fā)表于 2022-1-19 02:08:54 | 只看該作者
大佬太強了
精選高品質二手iPhone,上愛鋒貝APP

0

主題

48

帖子

3

積分

Rank: 1

8
發(fā)表于 2022-1-19 03:23:24 | 只看該作者
歡呼
精選高品質二手iPhone,上愛鋒貝APP
您需要登錄后才可以回帖 登錄 | 立即注冊   

本版積分規(guī)則

QQ|Archiver|手機版|小黑屋|愛鋒貝 ( 粵ICP備16041312號-5 )

GMT+8, 2025-2-12 05:29

Powered by Discuz! X3.4

© 2001-2013 Discuz Team. 技術支持 by 巔峰設計.

快速回復 返回頂部 返回列表