2017-09-15 134 views
0

我一直在寻找一条线索,因为2天没有运气。仅围绕一个轴旋转节点

基本上,我想要在Scenekit中围绕一个轴动画旋转一个节点。像开门动画一样。

事情是当我旋转它,它从中间旋转,而不是根据需要从门侧。这里是什么,我试图做一个示例代码:

let oldTransform = node.transform 
let rotation = SCNMatrix4MakeRotation(Float(-Double.pi/2.0), 5.0, 0.0, 0.0); 
SCNTransaction.begin() 
SCNTransaction.animationDuration = 1.5 
node.transform = SCNMatrix4Mult(rotation, oldTransform) 
SCNTransaction.commit() 

任何暗示我应该怎么做,我将非常感激。我是Scenekit的新手,希望你们能理解这一点。

+1

要么更改节点的锚点,要么将其添加为另一个节点的子节点,并将其旋转。 –

回答

0

将SCNNode的枢轴转动到门/模型的侧面之后再旋转。您可以通过更改其透视属性或在大多数3D建模软件中通过代码完成此操作。