2

cocos2d を使用して「まだ別の iOS」ゲームを作成していますが、スプライト アニメーションの 1 秒あたりの許容フレーム数はどれくらいで十分でしょうか?

これは、ゲームの見栄えを良くするために描画する必要があるアニメーション フレームの数に関する、より理論的な問題です。たとえば、アニメーションの専門家は 1 秒間のアニメーションに 32 フレームを描きたいと思っていますが、私は 4 フレームで十分だと思います。誰も気付かないかもしれない何かのために RAM を犠牲にしたくありません。では、1 秒間のスプライト アニメーションを描画するのに最適なフレーム数は? 4,6,8,12,16,20,24,32?

更新:新しい iPad 用の高解像度グラフィックスを作成すると、24 フレームの単一のスプライト アニメーションが 2048x2048 ピクセルのテクスチャ アトラス内に収まりません :( そして、RAM の懸念からこれらの多くを持ちたくありません。 . それとも、そもそもここで何か非常に間違ったことを考えているのでしょうか?

4

4 に答える 4

4

人間の目とその脳のインターフェースである人間の視覚システムは、1秒あたり10〜12の別々の画像を処理し、それらを個別に認識できます。

[ソース]

ですから、アニメーションがスムーズに認識されるように、これよりも高いものを検討します。

よくわからない理由で、これらの数値の倍数を提案したいので、通常、キャラクターアニメーションの場合は24 fpsを使用しますが、火の玉の場合はおそらく6 fpsになります(たとえば)

しかし、結局のところ、アニメーションを高速で実行することによる速度の低下にはあまり気づいていません。さまざまなフレームレートで更新するのにかかる時間を測定するとよいでしょう。


于 2012-08-22T07:46:54.483 に答える
2

FPS に関する限り、私は自分の iPhone アプリで 15FPS を使用しましたが、CPU 時間やディスク容量をあまり使用しなくても問題なく動作し、見栄えもよくなりました。ニーズに合った適切な値を見つけるだけで、もう心配する必要はありません。アニメーションのニーズにテクスチャ アトラスを使用することは、実際の問題です。非常に小さなテクスチャを大量に使用し、アニメーション ループが非常に小さい (つまり、1 つのアトラスにアニメーション サイクル全体が含まれる) 場合は、アトラスの恩恵を受けることができます ( optimizing-texture-atlasesを参照)。ただし、アニメーションが特定のサイズ (幅 x 高さまたは持続時間) に達したら、アルファ チャネルをサポートするビデオ形式を使用する方がよいでしょう (たとえば、displaying-animations-in-opengl を参照)。私が提案するアプローチについて読みたい場合は、以下をご覧ください。アルファ チャネルをサポートするムービー ファイルからの OpenGL テクスチャのロードを実装する Xcode プロジェクトのソース コードについては、iOS でアルファ チャネルを使用して OpenGL テクスチャをロードします。

于 2013-06-15T21:45:01.623 に答える
2

私の意見では、ここで言うべき最も重要なことは次のとおりです。

この問題は、ゲームの成功に不可欠ではありません

人間の目で見ることができるかどうかに関係なく、iOS 用の 2D ゲームを作成している場合、最も重要なことは、そのゲームが楽しくプレイでき、見栄えがよく、スムーズにプレイできることです。それに集中してください。

開発が簡単で便利なアニメーション用のフレーム数から始めます(つまり、手間がかかりすぎず、サイズを気にする必要がありません)。心配。そうでない場合、問題はフレームの量ではなく、フレームが特定の動きでどのような内容を示しているかです。

物理的な議論に関しては、1秒間に約12フレームをキャッチするため、目では区別できないと考えられたため、24 fpsが映画に選択されたフォーマットでした. ただし、24 fps で表示されるビデオ素材と、より高いフレームレートで表示される素材との違いを確認できることが判明しました。その理由は、人間の脳は賢く、幻想にだまされないからです。

しかし、私の意見では、この議論は映画制作者向けであり、2D ゲーム制作者向けではありません。アニメーションの 24 fps は、おそらく非常にやり過ぎです。人々は、小さな画面でプレイされるゲームに対して、ほぼ同じ期待を抱いているわけではありません。彼らは、プレイアビリティ、滑らかさ、そして一般的なフィーリングと素晴らしさに焦点を当てます. 3D ゲームを作成している場合、アニメーションはオンザフライで補間によって 3D エンジンによって計算されるため、アニメーションは (理論的には) 最大 60fps (またはゲームの fps が何であれ) になる可能性があります。2d では、開発プロセスにとって理にかなっている以上のことは期待できません。

于 2012-08-22T12:40:27.997 に答える
1

それは必ずしもフレーム数に帰着するのではなく、滑らかさに帰着します。人間の目は、たとえ素早い変化であっても影響を受けやすいほどフレーム レートを持っていません。

James の答えは、1 秒あたり 12 フレーム未満のものは通常途切れ途切れと見なされるという点で正しいです。十分に高い数値を目指して途切れを回避しようとするのではなく、いくつかの異なるレートを試して、ほとんどの人がまだ滑らかであると考えるが、予算に合ったフレームレートを持つものを選択してください. (もちろん、キャラクターの動きのペースなども考慮する必要があります。)

さらに、装飾的またはあまり重要でないものは、それほど多くのフレームを持つ必要はありません。フレームレートの適切な最小公分母を選択すると、これが奇妙に見えなくなります。

于 2012-08-22T07:52:09.690 に答える