【问题标题】:SceneKit Moving a Camera around another NodeSceneKit 在另一个节点周围移动相机
【发布时间】:2015-08-11 14:38:36
【问题描述】:

我想在 SCNNode 节点A 周围移动相机。 到目前为止我所做的是:

self.cameraNode.constraints = [SCNLookAtConstraint(target: nodeA)]

现在,如果我增加相机的 position.x,相机仍然会看向 nodeA。如何围绕节点A移动相机(如炉边的月亮)?

相机应该沿着圆形轨道移动(只是一个圆圈,我对椭圆轨道不感兴趣)

【问题讨论】:

    标签: ios swift move scenekit


    【解决方案1】:

    添加moon作为earth的子节点。这样平移 earth 不会影响 moon 的相对位置。您可以在SceneKit Slides for WWDC 2014 示例代码中找到示例。

    【讨论】:

    • 使用 SCNPhysicsHingeJoint 解决
    • 你不应该为此使用物理学。只需将旋转动画添加到正确的节点即可。
    • 是的,但我必须改变我认为的轴心,相机应该围绕一个节点旋转。仅使用动画旋转它旋转尊重它的(本地)原点
    • 您将拥有一个 rotation 节点,并将您的相机节点作为子节点。您将平移 camera 节点以使其处于所需的距离,并为 rotation 节点设置动画。这将实现与更改节点的枢轴相同的效果。
    • 是的,我是这样做的,但是我已经创建了另一个相机,并且我已经改变了场景视图的视角。 WWDC 幻灯片是学习 SceneKit 的最佳资源。非常感谢
    猜你喜欢
    • 2016-12-02
    • 2020-06-21
    • 1970-01-01
    • 2017-03-28
    • 2014-07-31
    • 1970-01-01
    • 2017-09-12
    • 2012-09-17
    • 2021-08-25
    相关资源
    最近更新 更多