2013-03-14 26 views
0

我想用cocosbuilder和cocos2d-x来开发我的新老iPhone手机游戏。我想为两个分辨率创建一个文件。我创建了一个ccb文件,然后将它发布到视网膜和正常分辨率。一切都很正常,但现在我有两个名称相同的PNG文件:cocosbuilder同名的两个文件

发布-IOS /资源 - iphone/star.png

发布-IOS /资源-iphonehd/star.png

有是一个问题。我使用Xcode,它不喜欢项目中具有相同名称的2个文件。我可以将这些文件添加到独立组中的项目中,但在最终应用程序捆绑中,可能只有一个star.png文件。它是随机选择的。当我在iphone 4s上启动我的应用程序时,我从旧iphone显示屏上获取图片。如何将cocosbuilder用于多种分辨率?

回答

0

你应该导入资源,iphone和资源,iphonehd在您的Xcode项目作为文件夹引用,而不是群体目录。您可以通过将文件夹拖放到您的XCode项目上来完成此操作。当你这样做时,你会看到目录出现在你的应用程序包中。您可以通过选择您的应用程序的目标并进入Build Phases-> Copy Bundle Resources来检查。

之后,在您的ApplicationDelegate.cpp文件中,您应该将这些文件夹添加到CCFileUtils的搜索路径列表中。

std::vector<std::string> resDirOrders; 

if (resolution is iphone) 
{ 
    resDirOrders.push_back("resources-iphone"); 
} 
else if (resolution is iphone retina) 
{ 
    resDirOrders.push_back("resources-iphonehd"); 
    resDirOrders.push_back("resources-iphone"); 
} 

CCFileUtils::sharedFileUtils()->setSearchResolutionsOrder(resDirOrders); 

这是处理根据的cocos2d-X开发者(签出this article)多种分辨率的推荐方法。您可以使用CCDirector的窗口大小来确定当前分辨率。在iphonehd的情况下,我包括非视网膜文件夹以及后备。

+0

谢谢 - 它的工作很棒:) – Tomasz 2013-03-22 10:19:39

0

Xcode和iOS应用程序捆绑不在文件夹中组织,而是平面捆绑。你需要重命名你的文件才能正常工作。我建议是这样的:

// iOS Standard 
Published-iOS/resources-iphonehd/[email protected] 

或本

// cocos-2d Standard 
Published-iOS/resources-iphonehd/star-hd.png 
相关问题