BUG 1:地图的每个图块之间有一些细密的间隔,特别是场景移动时更加明显,将游戏截图放大,可以很明显看到这个细线
解决方案:通过设置ccConfo.h中的CC_FIX_ARTIFACTS_BY_STRECHING_TEXEL宏来解决。
将 #define CC_FIX_ARTIFACTS_BY_STRECHING_TEXEL 0
改为 #define CC_FIX_ARTIFACTS_BY_STRECHING_TEXEL 1
ccConfig.h位置:/cocos2dx/include/ccConfig.h
解决大致原理是将贴图的适用范围改成99%,将纹理的四边形的范围缩小一圈
BUG2: 场景发生滚动过程中地图会抖动
解决方案:我们可以通过给TiledMap的每个图层的纹理开启抗锯齿效果来解决这个问题
具体代码如下:
CCArray *pChildrenArray = map->getChildren();
CCSpriteBatchNode *child = NULL;
CCObject *pObject = NULL;
CCARRAY_FOREACH(pChildrenArray,pObject){
child = (CCSpriteBatchNode *)pObject;
if(!child)
break;
child->getTexture()->setAntiAliasTexParameters();
}