2011-04-06 214 views
3

我想在我的應用程序中顯示粒子效果,但問題是當我在視圖中添加粒子時,它顯示不同顏色的粒子圖像,我不希望任何顏色對我使用的粒子圖像產生影響。 請幫助我!自定義粒子系統

THANX !!!

回答

1

@iPhone Monster->您可以使用粒子系統的startColor,startColorVar,endColor,endColorVar屬性。試試看。

您是否使用內置的粒子效果?或者使用粒子設計器?

+1

@shinu:Thanx爲您的迴應,我只使用內置在粒子系統的粒子效果。但是我真正想要的是我不想爲我的粒子提供任何顏色,我只想顯示圖像,因爲我正在設置粒子以便顯示。我已經使用了你所說的內容,但只是設置了粒子的顏色,我不想要任何顏色,但只想顯示圖像,請告訴我是否有可能。 – 2011-04-07 06:28:16

+0

在那種情況下,然後將blendAddictive設置爲YES。 – ShinuShajahan 2011-04-07 07:51:55

+0

ie,self.blendAddictive = YES;或yourEmitter.blendAddictive = YES; 'yourEmitter'是你的粒子系統對象。好? – ShinuShajahan 2011-04-07 07:52:42

4
CCParticleExplosion *myEmitter; 

myEmitter = [[CCParticleExplosion alloc] initWithTotalParticles:30]; 

//star.png is my particle image 
myEmitter.texture = [[CCTextureCache sharedTextureCache] addImage:@"star.png"]; 
myEmitter.position = ccp(250,s250); 

myEmitter.life =0.2; 
myEmitter.duration = 0.5; 
myEmitter.scale = 0.5; 
myEmitter.speed = 100; 

//For not showing color 
myEmitter.blendAdditive = NO; 
[self myEmitter z:50]; 
myEmitter.autoRemoveOnFinish = YES; 
+1

@Shinu:我也試過,但結果沒有變化。這裏是我的代碼: CCParticleExplosion * particle = [[CCParticleExplosion alloc] initWithTotalParticles:5]; [particle setTexture:[[CCTextureCache sharedTextureCache] addImage:@「particle1.png」]]; particle.position = ccp(point.x,point.y); [particle setGravity:ccp(0,-300)]; particle.blendAdditive = NO; 微粒。autoRemoveOnFinish = YES; [self addChild:particle]; [particle release]; – 2011-04-08 04:00:25

+0

但事實是,我發佈的代碼爲我工作得很好!你有這個工作嗎?試圖清理?試圖從模擬器/設備刪除以前的應用程序? – ShinuShajahan 2011-04-08 07:05:55

+0

是的,我做了所有你所說的事情,粒子仍然是隨機的顏色。有另一種方法嗎?或我身邊的任何錯誤? – 2011-04-08 08:54:42

0

嘗試:

startColor.r = 1.0f; 
startColor.g = 1.0f; 
startColor.b = 1.0f; 
startColor.a = 1.0f; 
startColorVar.r = 0.0f; 
startColorVar.g = 0.0f; 
startColorVar.b = 0.0f; 
startColorVar.a = 0.0f; 
endColor.r = 1.0f; 
endColor.g = 1.0f; 
endColor.b = 1.0f; 
endColor.a = 1.0f; 
endColorVar.r = 0.0f; 
endColorVar.g = 0.0f; 
endColorVar.b = 0.0f; 
endColorVar.a = 0.0f; 

self.blendAdditive = NO; 
+0

你不能這樣做,它顯示爲LValue所要求的錯誤。 – 2011-04-20 03:46:24

7

感謝卡爾文範!它對我很好!以下是我的代碼:

CCParticleExplosion *drops = [[CCParticleExplosion alloc] initWithTotalParticles:3000]; 
drops.texture = [[CCTextureCache sharedTextureCache] addImage:@"p1-dust-l.png"]; 

drops.position = position; 
drops.life =0.2; 
drops.duration = 0.5; 
drops.scale = 0.5; 
drops.speed = 100; 

ccColor4F startColor, startColorVar, endColor, endColorVar; 
startColor.r = 1.0f; 
startColor.g = 1.0f; 
startColor.b = 1.0f; 
startColor.a = 1.0f; 

startColorVar.r = 0.0f; 
startColorVar.g = 0.0f; 
startColorVar.b = 0.0f; 
startColorVar.a = 0.0f; 

endColor.r = 1.0f; 
endColor.g = 1.0f; 
endColor.b = 1.0f; 
endColor.a = 1.0f; 

endColorVar.r = 0.0f; 
endColorVar.g = 0.0f; 
endColorVar.b = 0.0f; 
endColorVar.a = 0.0f; 

drops.startColor = startColor; 
drops.startColorVar = startColorVar; 
drops.endColor = endColor; 
drops.endColorVar = endColorVar; 

drops.autoRemoveOnFinish = YES; 
+0

感謝您的回答。這在我的遊戲中完美運作。 – GeneCode 2013-02-24 06:06:44

1

您可以使用不同類型的圖像創建自定義粒子。

在cocos2d中,有些類可用。一些軟件也可用。我在這裏附上一個鏈接http://particledesigner.71squared.com/。它會幫助你很多。通過自定義粒子發射器的每個方面,爲您的最新遊戲創造驚人的視覺效果。

您可以訪問一個龐大的在線免費發射器庫,包括火災和爆炸,瀑布和雪。發射器完成後,將其提交給在線圖書館以展示您的工作。

enter image description here

粒設計支持所有iOS設備讓您針對最廣泛的受衆。