我目前正在使用Java2D开发基于图块的游戏,并且我正在考虑添加一些便宜的糖果。
例如,实现用于爆炸和/或烟雾的简单粒子系统(可能类似于this)。
您是否对相对容易编程的效果有任何建议,而这些效果不需要绘制大量(或根本不需要)新艺术?
表示效果的教程和代码示例也将非常受欢迎!
-我做。
PS-如果绝对必要,我可以切换到LWJGL / JOGL甚至Slick之类的东西-但我宁愿使用Java2D。
最佳答案
实现模糊和其他图像过滤效果非常容易执行。
例如,要对 BufferedImage
执行模糊处理,可以将 ConvolveOp
与 Kernel
中指定的卷积矩阵一起使用:
BufferedImageOp op = new ConvolveOp(new Kernel(3, 3,
new float[] {
1/9f, 1/9f, 1/9f,
1/9f, 1/9f, 1/9f,
1/9f, 1/9f, 1/9f
}
));
BufferedImage resultImg = op.filter(originalImg, resultImage);
不确定何时需要模糊效果,但可能会在某些时候派上用场。但我想说,由于易于实施,这是一个低落的果实。
以下是有关convolution matrices的信息。它也可以用于实现锐化,浮雕,边缘增强等效果。