2点間の距離を取得する場合,通常では
Vector3
.Distance(
Vector3
obja
,
Vector3
objb
);
などで取得するが,AIを使う場合はベクトルの計算ではなくAI(NavMesh)から距離が取れる(距離を出力してくれる)
//変数系
public NavMeshAgent mynav2;//インスペクタに現れるのでNavMeshがついているゲームオブジェクトをアサインする
float enemyDistance;
//以下をUpdate(){ } の中に入れる
enemyDistance = mynav2.remainingDistance;
で取得可能.
スクリプトサンプル例
using UnityEngine; using UnityEngine.UI; using System.Collections; public class aiDistance : MonoBehaviour { public NavMeshAgent mynav2;//インスペクタに現れるのでNavMeshがついているゲームオブジェクトをアサインする float enemyDistance; public Text disTex; // Use this for initialization void Start () { } // Update is called once per frame void Update () { enemyDistance = mynav2.remainingDistance; disTex.text = enemyDistance.ToString (); } }
実行画面例