什么是Sprite Kit相当于Box2D传感器主体?

时间:2013-11-13 02:17:07

标签: box2d sprite-kit

我需要模拟一个风扇。在Box2D中,我通过使用传感器主体来实现这一点。我没有在SK中发现任何类似的东西。我错了。有什么建议?非常感谢!

1 个答案:

答案 0 :(得分:3)

如果您要执行的操作是创建一个会导致联系人通知但不会发生冲突的正文,则可以使用categoryBitMaskcollisionBitMaskcontactTestBitMask属性:< / p>

选择一个代表传感器类别的位:

#define kSensorCategoryBit (0)                         // Pick your own bit here
#define kSensorCategory    (1 << (kSensorCategoryBit))

设置传感器主体的属性:

sensorBody.categoryBitMask    = kSensorCategory; // Set sensor category bit
sensorBody.collisionBitMask   = 0x00000000;      // Prevent all collisions
sensorBody.contactTestBitMask = 0x00000000;      // Prevent contacts between sensors

设置要通知的其他实体的属性:

otherBody.contactTestBitMask |= kSensorCategory; // Set sensor category bit

设置物理世界的联系代表:

scene.physicsWorld.contactDelegate = contactDelegate;

实施contactDelegate对象的联系委托方法:

- (void)didBeginContact:(SKPhysicsContact *)contact
- (void)didEndContact:(SKPhysicsContact *)contact

有关详细信息,请参阅有关SKPhysicsContact的Apple文档。希望有所帮助...