【问题标题】:Cocos2D 2.0 CGRectIntersectsRect TransparencyCocos2D 2.0 CGRectIntersectsRect 透明度
【发布时间】:2013-01-17 08:37:07
【问题描述】:

我正在使用加速度计制作游戏,基本上我的角色在屏幕底部,他需要避免物体从屏幕顶部掉落。我正在使用CGRectIntersectsRect 来查看我的角色精灵是否与我的敌人精灵相交,但问题是CGRectIntersectsRect 检测到我的角色精灵的透明部分。

有没有办法让它忽略精灵的透明度?

【问题讨论】:

    标签: objective-c cocos2d-iphone transparency


    【解决方案1】:

    一种方法是使用 Box2d。即使您不想要物理模拟,您也可以设置身体形状以用于碰撞检测。

    或者,如果您不想使用 C++,那么 Chipmunk 也有带有碰撞检测的形状。这篇文章概述了一些细节:Chipmunk collision detection

    【讨论】:

      【解决方案2】:

      如果您不想使用物理模拟器,您可以将您的精灵视为多个矩形,因此您可以测试所有部分的命中,而不是整个边界框。如果精灵形状很简单,这可能会更容易并给您一个很好的结果。

      【讨论】:

        【解决方案3】:

        除了具有手动设计形状的物理引擎(推荐以获得最佳性能)之外,如果您需要非常准确的碰撞检测,您还可以使用pixel-perfect collision detection

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2012-06-08
          • 1970-01-01
          • 1970-01-01
          相关资源
          最近更新 更多