Мы импортировали анимацию из Blender в SceneKit. Анимация включает в себя очень простое движение на плоскости XY, потому что мы только что тестировали его в данный момент. Мы загрузили его следующим кодом:
let importedDae = SCNScene(named: "animated.scn")!
let node = importedDae.rootNode.childNode(
withName: "Cube", recursively: true)!.clone()
self.headAnimationPlayer = headNode.animationPlayer(forKey: "Cube_CubeAction_transform")!
let animation = headAnimationPlayer.animation
Затем мы добавили его к нашему объекту с помощью
ourObject.addAnimation(self.anime, forKey: "Cube_CubeAction_transform")
, так как ожидаемая анимация запускается немедленно. Но возникла проблема с анимацией перемещения объекта в позицию (0,0,0), после чего была выполнена анимация.
Мы создали анимацию в Blender вокруг позиции (0,0,0), это логично. Но наш объект - динамический c и может быть где угодно при добавлении анимации.
Мы хотим, чтобы анимация использовала текущую позицию нашего объекта в качестве источника и создавала анимацию вокруг него. Это возможно?