我已阅读cocos2d 视网膜显示器指南。我的游戏中既有常规的也有-hd
资产。问题是视网膜显示设备看起来与非视网膜显示设备不同,好像图像已缩放到 50%。考虑下面的截图,左边是 iPhone(非视网膜),右边是 iPhone 5(视网膜):
请注意,在右侧屏幕截图中,尽管-hd
资产为 @2x ,但资产已按比例缩小了 50% 。例如,“叶子图标”有green_icon.png
(50x50 px) 和green_icon-hd.png
(100x100 px)。在左图中,它显示为@ 50x50 像素(正确),但在右图中,它显示为 25x25 像素(似乎错误地缩小了视网膜图像)。
这是我的启动代码:
NSString *EXT_HD = @"-hd";
CCFileUtils *sharedFileUtils = [CCFileUtils sharedFileUtils];
[sharedFileUtils setEnableFallbackSuffixes:YES];
[sharedFileUtils.suffixesDict setValue:EXT_HD forKey:(NSString*)kCCFileUtilsiPhoneHD];
[sharedFileUtils.suffixesDict setValue:EXT_HD forKey:(NSString*)kCCFileUtilsiPhone5HD];
[sharedFileUtils.suffixesDict setValue:EXT_HD forKey:(NSString*)kCCFileUtilsiPadHD];
[sharedFileUtils.suffixesDict setValue:EXT_HD forKey:(NSString*)kCCFileUtilsMacHD];
[[CCDirector sharedDirector] enableRetinaDisplay:YES];
(请注意,我也尝试过明确禁用视网膜显示但没有运气)。
这是我创建精灵的实际实现(例如,绿叶图标):
[CCSprite spriteWithFile:fpIcon];
很直接...