0
我目前正在制作2D游戏,而且我正在制作阴影。我有一个缓冲的图像背景,只是一个黑色的矩形放在屏幕上,一个透明的三角形缓冲图像,将用于玩家观看距离。我想要做的是在我的游戏中绘制黑色背景缓冲图像,然后在玩家所在的位置绘制透明三角形,并且黑色背景不会显示在此透明三角形内。通过图像的透明度
这可能给你什么,我想要做更深入的了解:
这里是我的影子类:
private BufferedImage diamond;
private BufferedImage background;
public Shaders(World world) {
try {
diamond = ImageIO.read(getClass().getResourceAsStream("/GUI/DIAMOND.png"));
background = ImageIO.read(getClass().getResourceAsStream("/GUI/BACKGROUND.png"));
} catch (Exception ex) {
ex.printStackTrace();
}
this.world = world;
}
public void draw(Graphics g2) {
}
可能的重复[如何创建循环bufferedimage,而不是在Java中使用图形创建一个矩形的一个](http://stackoverflow.com/questions/23669333/how-to-create-a-circular- bufferedimage-rather-creating-a-rectangular-one-in) – haraldK 2015-02-10 09:29:00
看起来像你的图像是**不**透明!?也许你必须先使它透明... – 2015-02-10 09:54:12
如果你想知道如何使某种颜色透明,然后看看http://stackoverflow.com/questions/3101446/how-to-convert-an-image-into -a-透明图像中的Java – 2015-02-10 09:57:23