当我尝试通过SKPhysicsJointFixed加入两个SKSpriteNodes时,它们似乎完全没有连接而分开。我似乎无济于事。这是我的代码...

CGPoint position = CGPointMake(100, 100);
CGSize size = CGSizeMake(4, 64);

SKSpriteNode *node1 = [SKSpriteNode spriteNodeWithColor:[SKColor whiteColor] size:size];
node1.physicsBody = [SKPhysicsBody bodyWithRectangleOfSize:size];
node1.position = position;

SKSpriteNode *node2 = [SKSpriteNode spriteNodeWithColor:[SKColor whiteColor] size:size];
node2.physicsBody = [SKPhysicsBody bodyWithRectangleOfSize:size];
node2.position = position;

[scene addChild:node1];
[scene addChild:node2];

SKPhysicsJointFixed *joint = [SKPhysicsJointFixed jointWithBodyA:node1.physicsBody
                                                            bodyB:node2.physicsBody
                                                          anchor:CGPointMake(100, 100)];
[scene.physicsWorld addJoint:joint];

提前致谢。

最佳答案

这是我的工作代码。

CGPoint position = CGPointMake(100, 350);
CGPoint position2 = CGPointMake(100, 420);
CGSize size = CGSizeMake(4, 164);

SKSpriteNode *node1 = [SKSpriteNode spriteNodeWithColor:[SKColor whiteColor] size:size];
node1.physicsBody = [SKPhysicsBody bodyWithRectangleOfSize:size];
node1.position = position;

SKSpriteNode *node2 = [SKSpriteNode spriteNodeWithColor:[SKColor redColor] size:size];
node2.physicsBody = [SKPhysicsBody bodyWithRectangleOfSize:size];
node2.position = position2;

[scene addChild:node1];
[scene addChild:node2];

SKPhysicsJointFixed *joint = [SKPhysicsJointFixed jointWithBodyA:node1.physicsBody
                                                                   bodyB:node2.physicsBody
                                                                  anchor:CGPointMake(node1.position.x, node1.position.y-30)];

[scene.physicsWorld addJoint:joint];

关于ios - 如何使用SKPhysicsJointFixed连接两个SKSpriteNode,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/24300696/

10-09 02:08