3

我正在向我的 Android 项目添加一个 CCTMXTiledMap,但它没有显示在屏幕上。

这是我尝试过的。我使用 Tiled 创建了地图,更改了 Base64 gzip 中的压缩以摆脱 indexOutOfBounds 问题,并使用以下通用代码加载它:

CCTMXTiledMap map = CCTMXTiledMap.tiledMap("sewer.tmx");
addChild(map);

我还在 addChild 方法中尝试了不同的值,例如

addChild(map, 0)

或-1,或1,但没有运气。

这是一些调试数据:

map = <instance of class org.cocos2d.layers.CCTMXTiledMap| Tag = -1>
map bounding box d=((0.0, 0.0),(768.0, 768.0))
map bounding anchor point =(0.0, 0.0)
map bounding position =(0.0, 0.0)
map bounding content size =<768.0, 768.0>
chidren =[<instance of class org.cocos2d.layers.CCTMXLayer| Tag = 0>]

我的 tmx 文件:

<?xml version="1.0" encoding="UTF-8"?>
<map version="1.0" orientation="orthogonal" width="32" height="32" tilewidth="24" tileheight="24">
<tileset firstgid="1" name="sewer_tileset_large.png" tilewidth="24" tileheight="24">
<image source="sewer_tileset_large.png" trans="ff00ff" width="1920" height="2170"/>
</tileset>
<layer name="Tile Layer 1" width="32" height="32">
<data encoding="base64" compression="gzip">
    H4sIAAAAAAAAC+3BAQ0AAADCoPdPbQ8HFAAAAPBuEQAcxwAQAAA=
</data>
</layer>

png 图像 sewer_tileset_large.png 位于资产文件夹中,在 sewer.tmx 文件旁边。我注意到 Tiled 生成的 tmx 文件中省略了 .png 扩展名,所以我手动添加了它。但仍然没有运气。

我错过了什么?

4

0 回答 0