LoginSignup
1
0

More than 5 years have passed since last update.

対象をカメラに移すまで待機させる

Posted at

概要

現在見えている画面外に配置した敵等のオブジェクトが、カメラに映るまで待機させておく方法。

ソース

    private bool is_Rendered;

    void OnWillRenderObject()
    {
        if (Camera.current.name == "Main Camera")
        {
            is_Rendered = true;
        }
    }

OnWillRenderObject()はオブジェクトが表示されている場合カメラごとに 1 度呼び出されます。
なので、呼び出されたらis_Renderをtrueにして、あとはUpdate()内の行動をif分などで制御したりすればよい。

    void Update () {

        TimeElapsed += Time.deltaTime;

        if (is_Active == true && is_Rendered == true)
        {
            //プレイヤーの方向に向かって移動していく
            Vector3 diff = (player.transform.position - transform.position); //プレイヤーと対照との差分を取得
            Enemy_rigidbody.velocity = new Vector3(diff.x * speed_x, diff.y * speed_y);//取得した座標に対して変数をかけてやると進む
        }

こんな感じ。

1
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
0