スプライトをアニメートしようとしています。cocos2dのWebサイトでは見た目はとても簡単ですが、試してみるたびにエラーが発生します。私はそれを機能させるためにいくつかのコードをダウンロードすることができましたが、1つのスプライトアニメーションは6つのファイルを取ります。左右に歩いたり、ジャンプしたり、登ったり、転んだりする必要のあるキャラクターがいます。つまり、35個のファイルを見ているということです。少し合理化できませんか?本来よりもずっと難しいようです。
ありがとう、ジョシュ
スプライトをアニメートしようとしています。cocos2dのWebサイトでは見た目はとても簡単ですが、試してみるたびにエラーが発生します。私はそれを機能させるためにいくつかのコードをダウンロードすることができましたが、1つのスプライトアニメーションは6つのファイルを取ります。左右に歩いたり、ジャンプしたり、登ったり、転んだりする必要のあるキャラクターがいます。つまり、35個のファイルを見ているということです。少し合理化できませんか?本来よりもずっと難しいようです。
ありがとう、ジョシュ
ココスは素晴らしいです。デモ プロジェクトに時間を費やし、メッセージ ボードでたむろし、それを続けるだけです。
次のようにスプライトをアニメーション化します。
id action = [Sequence actions:
[ScaleTo actionWithDuration:.3 scale:0.7f],
[ScaleTo actionWithDuration:.3 scale:1.0f],
nil];
[[self getByTag:FOO] do:action];
これにより、タグ FOO を持つスプライトが 0.3 秒で 70% に縮小され、0.3 秒で 100% に戻ります。
はるかに複雑なアニメーションが可能です。基本を理解するだけで、少なくとも画面上で物を飛び回らせる限り、世界はすぐに変わります。
UIImageView* headBandAnimation = [[UIImageView alloc] initWithFrame:CGRectMake(25, 205, 100, 50)];
headBandAnimation.animationImages = [NSArray arrayWithObjects:
[UIImage imageNamed:@"band1.png"],
[UIImage imageNamed:@"band2.png"],
[UIImage imageNamed:@"band3.png"],
[UIImage imageNamed:@"band4.png"], nil];
headBandAnimation.animationDuration = 0.5;
headBandAnimation.animationRepeatCount = 0;
[headBandAnimation startAnimating];
[self.view addSubview:headBandAnimation];
このルートを行きたい場合は、cocos2d なしでアニメーションを行う方法です。
Cocoa With Loveには、CoreAnimation を使用して作品を書くことに関する短いシリーズがあります。
Cocoaは慣れるまでにかなりの時間がかかり、非常に複雑に見えますが、私が使用した他のほとんどの GUI ツールキットと比較すると、突然非常にエレガントでシンプルに見えます。サンプル コードとほとんどのチュートリアル (私がリンクしたものを含むが、程度はやや劣るが) の問題は、完成したアプリケーションしか表示されず、増分が表示されないことです。「空のキャンバスがある」、「円を描く方法を考え出した」、「円をアニメーション化した」ということはありません。
新しいアプリケーションを作成してみてください。canvas-thing を初期化するビットについては、サンプル コード/IB プロジェクト/チュートリアル/ドキュメントを参照してください。次に、単純な形状を追加するコードを探します。次に、コードをアニメーション化するコードを探します (たとえば、Genericrich の回答)。