0

我已经做了一些基本的东西,我可以在屏幕上均匀地平铺一个草瓷砖,我可以在屏幕上显示一个透明的纹理,但我似乎找不到任何关于从更大的精灵表加载精灵的文档。

我如何将图像切成更小的图像?还是有不同的方法来做到这一点?

4

1 回答 1

4

Slick 中有一个SpriteSheet 类可以做到这一点。

Slick 中的 SpriteSheets 是由一系列大小均匀的图块组成的大图像。每个图块通常是 Sprite 中的一个动画帧。在SpriteSheet构造函数中,您可以指定图像(包含所有图块),以及工作表中图块的宽度/高度,以及任何间距和边距,如果您有/需要的话。

最后,该getSprite(x, y)方法允许您检索指定的图块,就好像它是 2D 数组中的一个元素一样。换句话说,如果您有SpriteSheet16 个瓷砖,它们排列在 4x4 瓷砖网格中,那么要获得第 3 列第 2 行中的瓷砖,您可以调用getSprite(3, 2);

我相信索引getSprite(x, y)是从零开始的,就像 Java 中的数组一样。

于 2011-12-19T03:56:55.853 回答