<< cocos2d(其の2) プロジェクト作成 | main | cocos2d(其の4) 綺麗な画像はお好きですか? >>

スポンサーサイト

2012.09.14 Friday
0

    一定期間更新がないため広告を表示しています

    |-|-|-|-|-|by スポンサードリンク

    cocos2d(其の3) ゲームの向きを決めよう

    2012.01.19 Thursday
    0
       さて、前回に引き続きcocos2dだ。
      当分cocos2dで行くと思う。興味のない人は興味を持つよう努力して欲しい。
      ダニエルからのお願いだ。


      【ゲーム画面の向き】
      まめすけが、また何かを言っているようだ。
      「iphoneを回すと画面がまわるゲームを考えたよ。早速試してくれ」
      回す方法か、「ちょっと時間が欲しい」なんて応えようものなら
      「待っている間君のiphoneを回しておくよ」なんて言われて
      壊されかねないんだ。こいつはちょっとした危機だ。
      まめすけはそんな男前な奴なんだ。


      ゲームの向きを考える上で、重要なポイントがある。
      GameConfig.hにある次の行を見て欲しい。
      これは、iOSから画面の向き変更の依頼が来た時にどう振る舞うかを決めている。

      #define kGameAutorotationNone 0

      #define kGameAutorotationCCDirector 1

      #define kGameAutorotationUIViewController 2


      まずはkGameAutorotationNone、完全無視する設定だ。
      完全に1方向に画面を固定したい時に使用する。
      おっと!こいつはipadアプリでは使っちゃだめだ。
      ipadは回転対応しろってリンゴの奴らが決めてるんだ。

      次はkGameAutorotationCCDirector、向きを変更する時に
      UiKitのアニメーションを使わない設定だ。
      パッと切り替わるようになる。その分パフォーマンスは軽い。
      自前でアニメーションを用意してやってもいいだろう。

      最後はkGameAutorotationUIViewController、だ。
      UiKitの滑らかなアニメーションを使う設定だ。
      リンゴの奴らが自負するだけあって、非常に綺麗だ。
      ただし!パフォーマンスは悪い。ゲーム中での動作は避けるべきだ。


      これらのどれを使用するかの設定は、もうすこし下に書くことになっている。


      これが第3世代以降&シュミレータで適用される設定

      #if defined(__ARM_NEON__) || TARGET_IPHONE_SIMULATOR

      #define GAME_AUTOROTATION kGameAutorotationCCDirector


      これが第2世代以前の設定

      #elif __arm__

      #define GAME_AUTOROTATION kGameAutorotationNone


      どれを選択するかはアプリケーションにあわせて決めよう。


      さて、回転する方法は決めた。
      次は、実際にどの方向の回転に対応するかを設定しよう。
      縦回転だけ対応したい!なんて要望にも応えれるようにしておかないと駄目だ。
      まめすけはそんなに甘くない。


      RootViewController.mの
      - (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientationを見て欲しい。


      そこの中にさっきの3つの設定別に記載するんだ。

      #if GAME_AUTOROTATION==kGameAutorotationNone

        ここに記載

      #elif GAME_AUTOROTATION==kGameAutorotationCCDirector

        ここに記載

      #elif GAME_AUTOROTATION == kGameAutorotationUIViewController

        ここに記載

      #endif // GAME_AUTOROTATION


      引数、interfaceOrientationには、iOSが向けたい画面の方向が入っている。

      左 UIInterfaceOrientationLandscapeLeft

      右 UIInterfaceOrientationLandscapeRight

      上 UIInterfaceOrientationPortrait

      下 UIInterfaceOrientationPortraitUpsideDown


      もし自分のアプリが対応できる方向ならTRUE

      対応できない方向ならFALSEを返却する。ただそれだけでOKだ。


      if( interfaceOrientation == UIInterfaceOrientationLandscapeLeft ){

          return TRUE;

      }

      仮に左回転に対応するなら、上のように記載すればOKだ。

      いくつ回転に対応するかは好きにすればいいが、最低でも1つは対応しておくことに注意だ。

      これは、コードの注意書きにも記載されている。


      まめすけが、「ゲーム中だけ回転は無しで、オプション画面とかはクルクルしてよ」

      って言ってきてもOKだ。オプション画面に遷移する時に、上記関数の設定を変更

      してやればいいんだ。

      これでまめすけも納得するだろう。

      今夜も安心して眠れそうだ。


      【次の記事へのリンク】

      cocos2d(其の4) 綺麗な画像はお好きですか?

      【前の記事へのリンク】

      cocos2d(其の2) プロジェクト作成

      iphonecomments(0)trackbacks(0)|-|-|by 大阪ダニエル

      スポンサーサイト

      2012.09.14 Friday
      0
        |-|-|-|-|-|by スポンサードリンク
        コメント









        この記事のトラックバックURL
        トラックバック
         

        プロフィール
        capsule+アプリ
        Mr.ナンバー

        ■Mr.ナンバー

        順番に押すだけなのに! 
        人はどうしてこんなに熱くなるのか? 

        App Store

        VSアイス

        ■VSアイス

        コーンくんは、アイスちゃんが大好き!
        コーンくんの愛の告白を手伝おう!

        App Store

        こけしの解放

        ■こけしの解放

        面白革命capsule+が本気で怖いゲームを作ってみました。 夏〜秋の夜にピッタリのゲームです。

        App Store

        指先の達人

        ■指先の達人

        あの!150万ダウンロード達成した「連打の達人」の世界観を引き継いだ新作! あのだるま家族を指先で打って打ってうちまくれ! !

        App Store

        着地せよ

        ■着地せよ

        風を読んで島にピタッと着地せよ!

        App Store

        奇数か偶数か

        ■奇数か偶数か

        奇数と偶数を区別することができますか?

        App Store

        射撃の達人

        ■射撃の達人

        射撃は得意ですか? どっちにしても撃ちましょう! そんな時代です。

        App Store

        奇跡の瞬間

        ■奇跡の瞬間

        こんなゲーム遊んだ事ありますか? 3点をタッチして奇跡を起こします!

        App Store

        とどけぇぇえ

        ■とどけぇぇえ

        棒を飲まして倒すだけのシンプルゲー!
        しかし中毒者続出

        App Store

        クシャッと

        ■クシャッと

        気持ちの良い空缶つぶし! 清水幸子さん(55歳)に注意!

        App Store

        指クエスト

        ■指クエスト

        指ひとつで大冒険!

        App Store

        幸せのかけら

        ■幸せのかけら

        ちょっとした時間に幸せ探し、はじめませんか?

        App Store

        全力階段

        ■全力階段

        最近何かに全力になりましたか? 全力で階段を駆け上がりましょう

        App Store

        瞬間あみだ

        ■瞬間あみだ

        日本独自の文化である、あみだくじが進化!

        App Store

        連打の達人

        ■テム族の叫び

        世界一かわいい彼らの叫び声を聞きたくはありませんか?

        App Store

        連打の達人

        ■連打の達人

        ただ早いだけでは、だるまにどつかれます。 
        正確に素早く連打するのです! 

        App Store

        16の瞬間

        ■16の瞬間

        16回の瞬間に全神経を捧げることができますか?

        App Store

        100のアロー

        ■100のアロー

        100の瞬間のユーザー様の声から生まれたゲーム。

        App Store

        モアイへ挑戦

        ■モアイへ挑戦

        モアイの鳴き声を聞いたことがありますか?

        App Store

        限界記憶Lv99

        ■限界記憶Lv99

        記憶力に自信はありますか?

        App Store

        銭さばき

        ■銭さばき

        あなたは50枚の小銭を何秒でさばけますか?

        App Store

        100の瞬間

        ■100の瞬間

        即座に色を判断せよ!

        ★2012年2月 全無料アプリ1位獲得!

        App Store

        回れ!

        ■回れ!

        iPhoneを回せ!リズムにノッてiphoneを回せ!

        App Store
        傾けろ!

        ■傾けろ!

        iPhoneを傾けろ!リズムにノッてiphoneを傾けろ!

        App Store
        土下座

        ■土下座

        究極の土下座アプリ!

        App Store

        なんでやねん

        ■なんでやねん

        累計50万ダウンロード!
        革新的ツッコみアプリ!

        ★2010年 エンターテインメント 無料アプリで1位獲得

        App Store
        みんなのイライラ

        ■みんなのイライラ

        イライラをぶつけてストレス解消

        人類の敵、イライラをぶちまけてスッキリ!
        コメントレスもみんな早い!

        公式サイト
        新しい記事 コメント
        アーカイブ カテゴリ
        リンク モバイル
        qrcode
        Others Others
            

        ページの先頭へ