粒子系統(tǒng)工具包可以劃分為四個部分:
(1)粒子系統(tǒng)模塊。該模塊管理所有存在的粒子系統(tǒng)(一個應(yīng)用程序中可以同時存在多個粒子系統(tǒng))。模塊中存儲創(chuàng)建一個粒子系統(tǒng)時需要的基本信息,如時間步進量、系統(tǒng)容量等。在默認情況下,新創(chuàng)建的粒子系統(tǒng)可直接從該模塊中獲得所需要的屬性,用戶也可以在創(chuàng)建時自行設(shè)置粒子系統(tǒng)的屬性。此外,該模塊也負責(zé)刪除粒子系統(tǒng)、設(shè)置當(dāng)前活動粒子系統(tǒng)以及粒子系統(tǒng)間的拷貝等。
(2)行為模塊。行為模塊對粒子的動作進行編程。作為各種基本動作的組合,該模塊提供給用戶建立復(fù)雜粒子行為的各種服務(wù)。此外,該模塊還提供良好的接口,供開發(fā)者(或用戶)添加新的行為。
(3)行為列表模塊。類似OpenGL中顯示列表的概念,行為列表的作用也是為了避免重復(fù)工作,提高時間效率。用戶可以將重復(fù)使用的行為組合存儲到行為列表中,這樣在下次使用時就可以直接調(diào)用該列表,從而節(jié)約初始化的時間。該模塊中包含了列表的創(chuàng)建、刪除和拷貝等功能。
(4)發(fā)生域模塊。在工具包中經(jīng)常用到發(fā)生域的概念。發(fā)生域是各種幾何體的實現(xiàn),如點、線、平面、球、棱柱等。其實發(fā)生域不僅可以用于粒子的產(chǎn)生和運動,也可以在產(chǎn)生顏色、質(zhì)量時使用。發(fā)生域模塊完成各種發(fā)生域的構(gòu)造,發(fā)生域中隨機量的生成,以及粒子位于發(fā)生域內(nèi)外的檢測。
內(nèi)容來源:趙沁平《DVENET分布式虛擬現(xiàn)實應(yīng)用系統(tǒng)運行平臺與開發(fā)工具》