私たちが開発しているゲームでは、サイズが 485x485 の大きなスプライトをアニメーション化する必要があり、アニメーションには約 30 フレームがあります。このようなアーティファクトのアニメーションには問題があります。以下にリストされているいくつかの解決策を試しましたが、残念ながらまだ解決策を見つけることができませんでした.
タイリング
次の理由により、すべてのフレームを 1 つの大きなタイルに配置することはできません。
- テクスチャ サイズは 2 の累乗である必要があるため、ほとんどのデバイスで黒く表示されます。
- テクスチャ サイズを 2 の累乗にすると、ほとんどのデバイスで処理するには大きすぎます
- AndEngine の推奨最大テクスチャサイズは1024x1024 のようです。
スプライトを分ける
もう 1 つのオプションは、各テクスチャ、したがって各フレームを別々にロードし、Sprite
(ここで説明されているように) に配置することです。これは非常にうまく機能し、適切なタイミングで各スプライトの可視性を切り替えると、ユーザーはアニメーションを見ることができます。
この方法の問題点は、アニメーション全体のロードにかなりの時間がかかることです。これは、ロード画面のため、ゲームの最初のロード時には表示されませんが、ゲームの後半でアニメーションを変更する必要があり、ゲームのロードには約 2 ~ 3 秒かかります。ロード画面を表示することはオプションではありません。
別スレッドでの読み込み
新しく作成された別のスレッドにテクスチャをロードしようとしましたが、スレッドがテクスチャをロードしている間でも、ゲームの描画が一時停止しているようです。
その他のオプション?
私には選択肢がありません。また、50x50 ピクセルを超えるテクスチャをアニメーション化しようとした人は誰もいないようです。同様のケースを持つ人を見つけるのは非常に難しいからです。
私の質問は、AndEngine で大きなテクスチャをアニメートすることさえ適切に可能ですか?