2017-01-26 14 views
2

私はスプライトからパスを作成してからSKAction.follow(path, duration: 1.0)を実行する関数を持っています。パスは(0,0)から始まり、ターゲットポイントで終了します。各スプライトに対してこのパスを作成して実行すると、それらはすべて同じパスに沿って移動しますが、開始位置と相対的に移動します。SKNode follow pathは常に相対パス

彼らは何らかの理由で彼らの位置から同じ目標位置にパスをたどりません、彼らは終点に収束しません。

私は間違っていますか?

+0

こんにちはHelium3、あなたの問題についてはどうですか? –

+0

@AlessandroOrnano - はい私はそれを解決しました。これはノード間のポイントの翻訳に関する問題でした – jarryd

+0

あなたのプロジェクトにとって幸運なことを知って幸いです –

答えて

3

あなたは他のフォローパスタイプのメソッドを使用することができます。

オフセットenter image description here

場合は、パス内のポイントは、ノードのからの相対オフセットがあるが 開始位置。 が偽の場合、ノード内のポイントは絶対 の座標値になります。あなたがする必要がある場合は詳細を検索するに

は公式docs


に見て、あなたのパスがプログラムに開始CGPointからすべてCGPathElement年代を取得します(たとえば、いくつかの要素を変更するために再構築します最後にCGPoint)あなたはこれを見ることができますanswer

+0

これはおかげです、私の問題は、ターゲットポイントがスプライト座標に相対的でなく、(0、0 ) – jarryd

+0

2つの異なるノード間の 'CGPoint'の[変換](https://developer.apple.com/reference/spritekit/sknode/1483056-convert)に関係するかもしれません –