我正在为我的新项目设置框架,我决定使用Tiled Map Editor。我已经设置了一个非常基本的地图,只是为了理解地图数据是如何以XML格式保存的,但我无法理解重要部分是什么。
我在记事本中打开了.tmx文件,只是为了环顾四周,没有什么能让我真正脱颖而出,说明地图中有哪些瓷砖类型。
<?xml version="1.0" encoding="UTF-8"?>
<map version="1.0" orientation="orthogonal" width="25" height="19"
tilewidth="32" tileheight="32">
<tileset firstgid="1" name="Test" tilewidth="32" tileheight="32">
<image source="../TileSet/TestTileSet.png" width="320" height="320"/>
</tileset>
<layer name="Tile Layer 1" width="25" height="19">
<data encoding="base64" Compression="zlib">
eJzjYmBgYKQh5qGx+aN4FI/iUTyKRzElmJfG5nMDMQCDZQIG
</data> </layer> </map>
这是记事本文本的复制粘贴。我可以看到方向,宽度,高度,瓷砖集源,宽度/高度等信息。
从这里我看不到我在哪里得到瓷砖信息所以我可以渲染。
这究竟是什么“eJzjYmBgYKQh5qGx + aN4FI / iUTyKRzElmJfG5nMDMQCDZQIG”?
作为参考,我正在使用D编程语言。
理解这一点的任何帮助都将受到赞赏。
答案 0 :(得分:4)
这是精灵数据,使用deflate算法压缩,然后使用Base64进行编码。
$ echo 'eJzjYmBgYKQh5qGx+aN4FI/iUTyKRzElmJfG5nMDMQCDZQIG' | base64 -d | perl -MCompress::Zlib -e 'undef $/; print uncompress(<>)' | xxd -c 19
0000000: 0a00 0000 0100 0000 0100 0000 0100 0000 0100 00 ...................
0000013: 0001 0000 0001 0000 0001 0000 0001 0000 0001 00 ...................
0000026: 0000 0100 0000 0100 0000 0100 0000 0100 0000 01 ...................
...