2014-09-22 66 views
2

我想用Java製作一個2D遊戲,它非常簡單。問題是我在我的英雄身上得到了一個奇怪的矩形,因爲我不知道如何忽略我繪製自己的圖片中的空白區域。用java編寫遊戲圖像

/// loading the image/// 
private ImageIcon x= new ImageIcon("path"); 
private Image hero=x.getImage(); 

//============= 

//=========drowing==== 


public void paint(Graphics g){ 

    Graphics2D g2d=(Graphics2D)g; 
    g2d.drawImage(background,0,0,null); 
    g2d.drawImage(hero,100,100,null); 

} 
+4

嘗試保存圖像與透明背景,而不是一個PNG文件白色背景。 – WOUNDEDStevenJones 2014-09-22 14:25:19

回答

3

這與Java沒有任何關係。就像@WOUNDEDStevenJones已經提到的那樣,您只需將圖像保存爲具有透明背景的PNG文件即可。

有很多方法可以做到這一點,谷歌是你的朋友。我個人使用GIMP,這裏是一個相關的問題,解釋如何做到這一點:https://graphicdesign.stackexchange.com/questions/5446/making-the-background-of-an-image-transparent-in-gimp

這裏是直接GIMP教程:http://docs.gimp.org/en/gimp-using-web-transparency.html

0

您可以使用例如photoshop或gimp(免費),您可以在其中應用圖層。你可以做一個透明的圖層,並把你的英雄放到這一層。 如果你的英雄圖片有背景顏色,那麼你可以選擇(在提到的程序中)只有你的英雄,沒有背景,選擇後可以刪除背景。 希望這有助於。