세로 모드에서 0,0
의 위치에 SKShapeNode
을 만들었습니다. 그러나 그것이 화면에 전혀 나타나지 않는 것 같습니다.SpriteKit 좌표계가 엉망입니다
이 내가 지금
let test = SKShapeNode(rect: CGRectMake(0, 0, 10, 10))
test.fillColor = SKColor.blackColor()
self.addChild(test)
배경 색상 흰색 사용하고있는 코드는, 그래서 모양 노드는 확실히 화면에 있다면
그러나 0 노드가 화면에 나타납니다 나타납니다? children.count
반환
1 그리고 내가
override func viewWillLayoutSubviews() {
super.viewWillLayoutSubviews()
if let scene = GameScene.unarchiveFromFile("GameScene") as? GameScene {
// Configure the view.
let skView = self.view as SKView
skView.showsFPS = true
skView.showsNodeCount = true
/* Sprite Kit applies additional optimizations to improve rendering performance */
skView.ignoresSiblingOrder = true
/* Set the scale mode to scale to fit the window */
scene.scaleMode = .AspectFill
skView.presentScene(scene)
}
}
가 SKShapeNode
이 그려 장면을 표시하지만, 화면 밖에 방법이 무엇입니까?
편집 1 : 나는 .AspectFit
에 스케일 모드를 변경하고,이
이 게임이 세로에서 실행한다고 가정하더라도 게임이 강제 풍경에서 실행되는 일이 무엇인가?
scene.size가 올바른지, 눈금이 가로 또는 세로 크기인지 확인하십시오. 당신이 장면 그래프 로그에서 노드를 계산하고자한다면, 디버그 드로우 노드 수는 화면에 보이는 노드 수만을 계산합니다. children.count – LearnCocos2D
Xcode의 표준 스케일 모드는 .AspectFill이고, children.count는 1을 반환합니다. – junyi00
은 장면처럼 보입니다. 가로 모드를 위해 디자인 된 앱인 경우 – LearnCocos2D