我正在创建一个简单的游戏,我想给我的玩家不同的皮肤(纹理(。然而,我正在努力这样做。游戏中的每个对象都使用render(Graphics g)
但对于纹理,我能找到的最简单方法是使用bufferedImage
。现在我现在要做的方式需要render(Graphics2D g2d)
所以我不太确定该怎么做,因为抽象也是针对敌人的,我只想要它们纯色。也许它只是可以转换它们?我是编程新手,如果它很简单,很抱歉。
@Override
public void render(Graphics g) //What I have right now
{
g.setColor(Color.blue);
g.fillRect((int)x, (int)y, 32, 32);
}
public void iWantThis(Graphics2D g2d) //What I would like
{
BufferedImage img = getImg();
g2d.drawImage(img, (int)x, (int)y, 32, 32, null);
}
我只是做了Graphics2D g2d = (Graphics2D) g;