前提・実現したいこと
デザイナーでスクリプト初心者です。
Unityで人をNavmeshで歩かせて、目的地に着いたらアイドル動作に切り替わるよう設定したいです。
スクリプトは思った通りに作動しているのですが、以下のエラーメッセージが出ているので記述のおかしい部分を修正したいです。
よろしくお願いいたします。
発生している問題・エラーメッセージ
UnassignedReferenceException: The variable goal of walk_add has not been assigned.
You probably need to assign the goal variable of the walk_add script in the inspector.
UnityEngine.Transform.get_position () <0x4676ddf0 + 0x0006a> in <5350b2ecf18c4d938d283fb54ae35614>:0
walk_add.DelayMethod () (at Assets/Risk search/Script/walk_add.cs:23)
該当のソースコード
using UnityEngine;
using UnityEngine.AI;
using System.Collections;
public class walk_add : MonoBehaviour
{
[SerializeField, HideInInspector] UnityEngine.AI.NavMeshAgent agent;
[SerializeField, HideInInspector] Animator animator;
public Transform goal; public float start; private void Start() { Invoke("DelayMethod", start); } void DelayMethod() { NavMeshAgent agent = GetComponent<NavMeshAgent>(); agent.destination = goal.position; } void Reset() { agent = GetComponent<UnityEngine.AI.NavMeshAgent>(); animator = GetComponent<Animator>(); } void Update() { animator.SetFloat("Speed", agent.velocity.sqrMagnitude); }
}
### 試したこと [Navmeshの移動速度を取得するスクリプト](http://tsubakit1.hateblo.jp/entry/2015/07/02/233000) [Navmeshの目的地と開始時間を設定するスクリプト](https://qiita.com/toRisouP/items/e402b15b36a8f9097ee9) [目的地を指定するスクリプト](https://docs.unity3d.com/ja/2019.3/Manual/nav-CreateNavMeshAgent.htm) を調べて合体させています。 Visual Studioでは問題は見つかりませんでしたとなっています。 ### 補足情報(FW/ツールのバージョンなど) Unity2018.4 Visual Studio Community 2019
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。