framerate
でゲームを 30 fps から 25 fps に減らす方法はありますiPhone
か? 25 fpsで作成された Flash ゲームを移植し、このフレーム レートでスプライトをエクスポートしていますが、アニメーションが正しく表示されません。
何か案が?
framerate
でゲームを 30 fps から 25 fps に減らす方法はありますiPhone
か? 25 fpsで作成された Flash ゲームを移植し、このフレーム レートでスプライトをエクスポートしていますが、アニメーションが正しく表示されません。
何か案が?
代わりに、箱から出してすぐにこれを試してください:
animation = [CCAnimation animationWithSpriteFrames:frames delay:.04];
40 ミリ秒の遅延で、ゲームの残りの部分が 60 fps でフルボアをクロックしている間、25 fps (レンダリングされたアニメーション) に実際に近づくはずです (他の場所に遅延の問題がない場合)。
メソッドApp Delegate
で次のスニペットを使用して、アニメーション間隔を変更できると思います。didFinishLaunching
CCDirector *director = [CCDirector sharedDirector];
[director setAnimationInterval:1.0/25];
お役に立てれば!
編集 :
このリンクは、その対処方法に関する詳細情報を提供してくれますか?
http://www.cocos2d-iphone.org/wiki/doku.php/prog_guide:best_practices
さて、ついに解決策は別の方法です。
スプライトシートのアニメーションを最も遅くするために必要なことは、アニメーション配列にフレームを複数回追加することです。
NSMutableArray *walkAnimFrames = [NSMutableArray array];
for(int i = _spriteMetadata.spriteInitFrame; i <= _spriteMetadata.spriteEndFrame; ++i)
{
NSString *spriteFrameName = [NSString stringWithFormat:@"%@%@", _spriteMetadata.spriteBaseName, index];
for (int i=0; i<2; i++)
{
[walkAnimFrames addObject:
[[CCSpriteFrameCache sharedSpriteFrameCache] spriteFrameByName:spriteFrameName]];
}
}
あまりオーソドックスではありませんが、うまくいきます!:)
助けてくれてありがとうアンディ!