Swift, SceneKit и положение камеры - PullRequest
0 голосов
/ 07 сентября 2018

Я разрабатываю приложение, показывающее трехмерное человеческое тело - в редакторе SceneKit я настроил камеру, указывающую на модель.

Когда я установил sceneView.allowsCameraControl = true , пользователь может перемещаться вокруг объекта, увеличивать и уменьшать его с помощью простых жестов.

Для вертикального перемещения я реализовал UISlider - я не хочу, чтобы пользователь перемещался вертикально двумя жестами пальцев.

В ползунке я делаю следующее:

@IBAction func sliderDidMove(_ sender: UISlider) {
    cameraNode = sceneView.scene?.rootNode.childNode(withName: "camera", recursively: true)
    let vert = 1.5*(0.5 - sender.value)
    cameraNode?.position.y = posY + vert
}

Это прекрасно работает, когда я меняю положение ползунка сразу после загрузки моего ViewController. Но как только я поворачиваю или масштабирую модель жестами, ползунок больше не показывает эффекта - поэтому я больше не могу программно изменять положение своего узла камеры.

Кто-нибудь знает, как я могу это исправить?

...