因为项目用要用15001500的超大型地图,目前官方的tiled支持最大只能128128,而且在内存渲染上面基本是没做过任何处理。我的地图加载进来直接就爆了。撸了快两周基本解决了问题。目前在js和jsb上都能正常的加载地图了,有提交pr,貌似api设计的不合理,官方没合并。
c++引擎部分
https://github.com/yangzhu6263736/cocos2d-x-lite/commit/a9071f46e3760fc2559abcc6f50b9a3114b4a4b5
js引擎部分
https://github.com/yangzhu6263736/engine/commit/8527b690ccb398c6cb6cfa4e361a1d44d8dc7aab
水平有限,仅供参考。
调用方式
layer.setupTilesBeyondPos(cc.p(x, y), 11)
即只显示指定点(tile)周围distance以内的格子。