我正在尝试使用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编辑器中进行了很多设置,因此没有很多代码,但是如果对这个问题有用的话,我可以将其重写为代码。