我正在使用纹理打包器libgdx纹理打包器
我的libgdx游戏。我也创建了包文件。现在我有一个bloomb_burst_pack.png和一个
blobble_burst_pack.pack文件。
唯一的事情是从在线文档中,我不知道我应该如何从包文件中检索所有15个png图像。
我的图像名称类似于气球_颜色_0001.png、气球_颜色/0002.png,我已经将它们打包在一个气球_包装.png 中
我尝试过的小代码是:
atlas = new TextureAtlas(Gdx.files.internal("Animations/balloon_color_pack/balloon_burst_pack.pack"));
for (int i = 0; i< 15;i++ ) {
region[i] = atlas.findRegion("balloon_colour"+"000"+i);
System.out.println("region detected is"+region[i].getRegionX());
}
任何使用过相同纹理包装机的人,请给我推荐使用打包文件。如果可能的话,请一步一步地向我解释。。
谢谢。
png名称的问题是纹理打包器会修剪第一个'_'之后的所有名称因此,您必须将png的名称更改为类似于气球颜色_0001.png、气球颜色_0002.png等的名称,而不是气球颜色_0001:png等,然后使用kumar saurabh的代码加载所有文件
或者在当前设置中,您可以使用name作为气球,而不是ballon_color
当您使用Texture Packer
工具并打包图像时,它提供了balloon_burst_pack.png
文件及其相关的打包文件balloon_burst_pack.pack
(例如),其中根据名称将所有图像的x
和y
坐标包含在一个balloon_burst_pack.png
文件中
例如,您可以在balloon_burst_pack.pack
中找到x
和y
的坐标以及balloon_color_0001.png
的大小。一旦你找到了它的坐标和大小,你就可以通过TextureRegion
类获得它。
Texture balloonBrust = new Texture(Gdx.files.internal("path of your balloon_burst_pack.png file"));
TextureRegion baloon1Region = new TextureRegion(balloonBrust ,x coordinate ,y coordinate, width, height);
现在您可以使用SpriteBatch
类绘制它。