title: How to control multiple skeletal animations independently with SceneKit?
body: <p>I am trying to control multiple skeletal animations at the same time with multiple inputs, each of which points to a different frame of an animation. Imagine the way you set weight for a morpher with <code>setWeight(_:forTargetAt:)</code>, but with input as a frame which I want the animation to be in state of. </p>
  
  <p>I achieved this for just one animation by doing something like</p>
  
  <pre><code>@IBOutlet weak var sceneView: SCNView!
  
  var animationPlayer: SCNAnimationPlayer! = nil
  
  override func viewDidLoad() {
      super.viewDidLoad()   
  
      //add a node on the scene and give animationPlayer the node's animation player
  
      animationPlayer.animation.usesSceneTimeBase = true
  }
  
  @IBAction func sliderChanged(_ sender: UISlider) {
      sceneView.sceneTime = Double(sender.value) * animationPlayer.animation.duration
  }
  
  </code></pre>
  
  <p>where a slider is put to change the <code>sceneTime</code> of <code>sceneView</code>. This could only work if the node has just one animation. </p>
  
  <p>But what I want to achieve is controlling all the animations asynchronously but on one node. I cannot simply play with sceneTime because that will cause all the animations to be played on the same time base in sync.</p>
  
  <p>Is there any way to play all the animations with different input time or any value that works as a pointer to a specific frame of the animation?
  (e.g. at one point, first animation is playing the 5th frame while second is in state of 8th. At next frame of rendering, the first animation is playing 4th frame and the second is playing 12th frame.)</p>
  
  <p>Thanks.</p>