cocosbuilder2.1、cocos2d 2.0でCCSprite回転アニメーションを作っています。iPhone4S(iOS 8.0.2)、iPhone5 シミュレーター、iPad 2 シミュレーター、iPad Retina シミュレーターでは問題なく動作しますが、iPhone5S(iOS 7.1.1)、iPhone5S シミュレーター、iPad Air シミュレーター、iPhone 6 シミュレーター、iPhone では「ジッタリング」の問題があります。 6 プラス シミュレーター。ビルド設定は次のとおりです。
[ターゲット] の下の [ビルド設定] で:
ベース SDK = 最新の iOS (iOS 8.0); 有効なアーキテクチャ = arm64 armv7 armv7s
ターゲットの下で一般的に:
展開ターゲット = 6.0
最初は cocosbuilder のバグかと思いましたが、回転するスプライトを手動で作ってテストした結果、cocos2d 2.0 の iPhone5S との互換性に何か問題があるように感じました。
コード: 最初のシーンのレイヤーで
-(void)onEnter {
[super onEnter];
...//play music
...//load image resources
CCSprite *testSprite = [CCSprite spriteWithSpriteFrameName:@"testIMG.png"];
testSprite.position = ccp(200,200);
[self addChild:testSprite];
CCRotateBy *rotateAction = [CCRotateBy actionWithDuration:3 angle:360];
[testSprite runAction:rotateAction];
...//other stuff, nothing related with CCBReader or cocosbuilder
}
「ジッター」の問題は、testSprite の回転値が、適切な値に設定された後、フレームごとに 0 に設定されたかのように発生します。たとえば、1 に回転し、次に 0 に戻り、次に 2 に戻り、次に 0、3、0、4、0 に戻るようなものです。これらはすべて非常に迅速に行われるため、一種の「まばたき」になります。最後に、回転は常に 0 にリセットされます。
グーグルで検索してみましたが、これは非常に個人的な問題であるかのように、関連するものは何も見つかりませんでした。それが個人的な問題であれば、バグがどこにあるのかを見つけるためにどの方向に向けて取り組むべきか教えてください。ありがとう!