使用cocos2d的时候,常常需要支持ipad设备与iphone设备以及不同的高低清版本,我们写代码的时候又讨厌写一些判断逻辑,不好型号的是,cocos2d以及TexturePacker已经可以完美的支持了。
具体操作方法如下:
程序设置:
在app加载函数中,设置如下:
CCFileUtils *sharedFileUtils = [CCFileUtilssharedFileUtils];
[sharedFileUtilssetEnableFallbackSuffixes:NO];// Default: NO. No fallback suffixes are going to be used
[sharedFileUtilssetiPhoneRetinaDisplaySuffix:@"@2x"];// Default on iPhone RetinaDisplay is "-hd"
[sharedFileUtilssetiPadSuffix:@"~ipad"];// Default on iPad is "ipad"
[sharedFileUtilssetiPadRetinaDisplaySuffix:@"@2x~ipad"];// Default on iPad RetinaDisplay is "-ipadhd"
图片处理:
直接使用图片
首先,每一张图片都需要有4个版本的图片,分别为:
imageName.png
imageName@2x.png
imageName~ipad.png
imageName@2x~ipad.png
分别代表iphone低清、高清、ipad低清、ipad高清
在程序中调用时,就可以直接写:
ccsprite *sprite = [ccsprite spriteWithFile:imageName.png];
使用plist文件
如果使用的texturepacker打包的plist文件:
1、首先需要高清的iphone版本图片集和ipad版本图片集
2、在texturepacker中的AutoSD中设置,其中iphone版本的main extension后缀为@2x,extension后缀为空
ipad版本的main extension后缀名字为@2x~ipad,extension后缀为~ipad
3、打包
然后在程序中就可以直接通过图片名称来调用了。