В GameViewControllerПейзаж игры с использованием скоры в Xcode 6
override func viewDidLoad() {
super.viewDidLoad()
}
override func viewDidLayoutSubviews() {
if let scene = GameScene.unarchiveFromFile("GameScene") as? GameScene {
// Configure the view.
let skView = self.view as SKView
var boo = Bool();
boo = true;
skView.showsFPS = boo;
skView.showsNodeCount = boo;
skView.showsPhysics = boo;
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)
}
}
И didMoveToView
var hero = SKSpriteNode(color: UIColor.redColor(), size: CGSize(width: 40, height: 40));
let hero_body = SKPhysicsBody(rectangleOfSize: hero.size);
hero.position = CGPoint(x:self.frame.size.width/2, y:50);
self.addChild(hero)
Я не понимаю, как позиция работа .. когда Y является 50, прямоугольник не отображается. До этого в Xcode 5 с Objective-C для того, узел находиться в нижней части экрана, я бы
-self.frame.size.height/2 + hero.size.height/2
Но здесь это не работает
В чем проблема, не отображается ли прямоугольник, или это позиционирование, если ваш герой не прав? , если последняя ваша проблема, убедитесь, что вы не соприкасались с опорными точками, или просто напишите anchorPoint = CGPoint (x: 0, y: 0). В основном это означает, что начало имеет нижний правый. –