我试图在游戏场景框架的边缘创建一个不可穿透的边框。在Swift中使用edgeLoopFromRect
在斯威夫特我试图重新写为:
override func didMoveToView(view: SKView) {
self.physicsBody = SKPhysicsBody(edgeLoopFromRect: CGRect(x: 0,y: 100,width: self.frame.size.width,height: self.frame.size.height-200))
}
而不是给我的框架是提供一个弱边框边缘的边界清楚,这我的球员(没有指定质量)可以通过。
我也不知道为什么我必须减去并添加到y轴才能得到正确的边界,但这不是一个问题。任何帮助将非常感激。
是你的场景是从'sks'文件加载?检查该文件中场景的大小,因为它可能太大。你有没有在你的播放器和边缘设置'collisionBitMask's。检查你的标签,这个问题与该标签的图像边缘分离无关。 – Okapi 2014-11-23 11:35:36
谢谢霍加皮。我没有从sks文件加载。而且我还没有设置collisionBitMasks,我是否需要为边缘? – 2014-11-23 11:56:47
'collisionBitMask'默认值被设置为与所有其他物理体碰撞。你的精灵有物理实体吗?你是用一种力量,冲动,还是设定它们的速度来移动它们? – 0x141E 2014-11-23 19:28:02