次のコード ブロックを使用します。デバッグすると、SKShapeNode の累積フレーム{{-160.03586, -42.431793}, {470.03586, 519.50903}}が{{0,0}, {100,300}}.
この粒子コード全体をコメントアウトすると、accumulatedFrame再び意味があります。
nodesAtPointで使用するので、意味のあるものにする必要がありますtouchesBegan。意味のない値を指定nodesAtPointすると、関連のないノードも検出されます。これは、accumulatedFrame がすべてにとって奇妙になり、それらがすべて交差するためです...
次のコード ブロックを使用していますが、問題が見つかりませんでした。ここで何が恋しいですか?
NSString *path = [[NSBundle mainBundle] pathForResource:@"MyParticle" ofType:@"sks"];
SKEmitterNode *particles = [NSKeyedUnarchiver unarchiveObjectWithFile:path];
particles.position = CGPointMake(_selectedNode.frame.size.width/2, _selectedNode.frame.size.height/2);
[particles runAction:[SKAction sequence:@[[SKAction waitForDuration:.2],
[SKAction fadeAlphaTo:0 duration:0.2],
[SKAction removeFromParent]]] completion:^{
[particles removeFromParent];
}];
[_selectedNode addChild:particles];