如何在iPhone/Cocos2d上调用下一个函数之前等待图像被渲染到屏幕上



是否需要等到CCSprite实际呈现到屏幕上后再继续?或者可能是一个带回调的方法来检查精灵何时完成渲染到屏幕上?

我不能使用动作序列,因为在执行此任务时所有动作都被暂停。


我没有解释清楚。我会再努力一点。我将图像添加到一个图层,然后调用一个方法。但是在图像被加载并呈现到屏幕之前,这个方法已经被调用并完成了。

CCSprite* aSprite = [CCSprite spriteWithFile:@"anImage.png"];  
[aLayer addChild:aSprite z:1];
//need application to hold here till image is rendered;
[self aMethod];

try:

-(void) draw {
    [super draw];
    [self doWhateverButDoItQuick];
}

这将在绘制感兴趣的精灵后,为该类的每个实例调用。无论你在那里做什么,如果花费太多时间,最终会降低你的FPS。假设您当前以60FPS的速度运行,并且整个周期需要12毫秒,那么您有大约4毫秒的时间在不影响FPS的情况下完成该任务。如果你太过了,你的FPS会立刻降到30。

最新更新