【发布时间】:2018-03-01 14:21:40
【问题描述】:
问题是不言自明的。我希望能够简单地在 SceneKit 编辑器中移动枢轴点,这在 Maya 等其他 3D 建模工具中是非常标准的。有没有办法做到这一点?这比尝试以编程方式更改枢轴点更清楚,我所有的尝试要么是使用枢轴点移动整个节点,要么是制作一个重复的节点并且随着枢轴点移动。
任何帮助将不胜感激。
【问题讨论】:
问题是不言自明的。我希望能够简单地在 SceneKit 编辑器中移动枢轴点,这在 Maya 等其他 3D 建模工具中是非常标准的。有没有办法做到这一点?这比尝试以编程方式更改枢轴点更清楚,我所有的尝试要么是使用枢轴点移动整个节点,要么是制作一个重复的节点并且随着枢轴点移动。
任何帮助将不胜感激。
【问题讨论】:
您可以添加一个空节点,将其放置在您想要的任何位置,并将您的“真实”对象添加为该空节点的子节点。
【讨论】:
这在 3D 建模工具中确实是相当标准的,但这并不是 SceneKit 编辑器的真正用途。
通过节点的枢轴属性移动枢轴作为偏移量,应通过将平移矩阵应用于枢轴来完成。枢轴应用于模型的旋转、缩放和位置。改变轴心后模型的内容发生了变化,模型的位置属性将保持不变,即使模型会在不同的位置被感知。因此,在设置轴心后,您应该重新定位模型(例如,使用轴心的倒数)。
如果您真的想改变 3D 模型的轴心,它本质上应该是在局部空间中移动的顶点,这需要 3D 建模工具。
这同样适用于像 Maya 这样的 3D 工具。例如,您可以选择所有顶点并移动它们(当枢轴保持在 0,0,0 时),或者您可以移动枢轴并在此之后将模型重新定位到世界(因此枢轴,实际上是 .节点的位置,将再次位于 0,0,0 或其所需位置)。
【讨论】: