1

画面上を動き回る少数のキャラクターを使ったシンプルな2Dゲームがあります。各キャラクターの周りの背景だけが見える戦争の霧を作りたいです。

うまくいけば、それは明らかです(霧が多すぎない?!?!)。私の考えは、黒いビットマップを作成してから、各文字の中央に「透明な」ディスクを描くことでした。次に、背景を描画し、文字を描画し、最後にこのオーバーレイビットマップを上に描画します。

「透明な」ディスクを黒いビットマップに描画する方法がわからない。

アイデア、または代替デザインはありますか?

4

2 に答える 2

1

アルファが0に設定されているPaintオブジェクトでCanvas.drawCircle()を使用します。または、ビットマップを使用して透明な円を作成し、別のビットマップのように描画することもできます。黒にフェードする強力なコントロールが必要な場合は、ビットマップベースの円の方が有利です。

  1. 黒のオーバーレイを保持するビットマップを作成します
  2. ビットマップを黒で塗りつぶします
  3. 穴を開けたい場所に透明な円を描きます
  4. ゲームキャンバス上にオーバーレイをペイントします
  5. 繰り返す。
于 2011-09-02T22:31:59.377 に答える
0

実際、戦場の霧は持続する必要があるため、ビットマップが大きすぎてアクティベーション間でロード/保存に時間がかかりすぎたため、ストレートビットマップではなく不透明なタイルソリューションを選択する必要がありました。

于 2011-10-03T21:06:54.860 に答える