【问题标题】:swift: returning a child node with the same positionswift:返回具有相同位置的子节点
【发布时间】:2017-02-17 08:57:10
【问题描述】:

我在一个 swift 文件的函数中有两个 Sprite 节点。两个节点的大小和位置相似。 Node2 是节点的子节点。

将节点添加到场景中时,节点位置彼此不同。他们并不像他们应该的那样在彼此之上。

func stoppers()->SKSpriteNode{   
 let node=SKSpriteNode(imageNamed:"image1")
    node.size=CGSize(width:20,height:300)
    node.position=CGPoint(x:100,y:100)

    let node2=SKSpriteNode(imageNamed:"image2")
    node2.size=CGSize(width:20,height:300)
    node2.position=CGPoint(x:100,y:100)

node.addChild(node2)
return node
}

该函数被调用到场景中,例如: addChild(game.stoppers())

【问题讨论】:

    标签: swift sprite-kit swift2 sprite skspritenode


    【解决方案1】:

    如果node2node1 的子级,并且您希望它们位于屏幕上的相同位置,则node2 必须具有position(x: 0, y: 0)。这是因为子节点的位置是相对于父节点的。他们还需要有相同的anchorPoint

    【讨论】:

    • 请记住,子节点还有其他注意事项,例如它们与父级一起移动和缩放,影响父级的效果和力量也会对子级(子级)产生影响。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2014-11-22
    • 2010-09-11
    • 1970-01-01
    • 2014-11-24
    • 1970-01-01
    • 1970-01-01
    • 2013-10-21
    相关资源
    最近更新 更多