Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ios/95.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ios Scenekit PhysicEngine跟随滚球_Ios_Swift_Physics_Scenekit - Fatal编程技术网

Ios Scenekit PhysicEngine跟随滚球

Ios Scenekit PhysicEngine跟随滚球,ios,swift,physics,scenekit,Ios,Swift,Physics,Scenekit,我想在苹果的SceneKit中跟踪一个旋转球体。我已经为摄影机添加了一个注视约束,当球体下落时,摄影机将指向它,但如果球体滚开,摄影机将保持在其当前位置。 我想让凸轮像第三个人射击一样跟随这个球体,与它有一个预定义的距离。如果我使凸轮成为球体的子节点,当球滚动时,凸轮围绕它“旋转”。 你知道我怎么用凸轮跟踪球吗?很简单。只需将摄影机节点在每个帧上的位置更改为球的位置加上偏移,以避免位于球的内部 我对Swift不太熟悉,但代码如下所示: func renderer(aRenderer: SCNSc

我想在苹果的SceneKit中跟踪一个旋转球体。我已经为摄影机添加了一个注视约束,当球体下落时,摄影机将指向它,但如果球体滚开,摄影机将保持在其当前位置。 我想让凸轮像第三个人射击一样跟随这个球体,与它有一个预定义的距离。如果我使凸轮成为球体的子节点,当球滚动时,凸轮围绕它“旋转”。
你知道我怎么用凸轮跟踪球吗?

很简单。只需将摄影机节点在每个帧上的位置更改为球的位置加上偏移,以避免位于球的内部

我对Swift不太熟悉,但代码如下所示:

func renderer(aRenderer: SCNSceneRenderer, didSimulatePhysicsAtTime time: NSTimeInterval){
    var ballP = ballNode.presentationNode.position
    // Offset the camera up and on X:
    var cameraP = SCNVector3(x: ballP.x+5, y: ballP.y+10, z: ballP.z)
    cameraNode.position = cameraP       
}

您也可以运行节点上运行的所有操作来跟踪摄影机,但这并不是一种真正方便的方法。