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}如果这有什么区别的话。我不知道为什么它不起作用。我想我知道为什么它不起作用,但我不知道如何修复它。如果我让它让桨叶通过触摸移动,它就不起作用。如果它能使它自动化,一切都会起作用/