1

シーンが期待どおりに動作しない理由を理解するために、数え切れないほどの参照を確認しまし

これが私の非常に単純な SKScene (2 つの子ノード) です。

  • シーンには SpriteNode (シーン全体を背景イメージとしてカバー) があります。これは zPosition = 0 です。
  • シーンには、別の子 (最大 2 レベル) を持つ 2 番目のノード (SKNode) があります。これには zPosiiton - 2 があります。
  • すべてのノードには .userInteractionEnabled = false があります

問題:

どこかをクリックすると、最初の子 (SpriteNode) がタッチされていることがわかります。2 番目の子 (SKNode) はタッチ検出されません。

ノードの z オーダーが期待どおりにレンダリングされていることに注意してください。機能していないように見えるのはタッチ検出です。

私の touchesBegan メソッドのスニペット:

       for touch in touches {
            let touchLocation = touch.locationInNode(self)
            let sceneTouchPoint = self.convertPointToView(touchLocation)
            let touchedNode = self.nodeAtPoint(sceneTouchPoint)
            if (touchedNode.name != nil) {
                print("Touched = \(touchedNode.name! as String)")
            }
        }
4

2 に答える 2