前提・実現したいこと
現在位置からゴールまでを直線移動する以下のような関数を作成し、拡張として進行する際に波状に移動する機能を追加したいと考えています。
進行方向(ゴール)がZ方向のみの場合、Mathf.Sin()をXに加えることで波を表現することができました。しかし進行方向がX+Z方向(斜め)やX方向(横)の場合、移動がXの波に引きずられるため挙動がおかしくなります。
現在位置からゴールまでの2点間を指定して綺麗に波状に移動する方法を知り、実現したいです。
該当のソースコード
void StraightMove(GameObject moveObject, GameObject goalPos, float moveSpeed) { moveObject.transform.position = Vector3.MoveTowards(moveObject.transform.position, goalPos.transform.position, moveSpeed * Time.deltaTime); }
試したこと
ゴールの位置のXにMathf.Sin()で作成した波を加え動かしました。
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。