遊戲中,諸如煙、火、水滴、落葉等粒子效果,均可以使用粒子系統(particle system)來實現。例如,《明朝傳奇》中的篝火,如圖2-32所示。粒子系統的最新版本也被稱作忍者飛鏢(Shuriken),由於場景中添加的粒子系統酷似忍者飛鏢,如圖2-33所示。dom
圖2-32 遊戲中的篝火 圖2-33 粒子系統,也被稱爲忍者飛鏢編輯器
在使用粒子系統前,先了解一下它的基本屬性:模塊化
q Energy:表示粒子的生命週期,也就是從生成到銷燬的時間。oop
q Looping:決定是否在全部粒子的生命週期結束之後,從新生成這些粒子。spa
q Speed,direction,and rotation:每一個粒子都有transform組件,所以它們的移動方向、朝向,甚至是大小均可以是不一樣的。orm
給每一個粒子賦予的值能夠分爲如下四類:對象
q Constant(常量):表示給全部粒子賦予的值都是同樣的,如圖2-34所示。生命週期
圖2-34 給粒子賦予Constant類型的值 圖2-35 給粒子賦予Curve類型的值遊戲
q Curve(曲線):給粒子賦予的值隨時間變化而變化,具體的值將依據時間而賦予曲線上的值,如圖2-35所示。遊戲開發
q Random Between Two Constants(兩個常量範圍內的隨機值):給粒子賦予的值隨時間變化而變化,但賦予的值僅限於兩個常量的範圍內。如圖2-36所示。
圖2-36 給粒子賦予Random Between Two Constants類型的值圖2-37 給粒子賦予Random Between Two Curves類型的值
q Random Between Two Curves(兩個曲線範圍內的隨機值):給粒子賦予的值隨時間變化而變化,但賦予的值僅限於兩個曲線的範圍內。如圖2-37所示。
建立粒子效果的方式有兩種:
q 在Unity裏,單擊GameObject|Create Other|Particle System命令,在遊戲場景中添加Particle System(粒子系統)這個遊戲對象。
q 在Unity裏,單擊GameObject|Create Empty命令,在遊戲場景中添加空遊戲對象。選中它,再單擊Component|Effects|Particle System命令,爲空遊戲對象添加Particle System(粒子系統)組件。
Scene視圖和Game視圖裏所看到的粒子效果如圖2-38所示。
圖2-38 Scene視圖和Game視圖裏的粒子效果
Shuriken(忍者飛鏢)粒子系統,是採用模塊化來管理的,因爲有個性化的粒子模塊,再配合上粒子曲線編輯器,會使得開發者更容易創做出繽紛複雜的粒子效果。Shuriken粒子系統有多達17個模塊,選中Scene視圖裏的粒子系統,而後在Inspector視圖裏就能夠查看這17個模塊,如圖2-39所示。
圖2-39 Shuriken粒子系統的17個模塊 圖2-40 粒子效果面板
除此之外,選中Scene視圖裏的粒子系統時,Scene視圖裏還會出現Particle Effect(粒子效果)面板,如圖2-40所示。面板中各控件的功能描述以下:
q Pause(暫停):單擊此按鈕,可暫停播放當前的粒子。再次單擊此按鈕,則繼續播放。
q Stop(中止):單擊此按鈕,可中止粒子的播放。
q Playback Speed(回放速度):可改變粒子的播放速度,數值越大,播放速度越快。
q Playback Time(回放時間):設置播放哪一時刻的粒子效果。
點擊Inspector視圖裏的Particle System模塊,便可展開此模塊,如圖2-41所示,同理於其它模塊,此模塊能夠設置粒子系統初始化時的狀態。
圖2-41 設置粒子系統初始化狀態的模塊 圖2-42 Start Size值的4個類型
接下來將以初始化時,設置Start Size的值爲例,說明設置方法。單擊此屬性最右邊的,會彈出4個類型值的選擇項,如圖2-42所示。
q 默認選擇的是Constant,設置Start Size的值爲常量,即粒子播放的過程當中,全部粒子的大小都是同樣的,如圖2-43所示。
圖2-43 Start Size爲Constant類型的值時,粒子播放的效果
q 選擇Curve時,便可在曲線編輯器中,編輯曲線的形狀,設置Start Size的值爲曲線上的值,粒子播放的效果如圖2-44所示。隨着時間的變化,粒子愈來愈大。
圖2-44 Start Size爲Curve類型的值時,粒子播放的效果
q 選擇Random Between Two Constants時,設置Start Size的值爲兩個常量間的任意值,粒子播放的效果如圖2-45所示。在任意時刻,粒子老是有大有小。
圖2-45 Start Size爲Random Between Two Constants類型的值時,粒子播放的效果
q 選擇Random Between Two Curves時,便可在曲線編輯器中,編輯兩條曲線的形狀,設置Start Size的值爲曲線範圍內的任意值,粒子播放的效果如圖2-46所示。任意時刻粒子都是有大有小的,可是隨着時間的變化,全部粒子都會愈來愈大。
圖2-46 Start Size爲Random Between Two Curves類型的值時,粒子播放的效果
本文選自:Unity 遊戲開發技巧集錦大學霸內部資料,轉載請註明出處,尊重技術尊重IT人!