よく忘れるので、備忘録も兼ねてメモ
cocos2d-xでアプリを作る際、初期設定は横向きになっている。
iPhoneで縦画面としてレイアウトするには、以下のように行う。
(1) xcodeのナビゲータエリアから、xcodeプロジェクトファイルを選択し、エディタエリアからGeneral > Deployment Info > Device Orientation から、Portrait のみチェックを入れる。
(2) $PROJ_ROOT/proj.ios_mac/ios/RootViewController.mmの
shouldAutorotateToInterfaceOrientationメソッドの戻り値を下記のように書き換える。
// Override to allow orientations other than the default portrait orientation. // This method is deprecated on ios6 - (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation { return UIInterfaceOrientationIsPortrait( interfaceOrientation ); }
これにより、iPhoneで縦向きで表示される。
ちなみに、macでも縦向きで表示するには、以下のファイルを編集する。試してないけどwindowsでもイケるはず。
$PROJ_ROOT/cocos2d/cocos/platform/desktop/CCGLViewImpl-desktop.cpp
GLViewImpl* GLViewImpl::create(const std::string& viewName) { auto ret = new (std::nothrow) GLViewImpl; // if(ret && ret->initWithRect(viewName, Rect(0, 0, 960, 640), 1)) { if(ret && ret->initWithRect(viewName, Rect(0, 0, 320, 568), 1)) { ret->autorelease(); return ret; } return nullptr; }
これにより、macでも縦向きになる。
解像度がまちまちだったりとか、いろいろ問題もあるけど、
まずは縦画面にできた。