【Unity】対象を追跡する
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
// ずっと、追いかける
public class Forever_Chase : MonoBehaviour
{
public string targetObjectName; // 目標オブジェクト名
public float speed = 1; // スピード:Inspectorで指定
GameObject targetObject;
void Start () // 最初に、目標オブジェクトを見つけておく
{
targetObject = GameObject.Find(targetObjectName);
}
private void FixedUpdate() // ずっと、目標オブジェクトの方向を調べて
{
Vector3 dir = (targetObject.transform.position - this.transform.position).normalized;
// その方向へ指定した量で進む
float vx = dir.x * speed;
float vz = dir.z * speed;
this.transform.Translate(vx / 50, 0, vz / 50);
}
}
まず下記で、追跡する対象の方向を求める
Vector3 dir = (targetObject.transform.position - this.transform.position).normalized;
そのあと、求めたx軸とz軸方向に、速度の値をかける。
Author And Source
この問題について(【Unity】対象を追跡する), 我々は、より多くの情報をここで見つけました https://qiita.com/Unity_mametarou/items/8527754a52bdae2221a0著者帰属:元の著者の情報は、元のURLに含まれています。著作権は原作者に属する。
Content is automatically searched and collected through network algorithms . If there is a violation . Please contact us . We will adjust (correct author information ,or delete content ) as soon as possible .