↓ 色んな画面サイズ対応は以下を参考にしました。
がおまる開発ブログ
解像度の設定:setDesignResolutionSizeを使用する
http://gaomar.blog.fc2.com/blog-entry-5.html
本当に分かりやすいです!ありがとうございます!
そのあと画像の切り替えで大分ハマってしまいました。。。
@2x??使えないの??と。。
なんとフォルダで各画像を切り替えるらしいです。
Resources/
├── Published-iOS
│ ├── resources-iphone
│ │ ├── background.png
│ │ └── title.png
│ └── resources-iphonehd
│ ├── background.png
│ └── title.png
当然そのまんま投げ込むとpng画像が重複しているとエラーがでます。。。。
色々しらべて↓の情報で助かりました。ありがとうございます。
cocos2d-x2.0-xでRetina Display対応
http://p-monster.hatenablog.com/entry/2012/12/24/204001
なるほど!フォルダの参照を取り込めば良い様です!


そして
AppDelegate.cppの
bool AppDelegate::applicationDidFinishLaunching()に以下記述を追加しました。
CCSize resourceSize = CCSizeMake(320, 480);
CCSize screenSize = CCEGLView::sharedOpenGLView()->getFrameSize();
std::vector<std::string> searchPaths;
std::vector<std::string> resDirOrders;
TargetPlatform platform = CCApplication::sharedApplication()->getTargetPlatform();
if (platform == kTargetIphone || platform == kTargetIpad){
searchPaths.push_back("Published-iOS"); // Resources/Published-iOS
CCFileUtils::sharedFileUtils()->setSearchPaths(searchPaths);
if (screenSize.height > 480){
resourceSize = CCSizeMake(640, 960);
resDirOrders.push_back("resources-iphonehd");
pDirector->setContentScaleFactor(2.f);
}else{
resDirOrders.push_back("resources-iphone");
}
CCFileUtils::sharedFileUtils()->setSearchResolutionsOrder(resDirOrders);
}else{
// iOS以外(Androidの予定)
searchPaths.push_back("Published-iOS"); // Resources/Published-iOS
CCFileUtils::sharedFileUtils()->setSearchPaths(searchPaths);
resDirOrders.push_back("resources-iphone");
CCFileUtils::sharedFileUtils()->setSearchResolutionsOrder(resDirOrders);
}
※ Androidは非retina画像を拡大表示する方向で考えてます。。
明日はデータを管理するシングルトンみたいなものが出来ないか調べてみようと思います。
タグ:cocos2d-x