【发布时间】:2014-06-17 05:46:07
【问题描述】:
我正在开发游戏,其中我需要来自不同侧面的不同碰撞行为,
假设有一个角色从下方撞到任何其他障碍物时,它的行为
会有所不同。
当它在顶部与任何其他障碍物或物体发生碰撞并且障碍物或物体在其下方时,我需要不同的行为,
实现它的最佳方法是什么。-(void)didBeginContact:(SKPhysicsContact*)contact 它是如何
对我的场景有帮助
谢谢
【问题讨论】:
-
skphysicscontact 为您提供接触点developer.apple.com/library/ios/documentation/SpriteKit/… 检查接触点相对于 nodeA 和 nodeB 位置的位置。即如果 posA.x contactpoint.x 联系人在 nodeA 的右侧。
-
感谢您的想法很有帮助。
-
还有一点与我的问题无关,但我有点困惑,是决定 bodyA 和 bodyB 在 SkphysicsContact.or 中的 categroybitmask。或者简单来说,什么标准决定了 body联系方式是contact.bodyA 还是contact.bodyB?谢谢
-
bodyA 和 bodyB 不是确定性的,所需的节点可能一次是 A,下一次是 B。您的代码必须处理这两种情况。位掩码不会影响 nodeA 和 nodeB 的顺序。位掩码的工作原理在 skphysicsbody 类参考中进行了说明。
标签: sprite-kit skphysicscontact