“SCNVector3”类型的值没有成员“长度”

时间:2017-04-24 20:11:27

标签: swift xcode scenekit

所以我用Scenekit做了一个测试游戏,并使用默认的游戏模板来完成它。在我的代码中,我将球速设置为1.0的恒定速度,以便控制物理行为,如下所示:

var ballNode: SCNNode!
... 
ballNode = gameScene.rootNode.childNode(withName: "Ball", recursively:
        true)!
...
ballNode.physicsBody?.velocity.length = 1.0

然而,当我使用“single page application”模板从xcode创建一个新的游戏模板并重新创建完全相同的代码以及场景之间的其他过渡时,我的效果非常好,我无法访问velocity.length

错误:

Value of type 'SCNVector3' has no member 'length'

我希望如何:screenshot
它是怎样的:screenshot

那我错过了什么?我能想到的代码的唯一区别是我用来创建游戏的不同模板。

1 个答案:

答案 0 :(得分:1)

根据您的屏幕截图,您可能会将此.swift文件复制到项目中

https://github.com/wesmatlock/MarbleMazer/blob/master/MarbleMaze/GameUtils/SCNVector3%2BExtensions.swift

我唯一能找到的length是可设置的var,而不是函数,其他函数似乎匹配。