Swift3 当两个节点接触时,为什么不施加摩擦力?敏捷的
这是我为这两个节点编写的代码。声明未包括在内Swift3 当两个节点接触时,为什么不施加摩擦力?敏捷的,swift3,Swift3,这是我为这两个节点编写的代码。声明未包括在内 //paddle node and its physicsbody paddle = childNode(withName: "paddle") as! SKSpriteNode paddle.physicsBody = SKPhysicsBody(rectangleOf: CGSize(width: paddle.size.width,
//paddle node and its physicsbody
paddle = childNode(withName: "paddle") as! SKSpriteNode
paddle.physicsBody = SKPhysicsBody(rectangleOf: CGSize(width: paddle.size.width,
height: paddle.size.height))
paddle.physicsBody?.isDynamic = false
paddle.physicsBody?.affectedByGravity = false;
paddle.physicsBody?.friction = 100
paddle.physicsBody?.restitution = 0
//paddle.physicsBody?.linearDamping = 1
//paddle.physicsBody?.angularDamping = 1
//Second node
rect.position = CGPoint(x: 100, y:500)
rect.fillColor = UIColor(hue: 215/360, saturation: 49/100, brightness: 54/100, alpha: 1.0)
rect.strokeColor = UIColor(hue: 215/360, saturation: 49/100, brightness: 54/100, alpha: 1.0)
rect.physicsBody = SKPhysicsBody(rectangleOf: CGSize(width: rect.frame.width, height: rect.frame.height))
rect.physicsBody?.friction = 0.4
rect.physicsBody?.restitution = 0
rect.physicsBody?.mass = 100
rect.physicsBody?.allowsRotation = true
rect.physicsBody?.isDynamic = true
rect.physicsBody?.linearDamping = 0
rect.physicsBody?.angularDamping = 0
//rect.physicsBody?.velocity = CGVector(dx: 0, dy: -700)
rect.physicsBody!.applyImpulse(CGVector(dx: 2.0, dy: -2.0))
rect.lineWidth = 10
addChild(rect)
我不确定我问的问题是否正确,但我有一个矩形节点落在一个可以通过触摸左右移动的桨上。一旦矩形节点位于挡板顶部,我希望它在移动挡板时保持在其上,但它保持固定且不移动,尽管其他一切(重力、旋转等)都起作用
下面是要澄清的图片
这似乎与你的问题类似:我在帖子中尝试了所有方法,但都没有成功:(除了我在触摸中左右移动拨片之外,这是相同的概念。对于触摸:触摸中的任何对象{let location=touch.location(in:self)patle.position.x=location.x}如果这有什么区别的话。我不知道为什么它不起作用。我想我知道为什么它不起作用,但我不知道如何修复它。如果我让它让桨叶通过触摸移动,它就不起作用。如果它能使它自动化,一切都会起作用/