粒子架構(gòu)上參考了Ogre跟Gamebryo的粒子系統(tǒng)結(jié)構(gòu),分粒子控制器,發(fā)射器,效果器,渲染器四部分,其實(shí)大同小異,數(shù)據(jù)與操作分離開(kāi)來(lái),發(fā)射器,效果器,渲染器都是由控制器統(tǒng)一管理的,理論上都可以有多個(gè),粒子數(shù)據(jù)經(jīng)過(guò)這四部分的更新后成為直接可以為引擎渲染的幾何數(shù)據(jù),粒子從發(fā)射到渲染都是可控的,用戶可設(shè)關(guān)鍵幀來(lái)控制粒子的狀態(tài),不過(guò)只有發(fā)射器跟粒子發(fā)射后的屬性數(shù)據(jù)可以設(shè)關(guān)鍵幀,而且一個(gè)關(guān)鍵幀包含了所有數(shù)據(jù),用戶只能選擇使用哪些屬性數(shù)據(jù)的track,所以當(dāng)只需要一兩項(xiàng)數(shù)據(jù)變化的時(shí)候就有些浪費(fèi)了,最近看了一些國(guó)外公司出的粒子編輯器,發(fā)現(xiàn)它們幾乎都設(shè)計(jì)成所有粒子的屬性數(shù)據(jù)都是一個(gè)單獨(dú)的track,可以隨意變化,插值方式也多種多樣,相當(dāng)強(qiáng)大,可惜看到得晚了點(diǎn),不然我大概也會(huì)這樣做.
最后還有一點(diǎn)遺憾是我們?cè)镜脑O(shè)計(jì)是做一個(gè)可以隨意切換是基于CPU或者基于GPU處理粒子數(shù)據(jù)這樣的一個(gè)粒子系統(tǒng),可惜在CPU版本完成后由于引擎的一些限制無(wú)法完成GPU版本,最后只能在某些地方小小用GPU優(yōu)化了下,但效果不理想
Debug版本,fps低了點(diǎn)
posted on 2008-11-24 14:12
清風(fēng) 閱讀(2450)
評(píng)論(6) 編輯 收藏 引用 所屬分類:
圖形