【发布时间】:2020-10-19 18:41:50
【问题描述】:
我创建了具有 SCNCylinder 几何形状的 SCNNodes 来表示点之间的线(即:SCNSphere)。 它确实工作得很好。
现在我要移动一个点,并且想将“链接”到该点的 2 条线移动。为简单起见,让我们只关注第一行。
移动一行:
- 我移动圆柱节点的中心并更新其长度。
- 我使用 simdLook 来改变它的方向。
lineNode.simdLook(at: targetPoint, up: shapeRootNode.WorldUp, localFront: lineNode.WorldUp)
线正确地移动到中心点,并且具有正确的长度,但每 2 次调用就会出现错误的方向。第一次调用后它是正确的。在第二次调用之后,它垂直于它应该具有的方向。在第三次调用之后它是正确的。等等……????
✅ 我验证了 targetPoint 是正确的,场景的 worldUp(在它的根节点上)是恒定的。所以这留下了线节点的worldUp ❌。
simdLook 的第 3 个参数是局部前端。由于 SCNCylinder 是垂直构建的,因此其本地 worldUp 是行方向。所以它应该工作?????
【问题讨论】:
标签: scenekit