SpriteKit은 게임 점프 캐릭터에 높이 표시기를 추가합니다
게임 디버깅 과정에서 주인공의 높이를 실시간으로 알았으면 좋겠다. 이것은 프로그램원숭이의 동태적인 게임 승패 논리를 판단하는 데 도움이 될 것이다.
당신은 print로 높이를 컨트롤러에 표시할 수 있지만, 이것은 보기에 그리 편리하지 않습니다. 차라리 높이 표시와 게임 주인공 자신을 밀접하게 결합합시다.
SpriteKit의 모든 SKNode 객체와 자식 객체에 아이가 포함될 수 있기 때문에 부모 노드와 함께 이동, 회전, 축소할 수 있습니다. 이것이 바로 우리가 원하는 효과입니다.
우선, 게임 주인공을 만드는 코드 뒤에 다음과 같은 코드를 추가합니다.
// player
let label = SKLabelNode(fontNamed: "Copperplate")
label.horizontalAlignmentMode = .Center
label.verticalAlignmentMode = .Top
label.position = CGPoint(x: 0, y: self.size.height/2.0 + 20)
label.fontSize = 20.0
label.fontColor = SKColor.whiteColor()
label.text = "\(self.position.y)"
label.name = "heightLabel"
self.addChild(label)
어떤 사람들은 label의 위치가 왜 (0,size.height/2.0+20.0)냐고 묻는다. 왜냐하면 부모 노드의 닻점이 무늬의 중심 위치, 즉 (0.5,0.5)에 있기 때문에 label.position.x=0은 x축이 중심에 있고 y축이 게임 주인공의 꼭대기에서 20점 위로 올라가는 위치를 나타낸다.
마지막으로 GameScene의 업데이트 방법에 다음 줄을 추가하여 실시간으로 배열을 새로 고칩니다.
if let label = playerNode!.childNodeWithName("heightLabel") as? SKLabelNode{
label.text = "\(Int(playerNode!.position.y))"
}
Apps를 컴파일하여 실행한 결과를 살펴보겠습니다.
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
SpriteKit은 게임 점프 캐릭터에 높이 표시기를 추가합니다이것은 점프 낙서와 유사한 작은 게임이다. 주인공이 끊임없이 에너지 공을 먹고 점프 에너지를 얻어 더 높은 곳으로 점프한다. 그림에서 블랙홀에 부딪히면 걸린다. 게임 디버깅 과정에서 주인공의 높이를 실시간으로 알았으...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.