如何在SceneKit中实现旋转的“回弹”效果?

时间:2018-07-07 13:30:42

标签: scenekit

我正在尝试使用SceneKit在此动画中实现木棒的效果:

https://www.instagram.com/p/BkzqpHHgKb1/

杆可以绕其中心旋转,然后重新回到其原始位置。

我有一个细长的Scenekit SCNBox,代表杆。我在杆的物理体上使用SCNPhysicsHingeJoint使其能够绕其中心旋转:

 let joint = SCNPhysicsHingeJoint(body: (rod.physicsBody!), axis:SCNVector3(x: 0, y: 0, z: 1) , anchor: SCNVector3(x: 0.0, y: 0.0, z: 0))
 scnView.scene?.physicsWorld.addBehavior(joint)

是否有一种方法可以通过操纵物理特性(例如恢复原状,angularDamping等)使杆弹回其原始位置?我可以使用SCNPhysicsField.spring()实现吗?

或者,我是否只是手动将杆动画设置回其原始位置?

我已经在SceneKit编辑器中进行了很多设置,因此没有很多代码,但是如果对这个问题有用的话,我可以将其重写为代码。

0 个答案:

没有答案