在创建Node的物理对象后,默认情况下物理对象和Node的实际边界对应的很好,因为此时Node的默认锚点是其中心位置即(0.5,0.5),不过如果我们改变了Node的锚点,就会发现其物理边界还是保持原来的位置,这可不是我们想要的结果:
let bouncer = SKSpriteNode(imageNamed: "bouncer") bouncer.anchorPoint = CGPoint(x: 0.5, y: 0) bouncer.position = CGPoint(x: 0, y: -frame.size.height/2.0) bouncer.physicsBody = SKPhysicsBody(circleOfRadius: bouncer.size 大熊猫侯佩 认证博客专家 Swift Objective-C Xcode 非自由程序员,博客认证专家。汇编板块版主, 其他开发语言大版版主。对App、以及Cocos2D、SpriteKit游戏开饶有兴趣。目前常用的语言是ObjC、Swift、Ruby等。不过看到编程艺术、ASM、逆向和C时依然欲罢不能。虽然不是,但喜欢黑客的思维和哲学,认为社会工程学很酷,但还没有实际用来撩过妹。