0
有没有更有效的方法来清理我的CCNodes?我正在调用这个函数(和其他人喜欢它的不同的游戏对象),在一个计时器。有没有更有效的方法来清理我的CCNodes?
- (void)pulseBullets:(NSMutableArray *)bs targets:(NSArray *)targets {
for (Bullet *b in bs) {
for (QuantumPilot *p in targets) {
if (p.active) {
[p processBullet:b];
if (!p.active) {
[self processKill:p];
}
}
}
}
NSMutableArray *bulletsToErase = [NSMutableArray array];
for (Bullet *b in bs) {
[b pulse];
if ([self bulletOutOfBounds:b]) {
[bulletsToErase addObject:b];
}
}
for (Bullet *b in bulletsToErase) {
[b removeFromParentAndCleanup:YES];
}
[bs removeObjectsInArray:bulletsToErase];
}
“高效”的含义究竟是什么?较少的代码?内存使用量较少?更快的代码?更容易维护?这部分代码您认为效率低下,所有这一切? – LearnCocos2D 2014-10-11 09:26:24
所有这些将是“更好”。更快,更少的内存使用。 – quantumpotato 2014-10-13 23:12:48
更好地解决一个已知的性能问题,可以衡量并归因于这些特定的代码行? – YvesLeBorg 2014-10-15 11:14:51