저는 신속하게 익숙하지만 spritekit에서 제 손을 잡아 먹기 시작했습니다. 나는 끝없는 주자를 창조 한 튜토리얼을 따라왔다. 저자가 취한 접근법은 모든 자식을 포함하는 단일 SKNode를 만드는 것입니다. 이 컨테이너 노드는 모든 하위 노드를 개별적으로 이동하는 대신 이동됩니다. 하지만 저를 곤두박질하게 만들었습니다. 컨테이너 노드에는 크기가 연관되어 있지 않아서 어떻게 작동하는지/왜 왜 작동하는지, 그리고 저자가 실제로 설명하지는 않는다는 것이 다소 혼란 스럽습니다. Spritekit 끝없는 러너 부모 SKNode
그래서 우리가 내가 떠 INT에서 위의 코드 생략 한 일부 변환이다하지만 내가 이해 할 점에 대한 필요는 없습니다let containerNode = SKNode()
let thePlayer = Player("image":"player") //SKSpriteNode
let inc = 0
override func didMoveToView(){
self.anchorPoint = CGPointMake(0.5,0)
addChild(containerNode)
containerNode.addChild(player)
moveWorld()
}
func moveWorld(){
let moveWorldAction = SKAction.moveByX(-screenWidth, y:0, duration:6)
let block = SKAction.runBlock(movedWorld)
let seq = SKAction.sequence([moveWorldAction,block])
let repeatAction = SKAction.repeatActionForever(seq)
containerNode.runAction(repeatAction)
}
func movedWorld() {
inc = inc + 1
addObjects()
}
func addObjects() {
let obj = Object()
containerNode.addChild(obj)
let ranX = arc4random_uniform(screenWidth)
let ranY = arc4random_uniform(screenHeight)
obj.position = CGPointMake(screenWidth * (inc + 1) + ranX, ranY)
}
있습니다.
새 개체를 만들 때 증가분으로 배수를 늘리는 이유는 무엇입니까?하지만 containerNode에는 크기가 없으므로 가져올 수없는 이유는 무엇입니까? 이렇게하는 것이 가장 효율적인 방법입니까?
나는 다른 모든 개체를 개별적으로 이동하는 것이 아니라 편리하다고 가정하고 있지만 크기가 없다는 사실은 나를 혼란스럽게합니다. 내가 SKNode에 대한 문서를 이해한다면
나는 SKNodes를 우주로 상상하고 싶다. 무한히 확장하고있다. – Knight0fDragon