SKPhysicsBody 没有与 SKShapeNode 对齐
SKPhysicsBody not lining up with SKShapeNode
我有一个这样创建的圆节点:
let path = CGPathCreateWithEllipseInRect(CGRect(x: 0, y: 150, width: playerWidth, height: playerHeight), nil)
self.path = path
fillColor = UIColor.whiteColor()
每当我添加一个 physicsBody (circleOfRadius: CGFloat) 时,它都拒绝与节点的位置匹配,并最终出现在模拟器屏幕的左下角附近。
有什么方法可以改变物理体的位置吗?如有必要,将 post 更多代码。
如果要移动物理 body,请不要设置形状的 body。创建一个附加到形状的 SKNode,然后设置 SKNode 的 physicsBody。要移动 body,请调整您在形状上创建的 SKNode 的位置。
let shape = SKShapeNode(initialize here)
let bodyNode = SKNode()
shape.addChild(bodyNode)
bodyNode.physicsBody = SKPhysicsBody(initialize here)
// To move the body;
bodyNode.position = CGPoint(point you wish)
我有一个这样创建的圆节点:
let path = CGPathCreateWithEllipseInRect(CGRect(x: 0, y: 150, width: playerWidth, height: playerHeight), nil)
self.path = path
fillColor = UIColor.whiteColor()
每当我添加一个 physicsBody (circleOfRadius: CGFloat) 时,它都拒绝与节点的位置匹配,并最终出现在模拟器屏幕的左下角附近。
有什么方法可以改变物理体的位置吗?如有必要,将 post 更多代码。
如果要移动物理 body,请不要设置形状的 body。创建一个附加到形状的 SKNode,然后设置 SKNode 的 physicsBody。要移动 body,请调整您在形状上创建的 SKNode 的位置。
let shape = SKShapeNode(initialize here)
let bodyNode = SKNode()
shape.addChild(bodyNode)
bodyNode.physicsBody = SKPhysicsBody(initialize here)
// To move the body;
bodyNode.position = CGPoint(point you wish)