【发布时间】:2012-08-27 11:08:48
【问题描述】:
如何为多个精灵使用单个 PNG 图像? 我正在尝试制作一个简单的 2d 游戏,但我不想拥有 20 多个不同的图像文件。 我只想将它们放在一个 PNG 文件中。
示例
Minecraft 中的terrain.png(和items.png)上有不同的图块,每个 16x16 像素区域用于块的不同纹理。
谁能提供一些代码和解释?
【问题讨论】:
-
我认为“一些代码”部分是您的责任,但是您可以有一个带有精灵网格的精灵表,将其作为 BufferedImage 读取,然后从图像中分离精灵使用 BufferedImage 的
getSubImage(...)方法。 -
这可能会有所帮助:stackoverflow.com/q/621835/469220
-
感谢你们,这对我帮助很大:D
-
这种技术叫做:纹理图集。 :)
-
另请参阅this example,其中我将图像雕刻成 9 个部分,用作
GridLayout中按钮和标签的图标。