UE4子彈特效


轉自:http://blog.ch-wind.com/ue4-projectile-visual-effects/

子彈使用拋體就可以實現了,但是要讓其看起來更加真實,則可能需要加上一些粒子特效。

當前UE4版本4.8.1。

子彈的特效制作主要使用粒子系統進行實現,只有用於着彈效果的地方使用的是Decal Material。官方的這篇教程對於了解如何去制作一個粒子系統很有作用。原始教程地址:https://wiki.unrealengine.com/Projectile_Visual_Effects(教程中有提供相關文件的下載)。

特效的制作基礎是UE4自帶的第一人稱模板,不需要初學者內容。也可以直接下載文檔末尾處的工程文件進行觀賞,工程文件不到10M,相當的方便。

着彈特效

制作特效之前,先實際參考一下現實世界中的效果比較好。為了模擬出好的特效,觀察整個過程中能量的變化非常的重要。因此,教程中對子彈的着彈效果進行觀察后。將特效分為了閃光、煙霧、破片三個子特效。

閃光

閃光特效使用T_Hit.tga貼圖來制作材質。材質類型修改為Translucency,同時,為了保證閃光特效始終顯示在表層,將Disable Depth Test設置為True。閃光特效中示例工程中額外的添加了Near Camera Fade和Depth Fade,這樣的話在子彈有射入角度時就不會依然顯示一個光暈了,更加自然一些。

image image

新建一個粒子系統,並在Required模塊中將默認發射器的材質修改為剛剛建立的材質。為了方便以后辨識,可以將發射器的名稱修改為HIT。按照之前的教程中的建議,刪除Color Over Life模塊,替換為Initial ColorScale Color/Life模塊。在模塊的屬性上,主要使用粒子生命周期和初始大小進行隨機化來增強特效的隨機性。

煙霧

第一步依然是構建材質,煙霧的材質相對復雜一些。在示例的截圖中,有添加Near Camera Fade特性,但是在示例工程中該材質並沒有添加。使用到的貼圖分別是T_Smoke與T_S_Normal。

煙霧特效中,額外的使用Initial Rotation和Initial Rotation Rate來作隨機化。同時添加Sphere模塊對初始位置以及速度應用隨機。

煙霧特效中,由於材質中使用了MacroUV,需要對MacroUV進行修改。點擊編輯器的空白處,在粒子系統的屬性中進行設置。如果不同的發射器使用的是不同的設置,也可以在Required模塊對MacroUV屬性進行修改。

破片

破片效果主要使用SubUV模塊進行實現。需要添加Acceleration模塊進行重力模擬,Collision模塊進行碰撞模擬。

這一部分示例工程中的材質和教程中的截圖相差比較大,Near Camera Fade和Depth Fade被取消,同時用一種近似的方法生成了法線。

image

由於碎片較小,很難觀察出有什么不同……

拖曳

拖拽特效同樣通過粒子進行實現。使用的是Ribbon類型的發射器。拖拽部分使用的材質教程中沒有對Panner的速度進行說明,實際情況如下:

image

這一部分在操作是需要注意的是,必須刪除Initial Velocity模塊。由於教程中沒有明言,會導致結果與預期的不同。

還有一個示例工程的不同之處在Required模塊中:

Screen AlignMent設置為Facing Camera Position

Sort Mode設置為Distance to View

彈痕與子彈

彈痕的特效使用Decal Materia進行實現。

材質中使用快速方法生成了測試用的替代法線貼圖。

子彈的材質沒有什么特別的地方,並不是教程的重點。如果是使用球體而不是子彈的話,可以跳過子彈的材質。

藍圖

實際的對上面生成的特效進行使用測試。

在組件中添加Ribbon的粒子系統,修改拋體的速度和重力設置,同時勾選平面移動限制。在碰撞點生成粒子系統和Decal Materia。

開始調試,就能看到相當不錯的子彈特效了。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM