使用SceneKit,如何获得身份四分法



啊,然后继续。

我想创建一个SCNTransformConstraint方向约束,以便始终将SCNNode定向到世界X,y&z轴,无论节点的父母如何定向/移动。

我可以在这样的世界空间中创建一个方向约束:

let orientationConstraint = 
SCNTransformConstraint.orientationConstraint(inWorldSpace: true) {
  (node, orientation) -> SCNQuaternion in
  return <<<need quaternion identity here>>>
}
node.constraints = [orientationConstraint]

,但是我需要通过约束回调来提供乘法标识四基因。当使用四元素描述方向和旋转为场景套件时,四元素身份表示没有旋转。或与世界保持一致的世界坐标的方向。

这类似于缩放1给出相同比例的方式。并设置一个比例为1重置没有缩放的东西。

对于场景套件矩阵,有SCNMatrix4Identity。或者,场景套件矢量的加法身份: SCNVector3Zero

如何获得乘法的四元素身份?

似乎没有SCNQuaternionIdentity

可以使用SCNQuaternion(0, 0, 0, 1)构建身份四基因。

请注意不要使用默认的构造函数SCNQuaternion()。它等效于SCNQuaternion(0, 0, 0, 0),它不代表有效的方向。

相关内容

  • 没有找到相关文章

最新更新