游戲原型系列 vol.8 粒子系統(tǒng):發(fā)射
摘要
發(fā)射是Unity粒子系統(tǒng)中默認(rèn)啟用的模塊之一。它影響粒子系統(tǒng)精靈的生成速度和時(shí)間。該模塊可用于控制系統(tǒng)的行為,從創(chuàng)建煙霧信號(hào)到一次性爆炸。
在本教程中,您將控制“發(fā)射”值以提高粒子效果的整體質(zhì)量。視頻教程請(qǐng)參考下面視頻。
1.什么是Emission??

Emission(發(fā)射)是Unity粒子系統(tǒng)中默認(rèn)啟用的模塊之一。它影響粒子系統(tǒng)精靈的生成速度和時(shí)間。所有粒子發(fā)射器在運(yùn)行時(shí)都將打開“發(fā)射”模塊,否則系統(tǒng)將不會(huì)發(fā)射任何粒子。該模塊可用于控制系統(tǒng)的行為,從創(chuàng)建煙霧信號(hào)到一次性爆炸。學(xué)習(xí)如何正確控制不同的值將改善效果的整體質(zhì)量。
2.設(shè)置發(fā)射屬性
選擇您的粒子系統(tǒng),然后在“檢查器”窗口中展開“Emission”類別。
選擇您的“粒子系統(tǒng)”,然后打開“檢查器”窗口。
打開Emission(發(fā)射)模塊。(圖01 )

發(fā)射物只有幾個(gè)特性可以跟蹤:
Rate over Time(隨時(shí)間變化的速率):每單位時(shí)間發(fā)射的粒子數(shù)
Rate over Distance(遠(yuǎn)距離速率):每移動(dòng)距離單位發(fā)射的粒子數(shù)
Bursts(爆發(fā)):爆發(fā)是產(chǎn)生粒子的事件。這些設(shè)置允許在指定的時(shí)間發(fā)射粒子。這分為五個(gè)類別:時(shí)間,計(jì)數(shù),周期,間隔和概率。
Time(時(shí)間):設(shè)置發(fā)出爆發(fā)的時(shí)間(以“粒子系統(tǒng)”開始播放后的秒數(shù))。
Count(計(jì)數(shù)):設(shè)置發(fā)射的粒子數(shù)
Cycle(周期):設(shè)置播放連拍的次數(shù)??梢詫⑵湓O(shè)置為無限無限循環(huán)。
Interval(時(shí)間間隔):設(shè)置觸發(fā)突發(fā)的每個(gè)周期之間的時(shí)間(以秒為單位)
Probability(概率):此屬性確定脈沖串何時(shí)觸發(fā)的概率,可能的值在0 到1 之間。值為0 將導(dǎo)致突發(fā)永不觸發(fā),而值為1 將導(dǎo)致突發(fā)始終觸發(fā)。
發(fā)射速率可以是恒定的,也可以根據(jù)曲線在系統(tǒng)的整個(gè)生命周期中變化。如果您提供的“大于距離的速率”(Rate over Distance)的值大于0,則發(fā)射器所綁定的父對(duì)象移動(dòng)的每單位距離將釋放一定數(shù)量的粒子。這樣,您就可以創(chuàng)建由對(duì)象的運(yùn)動(dòng)創(chuàng)建的粒子,例如,水從浸泡在完整沖刺中的角色掉落而來。
如果激活“Rate over Time(隨時(shí)間變化的速率)”,則無論父對(duì)象的運(yùn)動(dòng)如何,每秒都會(huì)發(fā)射所需數(shù)量的粒子。您還可以添加在粒子系統(tǒng)的生命周期中的特定時(shí)間出現(xiàn)的額外粒子爆發(fā),例如,大量的煙霧或蒸汽從車輛的排氣管中排出。(圖02 )。

3.一些示例粒子系統(tǒng)
對(duì)于這些練習(xí),將您的粒子系統(tǒng)的“Simulation Space(模擬空間)”設(shè)置為“World(世界)”(圖03 )。可以在排放前在檢查器的主要部分找到。

4.小氣泡
通過從GameObject下拉列表中選擇“Effects(效果)”>“Particle System(粒子系統(tǒng))”來創(chuàng)建粒子系統(tǒng)(圖04 )。

(可選)在“粒子系統(tǒng)”檢查器的第一部分中,將“最大粒子數(shù)”設(shè)置為2(圖05 )。

