簡易的な波移動

タイトル通りのとても簡易的な波移動のプログラムをメモしておきます。
あまりにも簡易的な為、細かい移動と組合せたい場合はしっかりと数学で使う処理を入れるのが良いです。

using UnityEngine;

float speed = 5.5f;
bool courseX = true;

void FixedUpdate()
{
    if (Core.EnemyObj.transform.position.x <=-4)
    {
     courseX = true;
    }
    else if (4 <= Core.EnemyObj.transform.position.x)     
    {
         courseX = false;
     }

     if (courseX)
     { 
        this.Rigidbody.velocity = 
             new Vector3(speed,Rigidbody.velocity.y,-speed);
     }
     else
     { 
       this.Rigidbody.velocity = 
             new Vector3(-speed,Rigidbody.velocity.y,-speed);
     }

}

Unityで動かす前提の為、記事で公開しているコードと実装は多少変わりますが、基本的な動きの違いはありません。

上記コードのままだと、敵の初期配置とスピードで波の間隔が変わります。
簡易的に波移動をさせたい時のコードなどで、実際に制作するときは、クォータニオンやオイラー角を使用してください。

コメント

タイトルとURLをコピーしました