2015-06-19 3 views
3

Я хочу следить за вращающейся сферой в SceneKit от Apple. Я добавил LookAt Constraint к камере, и когда сфера падает вниз, кулачок указывает на нее, но если сфера отходит, камера остается в своем текущем положении. Я хочу, чтобы кулачок следил за этой сферой, как в третьем стрелке-персеоне с предопределенным расстоянием до нее. Если я сделаю кулачок дочернимNode сферы, кулачок «вращается» вокруг него, когда мяч катится. Любые идеи, как я могу следить за мячом с помощью камеры?Scenekit PhysicEngine после катящегося шарика

+0

Вы можете запустить все действия, работающие на узле, чтобы следовать на камере, а это не очень удобный способ, хотя. – LinusGeffarth

ответ

1

Это довольно просто. Вам просто нужно изменить положение узла камеры в каждом кадре на presentationNode шара плюс смещение, чтобы избежать его внутри.

Я не слишком хорошо знаком с 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  
}