我为我的一个物理体制作了以下代码:
CGFloat offsetX = ship.frame.size.width * ship.anchorPoint.x;
CGFloat offsetY = ship.frame.size.height * ship.anchorPoint.y;
CGMutablePathRef path2 = CGPathCreateMutable();
CGPathMoveToPoint(path2, NULL, 10 - offsetX, 1 - offsetY);
CGPathAddLineToPoint(path2, NULL, 8 - offsetX, 12 - offsetY);
CGPathAddLineToPoint(path2, NULL, 10 - offsetX, 14 - offsetY);
CGPathAddLineToPoint(path2, NULL, 10 - offsetX, 37 - offsetY);
CGPathAddLineToPoint(path2, NULL, 5 - offsetX, 44 - offsetY);
CGPathAddLineToPoint(path2, NULL, 0 - offsetX, 36 - offsetY);
CGPathAddLineToPoint(path2, NULL, 0 - offsetX, 16 - offsetY);
CGPathAddLineToPoint(path2, NULL, 2 - offsetX, 11 - offsetY);
CGPathAddLineToPoint(path2, NULL, 0 - offsetX, 1 - offsetY);
CGPathAddLineToPoint(path2, NULL, 0 - offsetX, 0 - offsetY);
CGPathAddLineToPoint(path2, NULL, 10 - offsetX, 0 - offsetY);
CGPathCloseSubpath(path2);
ship.physicsBody = [SKPhysicsBody bodyWithPolygonFromPath:path2];
这对我来说似乎很好,但每当我运行它时,我都会收到一条错误消息:“线程 1:信号 SIGABRT”。有没有人看到我的代码有什么问题或者知道为什么这不起作用?如果您需要我指定任何内容,请询问,我会很高兴。