0
다른 SKSpriteNode와 충돌하여 튀는 SKSpriteNode가 있습니다. 내가 원하는 건 충돌을 감지 할 수는 있지만 충돌을 일으키지 않는 것입니다. 나는 다른 노드에서 튀어 오르기를 원하지만이 노드는 그렇지 않습니다. 그게 가능하니?SKSpriteNode가 다른 SKSpriteNode로부터 튀어 나오지 못하도록 방지합니다.
self.physicsWorld.contactDelegate = self;
self.physicsBody = [SKPhysicsBody bodyWithEdgeLoopFromRect:self.frame];
self.physicsWorld.gravity = CGVectorMake(0.0f, 0.0f);
self.zone = [SKSpriteNode spriteNodeWithImageNamed:@"Oval.png"];
self.zone.position = CGPointMake(CGRectGetMidX(self.frame),CGRectGetMidY(self.frame)); self.zone.xScale = 0.3;
self.zone.yScale = 0.3;
self.zone.physicsBody = [SKPhysicsBody bodyWithCircleOfRadius:self.zone.frame.size.width/2];
self.zone.physicsBody.restitution = 0.0f;
self.zone.physicsBody.density = 0;
self.zone.physicsBody.friction = 0.4f;
self.zone.physicsBody.categoryBitMask = zoneCategory;
self.zone.physicsBody.dynamic = NO;
self.ball = [SKSpriteNode spriteNodeWithImageNamed:@"Ball.png"];
self.ball.position = CGPointMake(80,0);
self.ball.name = @"BallNode";//how the node is identified later
self.ball.physicsBody = [SKPhysicsBody bodyWithCircleOfRadius:self.ball.frame.size.width/2];
self.ball.physicsBody.restitution = 0.1f;
self.ball.physicsBody.friction = 0.4f;
self.ball.physicsBody.categoryBitMask = ballCategory;
self.ball.physicsBody.dynamic = NO;
나는 공과 구역이 튀는 것을 원치 않습니다. 어떤 아이디어? 연락처가 SKPhysicsContactDelegate
에서 didBeginContact:
의 전화를 기대 발생할 때 다음
self.zone.collisionBitMask = 0xFFFFFFFF & (~ballCategory);
self.ball.collisionBitMask = 0xFFFFFFFF & (~zoneCategory);
self.zone.contactTestBitMask = ballCategory;
:
다음과 같이하십시오 : self.zone.collisionBitMask & = ~ ballCategory; – 0x141E