Разбор файла XML из редактора карт Tiled? - PullRequest
1 голос
/ 19 марта 2012

Я настраиваю фреймворк для моего нового проекта и решил использовать 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.

Любая помощь в понимании этого будет принята.

1 Ответ

4 голосов
/ 19 марта 2012

Это данные спрайта, сжатые с использованием алгоритма 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  ...................
...
...