3

デバイスの向きと入力に問題があります。xcode->projects->orient 設定を使用して、Portrait 以外のすべてを無効にしました。デバイスの向きを変えると、グラフィックスは (予想どおり) その場にとどまりますが、KKInput のジェスチャ (パンなど) が正しくない座標と変換を提供しているようです。私の一番の疑いは、KKInput の convertToGL の処理に関連する何かが欠けているということです。私には、Cocos2d がまだデバイスの向きを読み取っており、それを考慮して計算しているように見えます。以下は、役立つ場合の図です。

正方形のグリッドからの 2 つの「正方形」スプライト。

**** | ****
*  * | *  *
**** | ****

XX スプライトを指でパンし、右にドラッグします。

      **** | ****
  ->  *XX* | *  * (squares move horizontal)
      **** | ****

デバイスを横向きにします。

**** | ****
*  * | *  *
**** | ****

XX スプライトを指でパンし、右にドラッグします。

     ^ (squares move vertical)
     ^

    **** |
    *XX* | 
    **** |
    ____ | ****
           *  *
    **** | ****
    *  * |
    **** |
4

1 に答える 1

0

はい、残念ながら KKInput は OS のUIDeviceOrientationを使用してユーザー入力を変換します。ユーザー インターフェイスが縦向きにロックされている場合でも、デバイスの向きが横向きに返され、計算に影響を与え、このエラーが発生します。

プロジェクトが古すぎない場合は、Cocos2d 3.0 に移行することをお勧めします。これには、はるかに単純なタッチ処理が付属しています。

于 2014-01-27T03:28:51.060 に答える