Sprite Kit - object colliding because of scale after iOS 7.1 update

时光怂恿深爱的人放手 提交于 2019-12-01 09:14:04
  Pipe *pipe = [[Pipe alloc] initWithImageNamed:pipeImageName];
  [pipe setCenterRect:CGRectMake(26.0/kPipeWidth, 26.0/kPipeWidth, 4.0/kPipeWidth, 4.0/kPipeWidth)];

//set the physicsBody before X/Yscale
  pipe.physicsBody = [SKPhysicsBody bodyWithRectangleOfSize:pipe.size];

  [pipe setYScale:height/pipe.size.height];
  [pipe setPosition:CGPointMake(320+(pipe.size.width/2), abs(pipeYOffset + (pipe.size.height/2)))];

  [pipe.physicsBody setAffectedByGravity:NO];
  [pipe.physicsBody setDynamic:NO];

This may help you. I think this is a bug in ios7.1.

I have the same problem, my game got released tonight and is now unplayable! That totally sucks. In my opinion the old behaviour of iOS 7.0 was buggy since PhysicsBodyies didn't scale with the sprite.

Since iOS7.1, PhysicsBodies apparently adapt their size to the sprite's scale. I'm not 100% sure yet if this is in fact so, but I'll find out soon enough. Just downloading the Xcode update, I'll let you know after I've done some testing.

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!