【发布时间】:2015-11-03 19:31:44
【问题描述】:
SKSpriteNode 锚点设置为 (0.5, 0)。
如何在不更改 (0.5, 0) 锚点的情况下创建一个以 (0.5,0.5) 为中心的 SKPhysicsBody(texture: size:) 物理体。
【问题讨论】:
标签: ios swift sprite-kit skspritenode skphysicsbody
SKSpriteNode 锚点设置为 (0.5, 0)。
如何在不更改 (0.5, 0) 锚点的情况下创建一个以 (0.5,0.5) 为中心的 SKPhysicsBody(texture: size:) 物理体。
【问题讨论】:
标签: ios swift sprite-kit skspritenode skphysicsbody
您可以使用+ bodyWithRectangleOfSize:center: 或 + bodyWithCircleOfRadius:center:,像这样:
let sprite = SKSpriteNode(color: SKColor.whiteColor(), size: CGSize(width: 100.0, height: 100.0))
sprite.position = CGPoint(x: CGRectGetMidX(frame), y: CGRectGetMidY(frame))
sprite.anchorPoint = CGPoint(x: 0.5, y: 0.0)
sprite.physicsBody = SKPhysicsBody(rectangleOfSize: sprite.size, center: CGPoint(x: 0, y: sprite.size.height/2.0))
sprite.physicsBody?.affectedByGravity = false // just added for easier debugging
addChild(sprite)
Center 参数表示正方形/圆在所属节点坐标系中的原点。
【讨论】: