Kobold2D KKInput不正确的方向?

3
我在设备方向和输入方面遇到了问题。我使用xcode->项目->方向设置,除Portrait外禁用了所有内容。当我转动设备时,图形保持不变(如预期),但KKInput手势(如平移)似乎提供了错误的坐标和翻译。我的头号嫌疑是我错过了与KKInput处理convertToGL相关的内容。对我来说,似乎Cocos2d仍在读取设备的方向,并考虑计算。如果有帮助,下面是一个示例。

两个“正方形”精灵从正方形网格中选择。

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

用手指滑过XX精灵,将其向右拖动。

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

将设备切换到横屏模式。
**** | ****
*  * | *  *
**** | ****

用手指滑过XX精灵,将其向右拖动。

     ^ (squares move vertical)
     ^

    **** |
    *XX* | 
    **** |
    ____ | ****
           *  *
    **** | ****
    *  * |
    **** |
1个回答

0

是的,不幸的是KKInput使用操作系统的UIDeviceOrientation来转换用户输入。即使用户界面被锁定为纵向,设备方向也会返回横向,这会影响计算并导致此错误。

如果您的项目不是太旧,我建议迁移到Cocos2d 3.0,它带有更简单的触摸处理。


其实,我发现问题是存在一个额外的触摸输入,只有在设备处于“FLAT”状态时才能接收到。我在 switch 语句中跳过了这种情况,导致困惑。 - Clev3r

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接