2

私は2Dandroid戦略ゲームを開発しています。これはSurfaceViewで実行されるため、LibGdxのパーティクルシステムを使用できません(または使用できますか?)。そして、雨の効果を出したいのですが、このようなものを目指しています(http://ridingwiththeriver.files.wordpress.com/2010/09/rain-fall-animation.gif)、スプラッシュは必要ありません最終的には効果があります(これはすばらしいことですが、おそらく多くのシステムリソースを消費します)。どうすればその雨の効果を達成できますか?何か案は?

4

3 に答える 3

3

ここに画像の説明を入力してくださいJakeWhartonDroidFlakeと呼ばれる同様のコードが1つあります。降雪効果のようですが、DroidFlakeをチェックする価値があります

于 2012-09-01T23:32:48.260 に答える
1

最も簡単なのは、雨滴をアルファ付きのPNGに入れて、最後に表示することです。スムーズにするために必要なフレームは数フレームだけですが、これがフルスクリーン画像の場合、リソースを少し消費します。

これを買う余裕がない場合は、それぞれの個別の雨滴をアルファ付きの小さなPNGファイルに入れてから、この(これらの)単一のPNGを複数回表示することができます。これにより、使用されるメモリが大幅に削減されますが、レンダリングコードは少し複雑になり、ドロップの数によっては、パフォーマンスに影響を与える可能性があります。

この2つのトレードオフは、全画面表示ではなく、より多くのドロップを含むPNGファイルを作成し、それを数回表示することです。

雨滴が飛散した別のフレーム(または複数のフレーム)を作成して、各ドロップのアニメーションを終了する前に表示したり、大きなPNGの最後のフレームに飛沫を含めたりすることができます。

于 2012-09-01T22:35:53.500 に答える
1

これを行うには多くの方法があります。次のようなスプライトシートを作成できます。

そのスプライトシートでは、各フレームで水滴が底に達するまで水を一滴進めて、スプラッシュ効果を作成することができます。次に、それをアニメーション化できる必要があります(非常に簡単です)。次に、画像の複数のインスタンスを作成するか、1つの画像を複数回描画して暴風雨を作成できます。

于 2012-09-01T22:39:40.237 に答える