私は赤と青のShapes
が画面上を移動するゲームを作っています。私はどのように異なる色(紫色)に重複するようにするために高くて低く見えた。私はJava2Dのみを使用していますが、私の理解にはShadersをサポートしていません。私は赤の形を1つのBufferedImage
に描画し、青の形を別のものに描画してから、AlphaComposite
を使用して色を結合して画面に描画しようとしましたが、正しい結果が得られませんでした。 255,0255は私の意見では紫色のためにひどいので、私は127,0,0と0,0,127を赤と青の代わりに255の代わりに使用しています。私は効果的にthisが好きです。重なり合った図形を新しい色にする方法は?
1
A
答えて
0
copegの提案のおかげで、私はそれを理解することができました。
//Attacks
BufferedImage attackImg = new BufferedImage(S_WIDTH, S_HEIGHT, BufferedImage.TYPE_INT_ARGB);
Graphics2D ag = (Graphics2D) attackImg.getGraphics();
//Make all of attackImg a transparent image
ag.setComposite(AlphaComposite.Clear);
ag.fillRect(0, 0, S_WIDTH, S_HEIGHT);
ag.setComposite(AlphaComposite.SrcOver);
//Render red attacks to attackImg
ag.setColor(new Color(127, 0, 0, 255));
for(Shape s : redAttacks)
ag.fill(s);
//Render overlap areas using composites to attackImg
ag.setColor(new Color(127, 0, 127, 255));
ag.setComposite(AlphaComposite.getInstance(AlphaComposite.SRC_IN));
g.setColor(new Color(0, 0, 127, 255));
for(Shape s : blueAttacks)
{
ag.fill(s);
g.fill(s); //Render blue attacks
}
//Render red and purple attacks
g.drawImage(attackImg, 0, 0, null);
+0
また、[Area](https://docs.oracle.com/javase/7/docs/api/java/awt/geom/Area.html)クラスを使用して2つの図形を交差させることもできます(描画に使用できます)交差点は別の色) – copeg
関連する問題
- 1. Excelワークシート上で重なり合った図形を移動する
- 2. JavaFXで図形を他の図形に重ねる方法
- 3. ボタンを使って図形を描いて色付けする方法は?
- 4. PowerPoint 2007でVBAを使用して2つのテキストボックスまたは図形が重なり合っている場合の検索方法
- 5. 異なる図形を同じ図形に重ねるPython
- 6. Bokeh軸上でティック数を調整する方法(ラベルは小さな図形に重なっています)
- 7. 散布図の重なり合ったトレンドラインR
- 8. 染色体図形に沿って位置をプロットする方法
- 9. 図形の下で色を排除する方法は? (SDL2)
- 10. ウィンドウフレームなしでJavaで図形や図形を表示する方法は?
- 11. 分布ごとに異なる形と色の混合データの散布図を得る方法は?
- 12. vboxに図形を正しく積み重ねる方法は? JavaFX
- 13. 図形を選択してマクロを実行して色を塗る方法は?
- 14. Excelの図形に似たVB6アプリケーションで図形を作成する方法
- 15. MouseDragは正方形が意図したとおりに動作しない
- 16. アンドロイド - ランダムな色の図形を描く
- 17. Chromeで重なり合った背景画像が重なり合っている星の評価
- 18. RandomForestClassifier可視化 - 重なり合う色
- 19. フレーム内の重なり合ったJLabel
- 20. 積み重なった棒グラフで色を割り当てる
- 21. 異なる背景色のMATLAB図形を保存します
- 22. Rでvarclusを使って樹形図を切り取る方法は?
- 23. Amchartで積み重なった棒グラフの色を変更する方法
- 24. 編集した図形の新しい座標を取得し、中心を動的に計算する方法
- 25. Javaグラフィックス - 2色の図形
- 26. Pythonのより良い3D図形のために、pyplot plot_surfaceの図の一部を隠す方法は?
- 27. Cで作成したビットマップファイルに2つ以上の図形が重なっていますか?
- 28. bokehで図形をオーバーレイするか図形のハンドルを得る方法はありますか?
- 29. 図面パネルで図形を選択する方法は?
- 30. 2つのテクスチャが1つの図形で重なっています
'どこでも、彼らは別の色をオーバーラップ(紫)'手動で重複オプションを着色されています:ここでのコードセグメント(:私は描いてる形状が攻撃されているコンテキスト)がありますか?たとえば、それぞれの図形をそれぞれの色で描画し、交差点がある場合はそれを見つけ、別々に色付けします。 – copeg
@copegはい、これは機能しました!ありがとう!私はこの質問を見つけた他の人のために今答えに取り組んでいきます。 – Ryguy9999