2014-02-11 27 views
0

我想在我的Cocos2d项目中使用粒子效果。粒子效果显示良好。但是当我把粒子显示功能放到线程中时,我很困惑,它只显示微小的黑色方块而不是正确的纹理。 thanx提前。如何在Cocos2d中显示粒子线程

// thread caller 
[self performSelectorInBackground:@selector(showParticleThrd:) withObject:nil]; 

// it works good when i call it directly 

-(void) showParticleThrd{ 
    CCParticleSystem * system = [[ParticleEffectSelfMade alloc] initWithTotalParticles:1]; 
    [aLayer removeChildByTag:R_TAG cleanup:YES]; 
    system.position = ccp(self.position.x,self.position.y); 
    [self.parent addChild:system z:R_ORDER tag:R_TAG]; 
    [system release]; 
} 
+0

PS:请开始使用ARC – LearnCocos2D

回答

2

你不能在后台线程中修改任何与cocos2d相关的东西。 Cocos2d要求您对主线程中的节点进行更改,其中创建了OpenGL上下文。

+0

这很有帮助。我只是担心主线承受了负担。 Thanx无论如何。 – user3201493

+1

首先,分析。然后,优化。大多数iOS游戏在扼杀CPU周期之前受限于有限的填充率。 – LearnCocos2D