我在我的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 image,sewer_tileset_large.png位于sewer.tmx文件旁边的assets文件夹中。我注意到在Tiled生成的tmx文件中省略了.png扩展名,所以我手动添加了它。但仍然没有运气。
我错过了什么?