0

主に多くの色付きの形状を描画することによって構築される粒子ベースのゲームを書いています。

質問1)

ほとんどの敵ユニットでは、ペイントを設定してからキャンバスを通して四角形を描くことで、4 つの層状の四角形を描いています。

ビットマップで描いたほうがいいのか、キャンバスの描画ツールで描いたほうがいいのか迷っていました。描きたい敵ユニットの画像を簡単に1枚作ることができました。

質問2)

画面に描画する必要がある画像について、どのようにロードする必要があるのか​​ 疑問に思っていましたか?

現在、大量の .png 画像が次のようにロードされています。

direction1 = BitmapFactory.decodeStream(assetMgr.open("direction1.png"));

RGB565 は、画面に描画する高速画像タイプであると読みました。Microsoft ペイントにはいくつかの保存オプションがありますが、ほとんどのプログラムはビットマップ形式ではなくビットマップ形式でのみ保存します。その新しい形式を使い始めるとしたら、次のようにします。

  1. 新しい画像を作成し、同じ読み込みコードを使用します。
  2. 同じ画像を使用してBitmap bmp = Bitmap.createBitmap(width, height, Bitmap.Config.RGB_565);、初期ロード形式から RGB565 形式に変換するようなものを追加します。
  3. 新しい画像を作成し、ロード コードを変更します。

助けてくれてありがとう!とても感謝しています。

4

2 に答える 2

0
  1. なし。常に OpenGL を使用することをお勧めしますが、唯一の欠点は、ハードウェア アクセラレーションを使用しているため、バッテリーからより多くのエネルギーを必要とすることです。

  2. RGB565 は、画像が 16 ビットを使用することを意味するため、これを探す必要があります。何も変換せず、使用する形式で作成してください。

于 2012-07-06T14:35:45.667 に答える
0

ビットマップがフレームごとに移動していない場合は、invalidate() メソッドの呼び出しを減らすようにしてください。キャンバスは、変更が加えられて更新された場合にのみ再描画する必要があります。

于 2014-12-04T16:08:50.083 に答える