【问题标题】:Issue with SceneKit/ModelIO positionSceneKit/ModelIO 位置问题
【发布时间】:2017-03-24 09:11:15
【问题描述】:

我正在使用 ModelIO 对 SceneKit 节点进行体素化,这就是我正在做的事情:

不幸的是,体素节点没有出现在场景中与用于生成这些体素的节点相同的位置(例如,如果我想对放置在 (0, 2, 0) 处的球体进行体素化,则元音化的内容会出现在我的场景的中心,我认为 SceneKit 和 ModelIO 坐标系之间可能存在问题(例如,SceneKit 将 y 向上,而 ModelIO 将 z 向上)但无论球体的基本坐标(2、0、 0) (0, 2, 0) 或 (0, 0, 2) 体素永远不会出现居中。

所以你在我的代码中看到了一个问题?

谢谢。

【问题讨论】:

    标签: scenekit


    【解决方案1】:

    下次可以用实际的源代码代替截图吗?

    您似乎没有对输入 node 的位置执行任何操作。您永远不会为 base 分配位置,因此它在场景中的位置是 (0, 0, 0)。所有体素都相对于base 的位置放置。

    base.position = node.position
    

    顺便说一句:不要将base 添加到硬连线gameView.scene?.rootNode 作为副作用,而是考虑返回base 作为结果。我也有点惊讶您能够将输入 node 从原始场景移动到 tempScene

    【讨论】:

    • 我真的不认为我需要置换基础,因为体素化似乎会生成相对于场景原点的体素。
    • 也许是这样。复制/粘贴您的代码(不是屏幕截图),明天我会在 Playground 中尝试。
    猜你喜欢
    • 2022-07-07
    • 2015-08-26
    • 1970-01-01
    • 2021-02-19
    • 2017-06-04
    • 2020-02-22
    • 2020-11-29
    • 1970-01-01
    • 2016-04-01
    相关资源
    最近更新 更多