我试图在y坐标0到y坐标10的十秒钟内移动一个对象。该对象是在y坐标0处创建的。问题是当动画开始时,对象弹出到结束位置大约一秒左右然后弹回到起始位置并正确开始动画。为什么对象会立即移动到最终位置,如何防止这种情况发生?
//create box bottom
func createGrabBox() {
grabbottom = grabBox.rootNode.childNodeWithName("grabbottom", recursively: true)!
grabbottom.position.y = 0
grabbottom.geometry!.firstMaterial!.transparency = 0.5
grabbottom.physicsBody = SCNPhysicsBody(type: SCNPhysicsBodyType.Dynamic, shape: nil)
scene.rootNode.addChildNode(grabbottom)
//animation snippet
SCNTransaction.begin()
SCNTransaction.setAnimationDuration(10.0)
SCNTransaction.setCompletionBlock() { }
grabbottom.position.y = 10
SCNTransaction.commit()
}
答案 0 :(得分:0)
您无法操纵动态身体的位置。使用运动物体。