2010-05-26 97 views
1

我需要創建一個粒子系統並保留創建的粒子。我需要用iphone加速度計搖動/移動創建的粒子。此外,粒子的數量需要非常高(我需要展示沙子!)。如何在iphone上創建粒子系統並保留創建的粒子?

我沒有任何OpenGLES編程經驗。

初步搜索後,我發現Cocos2D可用於粒子生成。但是在CCParticle系統中沒有辦法保留這些粒子。作爲解決方法,我試圖在粒子生成結束時創建許多精靈並將它們顯示爲粒子。但用加速度計移動少量精靈會大大降低幀速率。

請建議如何實現這一點,以及我是否應該尋找其他框架或者是否有某種類似的演示代碼可用。

感謝, Swapnil

回答

1

嘗試了所有提到的方法,但沒有一個適合我試圖實現的目標。

只要我創建粒子,事情都可以。但是現在我開始使用它們作爲精靈(或者在粒子消失時創建新的精靈)並將它們與加速度計一起移動,由於沙粒的數量非常巨大,所以性能確實非常糟糕。

因此,這裏是一個變通我要去嘗試:

創建的尺寸爲320 * 480的每個精靈巨大的精靈表,顯示出沙子散落在不同的位置/方向,並根據加速度改變精靈投入。

我知道這聽起來像一個蹩腳的工作,但我創建了一個小精靈表POC,它並沒有那麼糟糕。

請讓我知道,如果你認爲這種解決方法有點缺陷或我應該使用其他方法。

感謝, Swapnil

5

在這裏你去,iphoneparticles,在OpenGL ES的iPhone一個開源的粒子發生器。如果你想了解它是如何產生的,請查看源代碼。

此外,你可能想看看在this article提出的演示應用程序的源代碼。它使用由71 Squared創建的粒子發射器類。

+0

感謝您的快速回復luvieere。下載了兩個源代碼。它們與cocos2d中的粒子引擎測試類似。但我的主要問題是保留顆粒。我仍然會徹底研究下載的代碼,看看我能否設法保留這些系統中的粒子。 – lukya 2010-05-26 13:17:44