我正在尝试在Scenekit中制作跟随相机。我才刚刚开始,所以请尝试忍受我。我有一个节点(robotNode
),正在尝试使相机跟随机器人。通过将相机添加为机器人的子节点,我已经部分实现了这一点:
cameraNode = [SCNNode node];
cameraNode.camera = [SCNCamera camera];
[robotNode addChildNode:cameraNode];
// place the camera
cameraNode.position = SCNVector3Make(0, 0, 10);
但是问题是当我开始旋转相机时,它不再跟随该节点。看这里:
如何获得继续跟随节点的信息?
最佳答案
您编写的内容将创建一个与机器人保持固定距离的相机节点,但是您并没有做任何事情来控制相机指向的位置。
创建一个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/