1

私は非常に単純なゲームに取り組んでいます。すべてが機能しています。パフォーマンスとメモリについてのみ質問します。鳥を左から右に動かしています。鳥は3つの位置で羽を振る。

速度、パフォーマンス、メモリに関するより良いソリューションは何ですか?

  1. 異なる位置に鳥と翼がある3つの完全な写真を変更するuiviewをアニメーション化する
  2. 鳥の背景を作成し、CALayerアニメーションを使用して単一の翼の画像をアニメーション化します

返信ありがとうございます:)アレックス

更新:そして、より複雑なアニメーションはどうですか?

4

1 に答える 1

0

(質問で説明されているように)画像が3つしかないため、より単純なUIViewアニメーションアプローチを使用できます。

ただし、使用CoreAnimationするとパフォーマンスが向上します。

3 つの異なる画像を使用する場合、画像を変更してビューをアニメーション化する代わりに、それ自体のアニメーション プロパティを使用できますUIImageView

と言ってimage01.png、あなたのイメージです。image02.pngimage03.png

    UIImageView *animationImgView = [[UIImageView alloc] init];
    NSArray *animationImages = [NSArray arrayWithObjects:
                                        [UIImage imageNamed:@"image01.png"],
                                        [UIImage imageNamed:@"image02.png"],
                                        [UIImage imageNamed:@"image03.png"],
                                        nil];
    [animationImgView setAnimationImages:animationImages];   // Add images to imageView for animation.
    [animationImgView setAnimationRepeatCount:0];           // Repeat forever.
    [animationImgView startAnimating];                     // ImageView starts animating.

次に、位置をアニメーション化しますUIImageView

于 2012-12-31T05:11:26.733 に答える