在Tiled中制作一幅地图,用的图片砖块分辨率为32x32.
iOS设备为iPhone 4s.
在未打开高清屏支持的cocos2d v2.x版本中,运行log显示480x320.遂启用高清屏支持:
[CCdirector sharedDirector] enableRetinaDisplay:YES];
重新运行App,可以发现分辨率变为960x640,Tile地图显示也是高清瓦片.
但是同样的地图,地图集图片在cocos2d v3.4中显示,即使app运行时分辨率是960x640,但是地图显示明显是放大后的显示效果:
run cocos2d v2.x:
run cocos2d v3.4:
可以看到在v3.4中地图被放大了2倍,某些情况可能正是我们需要的,但是这里怎么让它像在v2.x中那样高清显示呢?
在App初始化代码的适当位置加入如下一句:
NSInteger device = [[CCConfiguration sharedConfiguration] runningDevice];
if (device == CCDeviceiPhoneRetinaDisplay) {
[CCDirector sharedDirector].contentScaleFactor = 1.f;
}
即将CCDirector实例的contentScaleFactor属性设为1.f而不是高清屏下默认的2.0即可. ;)