有没有办法在swift 3中删除物理主体?
我发现的只有scene.sks
,但它在swift 3中无效
"无法分配Nil来键入SKPhysicsBode"
事实上,默认情况下,我的physicsBody
有一个子场景,其中有{{1}},中心有一个小点,而我要移除的是
Android SDK documentation states (in the chapter "Retrieval and modification with intents")
答案 0 :(得分:1)
刚刚在游乐场尝试了以下代码,您可以myNode.physicsBody = nil
import UIKit
import SpriteKit
let spriteNode = SKSpriteNode(imageNamed: "elephant")
spriteNode.physicsBody = SKPhysicsBody(texture: spriteNode.texture!,
size: spriteNode.texture!.size())
spriteNode.physicsBody = nil // No Error
来自Apple API about physicsBody:
默认值为nil,表示该节点根本不参与物理模拟。如果提供物理主体,则在模拟场景的物理时,物理主体会更新节点的位置并旋转节点。
我想说,检查您最初创建physicsBody
的位置,并确保它是可选的。
修改强>
SceneObject!.physicsBody! = nil
这不行!通过使用!
,您告诉编译器它不是nil
将其更改为
SceneObject!.physicsBody = nil