求助!移植Android 但是瓦片地图不显示。

最新cocos2dx 和androidstudio +vs2015
在Windows正常运行,放到android 真机上调试发现地图不显示。
左下角自带的顶点数目显示表明 地图没有被描绘,
经过调试发现并非没有加载,只是没有被描绘出来。
即addChild(_tilemap,0); 有问题,但问题是我跟踪addChild(_tilemap,0);前后
_tilemap 引用计数的确从1 变成2了,其parent 的确也是正常
位置也是可视Size原点:
Vec2 origin = Director::getInstance()->getVisibleOrigin();
_tilemap->setAnchorPoint(Vec2::ZERO);
_tilemap->setPosition(origin+Vec2::ZERO);
它的可视性 我并没有有设置为否,我也特意调试发现也是默认true.

那么结论是 地图被加载了,数据全部都可以读取,从数据上看他的确也被添加到layer上了
但就是不显示,不仅是视觉上 黑屏 从左下角的顶点信息也看得到 地图的确没被描绘在屏幕上。

可以发个demo 出来 我帮你测一下

谢谢你,这是我的demo:
https://github.com/huzhongyidihao/menghuanxiyou

主要是在MainLayer 文件
AppDelegate 我注释了自带的资源尺寸匹配,因为我就一套尺寸
我觉得问题也出在屏幕匹配这里,但到现在还没有结果。

老哥,我在手机上试了试寻路功能,程序崩溃了,报错跟踪我的_tilebaselayer没有被初始化,就是大地图基础层为空,我当时就惊呆了,因为和其他层一样 都是使用的getLayer() 初始化 TMXLayer* 其他层都可以加载,即便和baselayer 理论上组成最接近的 _tileblockage 都可以被加载,这就很纳闷了。
现在问题在于 是在Android上瓦片地图一个层的图片没有被读取,想到是地图资源路径的问题,但VS下是可以的,我找到了Androidstudio 下的地图资源和 Resources下的地图资源没有发现差异,打开地图文件看的 引用图片为jpg 顿时我就知道问题在这里了,我这个地图只有base层是JPG大图,用作其他层的图都是PNG ,这个梦幻西游的jpg地图我也曾转换过PNG放图瓦片编辑器 但是导入报错,只能用JPG。到这里我只是猜测是这个JPG图片的锅,暂时也不知道有啥解决办法。

屋漏偏逢连阴雨,下午新做了张地图代替原地图,又发现在vs下也看不到地图,但与之前的问题同是,这个纯粹是图片没加载,_baselayer 并不为空,因为它打印这条提示:
fullPathForFilename: No file found at /cc_2x2_white_image. Possible missing file
找不到图片咯?我又换上之前的地图,依旧不显示!也抛出这个,又试了很多次无果。
最后我在别的layer 加载这些地图,奇迹发生了,这些地图都可以被正常显示!!!
换言之 地图文件没问题,换了个layer加载就OK了,一旦切回我的MainLayer 即原先加载地图的layer,就会打印上面的提示,真是很爆炸

1赞

终于算告一段落了,晚上又试了试,之前的抽风又恢复了,不在出fullPathForFilename: No file found at /cc_2x2_white_image. Possible missing file这个鬼了,于是我拿出下午做的新地图,通过VS后 在手机成功运行显示地图,果然 前面的推测都是对的,能不用JPG就不用JPG

不好意思啊,前几天比较忙,没能及时回复你。问题解决了就好,一般问题都会出在到处的 .tmx 文件上,有时候图片找不到可能是因为路径进行了更改,你可以通过 Android Studio 在真机上调试,查看文件是否有调用到