ios – SpriteKit固定接头

我有一个名为“SpikyRedBall”的SKSpriteNode是一个红球.我想为它添加尖峰,所以我使用了以下代码.我可以看到Spike附着在球上但是当球与另一个球发生碰撞时,它不会考虑固定关节并将它们分开移动.我使用以下实现:
@implementation SpikyRedBall

-(instancetype) init
{
    self = [super init];
    [self attachSpikes];
    return self;
}

    -(void) attachSpikes
    {
        Spike *spike = [[Spike alloc] init];
        spike.position = CGPointMake(0,0);

        // attach the joint
        SKPhysicsJointFixed *ballAndSpikeJointFixed = [SKPhysicsJointFixed jointWithBodyA:self.physicsBody bodyB:spike.physicsBody anchor:CGPointZero];

        [self.scene.physicsWorld addJoint:ballAndSpikeJointFixed];
        [self addChild:spike];
    }

@end

解决方法

听起来你没有针对尖峰本身的碰撞或接触类别设置.我会尝试将尖峰上的所有physicsBody属性设置为与球的属性相同,但显然确保它们没有碰撞或接触类别设置,以便它们会与自己的父球碰撞.

相关文章

当我们远离最新的 iOS 16 更新版本时,我们听到了困扰 Apple...
欧版/美版 特别说一下,美版选错了 可能会永久丧失4G,不过只...
一般在接外包的时候, 通常第三方需要安装你的app进行测...
前言为了让更多的人永远记住12月13日,各大厂都在这一天将应...