OGeek|极客世界-中国程序员成长平台

标题: ios - Scenekit 围绕场景旋转相机 [打印本页]

作者: 菜鸟教程小白    时间: 2022-12-13 16:25
标题: ios - Scenekit 围绕场景旋转相机

我在 Swift 中有一个简单的 SceneKit 项目,我在其中将两个对象添加到场景中:一个球和一个盒子。

我希望能够:

  1. 用一根手指平移以围绕场景旋转相机
  2. 通过单击“移动”按钮、选择对象并将其拖动到新位置(通过 PanGesture)来移动对象

我希望使用allowCameraControl = false,因为我无法在启用它的情况下执行手势2),并且我想进一步添加panGestures。

我卡住了,因为我无法让相机围绕场景旋转。我让相机看着一个有约束的物体:

let constraint = SCNLookAtConstraint(target: globalSCNNode)
constraint.gimbalLockEnabled = true
globalCameraSCNNode.constraints = [constraint]

但是像这样的平移手势没有任何作用:

func panGesture(sender: UIPanGestureRecognizer) {
let translation = sender.translationInView(sender.view!)
var action = SCNAction.rotateByX(0, y: 0.5, z: 0, duration: 0.1)
globalCameraSCNNode.runAction(action)

有人可以帮忙吗? 谢谢,



Best Answer-推荐答案


LookAt 约束将覆盖您在 panGesture 中命令的旋转。尝试删除该约束。

关于ios - Scenekit 围绕场景旋转相机,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37217228/






欢迎光临 OGeek|极客世界-中国程序员成长平台 (https://ogeek.cn/) Powered by Discuz! X3.4