如何实现构建通用的cococs2d应用程序



我正在为iphone和ipad构建一个iphone应用程序。我有纹理打包器。包含我的图像的plist。我有一个普通版本,一个高清版本,一台ipad版本,和一台ipad高清版本。

例如,如果我当前正在构建菜单,我是否通过执行以下操作来设置所有菜单?

[[CCSpriteFrameCache sharedSpriteFrameCache] addSpriteFramesWithFile:@"x_buttons.plist"];
[[CCSpriteFrameCache sharedSpriteFrameCache] addSpriteFramesWithFile:@"x_buttons-hd.plist"];
[[CCSpriteFrameCache sharedSpriteFrameCache] addSpriteFramesWithFile:@"s_buttons-ipad.plist"];
[[CCSpriteFrameCache sharedSpriteFrameCache] addSpriteFramesWithFile:@"s_buttons-ipadhd.plist"];

当我创建一个按钮时,xcode如何"知道"根据设备使用哪个plist?(iphone5、iphone4、retina、ipad等)

感谢您对制作通用应用程序的帮助

John

您只需要编写[[CCSpriteFrameCache sharedSpriteFrameCache] addSpriteFramesWithFile:@"x_buttons.plist"];

AppDelegate.mdidFinishLaunchingWithOptions方法中,
更改以下行。

CCFileUtils *sharedFileUtils = [CCFileUtils sharedFileUtils];  
[sharedFileUtils setEnableFallbackSuffixes:NO];             // Default: NO. No fallback suffixes are going to be used
[sharedFileUtils setiPhoneRetinaDisplaySuffix:@"-hd"];      // Default on iPhone RetinaDisplay is "-hd"
[sharedFileUtils setiPadSuffix:@"-ipad"];                   // Default on iPad is "ipad"
[sharedFileUtils setiPadRetinaDisplaySuffix:@"-ipadhd"];    // Default on iPad RetinaDisplay is "-ipadhd"` 

这将帮助Xcode通过iPad、iPad Retina或iPhone Retina建筑的后缀找到您的资源文件。

查看本教程,
http://www.raywenderlich.com/32049/texture-packer-tutorial-how-to-create-and-optimize-sprite-sheets-in-cocos2d.

最新更新