在“發(fā)射”中,將“Rate over Time(隨時(shí)間變化的速率)”和“Rate over Distance(隨距離變化的速率)”都設(shè)置為0。
單擊“Bursts List(爆發(fā)列表)”右下角附近的+號(hào)(圖06 )。

將時(shí)間設(shè)置為0。將計(jì)數(shù)設(shè)置為1。將循環(huán)設(shè)置為無限。將時(shí)間間隔設(shè)置為3.0,將概率設(shè)置為1.0(圖07 )。

如果尚未播放粒子系統(tǒng),請(qǐng)?jiān)凇皥?chǎng)景視圖”中單擊“Play(播放)”或“Restart(重新啟動(dòng))”(圖08 )。更改重粒子系統(tǒng)(在短時(shí)間內(nèi)產(chǎn)生許多粒子的系統(tǒng))時(shí),停止實(shí)時(shí)更新粒子系統(tǒng)的功能非常有用。


您可能希望通過調(diào)整計(jì)數(shù)來調(diào)整每次爆發(fā)中的氣泡量,或者通過調(diào)整間隔來調(diào)整魚的“breathing rate(呼吸頻率)”。?
5.快樂足跡
在這個(gè)練習(xí)中。我們將演示如何將“遠(yuǎn)距速率”用于火車的煙道,飛船的噴氣機(jī),或者僅在發(fā)射器(或其父對(duì)象)移動(dòng)時(shí)需要發(fā)射粒子的任何時(shí)間。
如果您要重復(fù)使用上一練習(xí)中的粒子系統(tǒng),請(qǐng)單擊“Bursts(爆發(fā))”的右端,然后單擊“-”(減號(hào))以將其刪除(圖10 )。否則,請(qǐng)創(chuàng)建一個(gè)新的粒子系統(tǒng),將“Simulation Space(模擬空間)”設(shè)置為“World(世界)”并將“隨時(shí)間的發(fā)射率”設(shè)置為0。

將遠(yuǎn)距離傳輸速率設(shè)置為3。
播放粒子系統(tǒng)后,抓住操縱器并將其拖動(dòng)到整個(gè)場(chǎng)景中(圖11 )。

6.心跳
在本練習(xí)中,我們將使用粒子連續(xù)讀取諸如心臟監(jiān)護(hù)儀或里氏標(biāo)尺之類的東西。
創(chuàng)建一個(gè)新的粒子系統(tǒng)。
將“Duration(持續(xù)時(shí)間)”設(shè)置為8.0,將“Simulation Spce(模擬空間)”設(shè)置為“World(世界)”,并將“Max Particles(最大粒子數(shù) )”設(shè)置為至少2400(圖12 )。將“Max Particles(最大粒子數(shù))”設(shè)置為“Duration(持續(xù)時(shí)間)xRate over Time(隨時(shí)間變化的速率)”(在下一步中設(shè)置)可確保有足夠的粒子,以便在循環(huán)再次開始之前不會(huì)中斷。

在“Emission”中,將“隨時(shí)間變化的速率”設(shè)置為300(圖13 )。

在“粒子系統(tǒng)檢查器”的“形狀”部分中,將“Angle(角度)”,“Radius(半徑)”和“Radius Thickness(半徑厚度)”設(shè)置為0。半徑實(shí)際上不能為0,因此它將自動(dòng)校正為0.0001。
使用“Shape(形狀)”中的“變換”設(shè)置,在Y軸上將“粒子系統(tǒng)”旋轉(zhuǎn)-90°(圖14 )。

單擊“粒子效果”窗口上的“播放”或“重新啟動(dòng)”,然后嘗試沿Z軸移動(dòng)操縱器(此處以黃色突出顯示)(圖15 )。嘗試沿兩個(gè)方向移動(dòng)發(fā)射器以“寫入”。嘗試克隆此發(fā)射器幾次,每次重新著色,然后將它們作為發(fā)射器的父項(xiàng)進(jìn)行燈光顯示。

7.結(jié)論
排放模塊在任何粒子系統(tǒng)中都起著至關(guān)重要的作用。您會(huì)發(fā)現(xiàn)自己不斷地調(diào)整或重新訪問模塊的屬性,以微調(diào)和完善您的粒子效果。熟悉“發(fā)射”模塊如何幫助您將粒子效果栩栩如生。