【发布时间】:2012-04-29 08:00:58
【问题描述】:
我正在开发一款游戏,它使用基于等距平铺地图的行星表面 (example)。每个平铺单元格都是一个小的 BufferedImage 元素。通过修改这些图像的像素(变暗和蓝移)来实现日夜循环,然后在每个建筑物上渲染窗口光照图(另一个静态 BufferedImage)。正确的 Z 顺序通过从左上角到左下角的顺序保持,并且只绘制瓷砖条。不幸的是,如果昼夜转换发生在非常快的游戏速度上,这种方法实际上会破坏图像的加速,并且渲染会变得非常慢。当前的解决方案是以大量内存增加为代价为每个图块缓存多个阴影。
Graphics2D 的 Java composition modes 能否用于此目的,例如,绘制正常颜色的瓷砖,在其上绘制深色表面,然后应用光照贴图?如何确保只有普通图块的像素会受到重新着色的影响?
【问题讨论】:
标签: java bufferedimage graphics2d