以下のように UITouch を使用して ShapeNode を描画しています。
線は正しく描画されます。ただし、私の問題は、physicsbody を shapenode に追加することです (SKSpriteNode を衝突させてバウンスさせたい)。しかし、あたかも物理体がシェイプノードに接続されていないかのようです。YMCPhysicsDebugger を使用して、シェイプノードを基準にして物理ボディがどこにあるかを確認しましたが、何も検出されません。
誰もこれに遭遇したことがありますか?ダイナミック シェイプノードに物理ボディを追加するにはどうすればよいですか?
`-(void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event
{
touch = [touches anyObject];
CGPoint positionInScene = [touch locationInNode:self];
pathToDraw = CGPathCreateMutable();
CGPathMoveToPoint(pathToDraw, NULL, positionInScene.x, positionInScene.y);
selectorLine = [SKShapeNode node];
selectorLine.path = pathToDraw;
selectorLine.strokeColor = [SKColor greenColor];
selectorLine.lineWidth = 10;
selectorLine.physicsBody=[SKPhysicsBody bodyWithPolygonFromPath:pathToDraw];
selectorLine.physicsBody.restitution=1.0f;
selectorLine.physicsBody.dynamic=YES;
selectorLine.physicsBody.usesPreciseCollisionDetection=YES;
selectorLine.physicsBody.mass=0.2;
selectorLine.zPosition=1.5;
[self addChild:selectorLine];
}
-(void)touchesMoved:(NSSet *)touches withEvent:(UIEvent *)event
{
touch = [touches anyObject];
CGPoint positionInScene = [touch locationInNode:self];
CGPathAddLineToPoint(pathToDraw, NULL, positionInScene.x, positionInScene.y);
selectorLine.path = pathToDraw;
}
ありがとう、ダグ