2016-09-16 71 views
0

我目前正在研究Sprite Kit遊戲中的磁場。這裏的初始化代碼:Sprite-Kit:如何可視化SKFieldNode

private func initMagneticField(_ object: TileMapObjectMagneticField) { 
     let field = SKFieldNode.magneticField() 
     field.strength = 0.75 
     field.position = object.location 
     field.region = SKRegion(size: CGSize(width: 320.0, height: 320.0)) 
     field.categoryBitMask = Globals.Categories.magneticField.rawValue 
     stage?.addChild(field) 
    } 

磁場的工作,到目前爲止,但我不能確定如何將SKFieldNode對象的區域屬性定位。

開關上的物理可視化顯示不出來的region: SKRegion或實地節點本身和region property既沒有size也不position性質:

self.skView.showsPhysics = true 

如何您可視化領域本身或至少region property調試目的?

+0

@ 0×14 1E:很酷 - 謝謝! – salocinx

回答

1

添加子:field.addChild(SKSpriteNode(color:SKColor.red, size:CGSize(width: 320.0, height: 320.0)))

或者添加以下到您的視圖控制器

斯威夫特:

skView.showsFields = true 

ObjC:

+0

我得到「SKRegion類型的值?」沒有會員'size'。但是我現在使用SKFieldNode初始化的大小,它的工作原理。 – salocinx

+0

好的,我不確定你是否可以讀取 – Knight0fDragon

+0

順便說一下,在與地區相交之前,磁場吸引了我的太空船。根據蘋果公司的文檔:「物理實體位於田間節點的區域內(參見區域)。」這不應該是這樣的吧?它可能與我的宇宙飛船物理機構的「充電」屬性有關嗎? (該文件有點不清楚..) – salocinx