Xcode上的BodyWithBodies

时间:2014-04-17 10:51:20

标签: ios objective-c sprite-kit

如何创建SKPhysicsBody bodyWithBodies?
我很新,我试过但它不会出现在模拟器上。 有人能给出一个例子吗? 这是我的代码的一部分:

Bike = [SKSpriteNode node];
    Bike.physicsBody = [SKPhysicsBody bodyWithBodies:bikeArray];
    Bike.position = CGPointMake(100, 100);
    //Bike.size = CGSizeMake(40, 50);
    Bike.physicsBody.mass = 0.1;
    //Bike.physicsBody.dynamic = YES;
    Bike.physicsBody.affectedByGravity = YES;
    Bike.physicsBody.restitution = 0;
    Bike.physicsBody.friction = 0;
    Bike.physicsBody.allowsRotation = YES;
    Bike.name = @"Bike";
    [self addChild:Bike];

罐,

1 个答案:

答案 0 :(得分:1)

你可以这样做:

object1.physicsBody = [SKPhysicsBody bodyWithBodies:@[object2, object3, object4]];

您可以像上面一样列出每个精灵对象,也可以将它们粘贴到数组中,就像在代码示例中一样。

请记住,数组中的精灵对象应该已经声明了它们各自的位置(object.position = CGPointMake(x,y);)并添加到视图中。

要记住的其他重要问题是:

  

传递给此方法的物理实体的形状用于创建一个新的物理实体,其覆盖区域是其子区域的并集。这些区域不需要是连续的。如果两个部件之间有空间,则其他部件可能能够在这些部件之间穿过。然而,物理体被视为一个连接的身体,这意味着施加在身体上的力或冲动会影响所有的碎片,好像它们是用坚不可摧的框架固定在一起。