objective-c - SceneKit跟随相机?

标签 objective-c cocoa camera scenekit scnnode

我正在尝试在场景套件中制作跟随相机。我刚刚开始,所以请耐心等待。我有一个节点 (robotNode),并试图让相机跟随机器人。我通过将相机添加为机器人的子节点部分实现了这一点:

cameraNode = [SCNNode node];
cameraNode.camera = [SCNCamera camera];
[robotNode addChildNode:cameraNode];

// place the camera
cameraNode.position = SCNVector3Make(0, 0, 10);

但问题是当我开始旋转相机时,它不再跟随节点。看这里: cameraNodeImage

如何让它继续跟随节点?

最佳答案

您所编写的内容将创建一个距机器人固定距离的相机节点,但您没有采取任何措施来控制相机指向的位置。

创建一个SCNLookAtConstraint,其目标是机器人节点。将其附加到相机节点。

// warning, written in browser, untested

SCNLookAtConstraint *robotStare = [SCNLookAtConstraint lookAtConstraintWithTarget:robotNode];
// and maybe also
robotStare.gimbalLockEnabled = YES;

cameraNode.constraints = @[robotStare];

// OP added this, to make camera follow node. I'm skeptical.
cameraNode.camera.usesOrthographicProjection = YES;

关于objective-c - SceneKit跟随相机?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33850628/

相关文章:

Android webview 允许使用当前的 Android Studio 访问相机

objective-c - Objective C/Arduino 通信速度变慢

iphone - 有一条路径跟随另一条路径

objective-c - cocoa :以当前字体粘贴格式化文本?

c++ - OpenCV 在新图像中旋转、扭曲和平移 ROI

python - 运行 subprocess.call 来运行 Cocoa 命令行应用程序

ios - 显示黑屏而不是 UICollectionView

c++ - iPhone CoreAudio 停止时挂起

multithreading - OpenCV VideoCapture 在 OS X 上不会阻塞

ios - 设置图像后,UIImageView 调整为奇怪的尺寸