我在纹理地图集上关注libgdx tutuorial。这是纹理图集文件的摘录。 index
参数的含义是什么?在什么情况下它对程序员有用?所有纹理区域都有它,并且它们在所有纹理区域中都是相同的。
prehistoric.png
format: RGBA8888
filter: Nearest,Nearest
repeat: none
background
rotate: false
xy: 2, 2
size: 1280, 720
orig: 1280, 720
offset: 0, 0
index: -1
trex
rotate: false
xy: 1286, 479
size: 179, 243
orig: 179, 243
offset: 0, 0
index: -1
caveman
rotate: false
xy: 1286, 319
size: 83, 156
orig: 83, 156
offset: 0, 0
index: -1
答案 0 :(得分:3)
来自Javadoc:
原始图像文件名末尾的数字,如果没有则为-1。
当精灵被打包时,如果原始文件名以数字结尾,则它将作为索引存储>并且不被视为精灵名称的一部分。
我还应该补充一点,该索引也用于findRegion(String name,int index)方法,该方法返回找到的具有指定名称和索引的第一个区域。
答案 1 :(得分:1)
它通常用于动画。您可以将帧编号附加到每个动画帧的文件名,然后再将它们打包到图册中,即run0.png,run1.png,run2.png等。在纹理打包期间,将从精灵中删除该编号。 ; s名称并用作其索引。然后你可以一次加载动画:
animation = new Animation(0.1f, atlas.findRegions("run"));
当原始文件名未以数字结尾时,索引为-1。