SceneKit SCNAction переместится в неправильную позицию
У меня есть baseNode (SCNNode) в позиции (0, 0,4, -1); У меня есть другой SCNNode в позиции (2,-1,3); Я пытался использовать SCNAction.move(to:baseNode.position), как-то он не перемещается в baseNode, он полностью выключен, что заставляет меня задуматься, находятся ли они в одной системе координат? У них один и тот же родительский узел.
Вот мои коды
func setupBase() -> SCNNode?{
let scene = SCNScene(named: "art.scnassets/ship.scn");
let node = scene?.rootNode.childNode(withName: "ship", recursively: true)!
return node
}
func addBaseNodetoScene(){
var baseNode = setupBase();
let nodeVector = SCNVector3(x: 0, y: 0.4, z: -1);
baseNode?.position = nodeVector;
sceneView.scene.rootNode.addChildNode(baseNode!);
}
func createAnotherNode()
{
var anotherNode = SCNNode();
anotherNode.geometry = SCNBox(width: 0.1, height: 0.1, length: 0.1, chamferRadius: 0);
anotherNode.position = SCNVector3(x: 2, y: -1, z: -3);
sceneView.scene.rootNode.addChildNode(anotherNode);
let actionMove:SCNAction = SCNAction .move(to: cameraPosition, duration: 10);
anotherNode.runAction(actionMove);
}
func playGame(){
addBaseNodetoScene()
createAnotherNode()
}
После того, как я могу играть в Game, я вижу, что два узла созданы, но второй узел не перемещается в baseNode. Есть ли что-то, что я сделал неправильно?