1

SKSpriteNodes画面の上から下に落ちるものが 9 つあります。またSKView、私はそれを画面上にドラッグすることができます。動的SKViewに 9 つのうちの 1 つとの衝突を検出するにはどうすればよいですか?SKSpriteNodes

4

2 に答える 2

2

SKViewプロパティを持たないphysicsBodyため、衝突できません。

SKViewただし、 がのフレームframeと交差しているかどうかを手動で確認できます。SKSpriteNode

- (void)update:(CFTimeInterval)currentTime {
    if (CGRectIntersectsRect(skView.frame, node.frame) {
        ....
    }
}
于 2014-04-16T15:15:11.263 に答える
0

シーンでは、フレームと SKSpriteNodes の間の衝突を検出できます。

Scene.m で、次のコードを追加しますinitWithSize:(CGSize)size

self.physicsBody = [SKPhysicsBody bodyWithEdgeLoopFromRect:self.frame];
self.physicsBody.categoryBitMask = kSceneCategory;
self.physicsBody.contactTestBitMask = kSKNodeCategory; // this is your SKSpriteNode's categoryBitMask

- (void)didBeginContact:(SKPhysicsContact *)contact、衝突を検出できます。

于 2014-04-17T07:12:33.583 に答える