赤い線はガイド。
10フレームで目的座標に到着する(たぶん)ように作った。
知った事
・[RequireComponent(typeof(コンポーネント名))]はコンポーネントを付けてくれるわけじゃない
・コンポーネントを付けてくれるのはAddComponent
using UnityEngine; using System.Collections; [RequireComponent(typeof(LineRenderer))] public class uma : MonoBehaviour { Vector3 target; Vector3 d; LineRenderer lr; // Use this for initialization void Start() { this.InitLineRenderer(); this.SetTarget(); } // Update is called once per frame void Update() { if (1.0 <= Vector3.Distance(this.transform.position, this.target)) { this.transform.rotation = Quaternion.Slerp(this.transform.rotation, Quaternion.LookRotation(this.target - this.transform.position), Time.time * 1f); this.transform.position = this.transform.position + d; this.lr.SetPosition(0, this.transform.position); } else { this.SetTarget(); } } //目標地点の設定 private void SetTarget() { this.target = new Vector3(Random.Range(-100, 100), 0, Random.Range(-100, 100)); d = (this.target - this.transform.position) / 10.0f; this.lr.SetPosition(1, this.target); } //ラインレンダラーの設定 private void InitLineRenderer() { this.gameObject.AddComponent<LineRenderer>(); this.lr = this.GetComponent<LineRenderer>(); this.lr.SetVertexCount(2); } }