Wayback Machinekoobas.hobune.stream
May JUN Jul
Previous capture 12 Next capture
2021 2022 2023
1 capture
12 Jun 22 - 12 Jun 22
sparklines
Close Help
  • Products
  • Solutions
  • Made with Unity
  • Learning
  • Support & Services
  • Community
  • Asset Store
  • Get Unity

UNITY ACCOUNT

You need a Unity Account to shop in the Online and Asset Stores, participate in the Unity Community and manage your license portfolio. Login Create account
  • Blog
  • Forums
  • Answers
  • Evangelists
  • User Groups
  • Beta Program
  • Advisory Panel

Navigation

  • Home
  • Products
  • Solutions
  • Made with Unity
  • Learning
  • Support & Services
  • Community
    • Blog
    • Forums
    • Answers
    • Evangelists
    • User Groups
    • Beta Program
    • Advisory Panel

Unity account

You need a Unity Account to shop in the Online and Asset Stores, participate in the Unity Community and manage your license portfolio. Login Create account

Language

  • Chinese
  • Spanish
  • Japanese
  • Korean
  • Portuguese
  • Ask a question
  • Spaces
    • Default
    • Help Room
    • META
    • Moderators
    • Topics
    • Questions
    • Users
    • Badges
  • Home /
  • Help Room /
avatar image
0
Question by kyle-hope · Mar 07, 2019 at 08:36 PM · scripting problemaierror messagewaypointswaypoint system

Error with AI going to Waypoints,Issues with AI tracking waypoints

Hello, I have been trying to develop my own AI based off of the Unity Pluggable AI lesson - however I've been running into a bit of an issue when trying to implement some sort of waypoint system to my AI. The error I keep getting is:

  NullReferenceException: Object reference not set to an instance of an object
  EnemyManager.SetupAI (System.Collections.Generic.List`1 wayPointList) (at 
  Assets/EnemyManager.cs:25)
  GameManager2.SpawnAI (System.Collections.Generic.List`1 waypoints) (at 
  Assets/GameManager2.cs:28)
  GameManager2.Start () (at Assets/GameManager2.cs:18)

I've been trying to fix this, however no matter what I've done I haven't figured it out and I'm out of ideas. Below is the c# scripts for three of my classes with (the three associated with the making the AI and the error itself), any help would be appreciated, thanks!

GameManager2 Class:

  using System.Collections;
  using System.Collections.Generic;
  using UnityEngine;

  public class GameManager2 : MonoBehaviour {

 public GameObject[] m_EnemyPrefabs;
 public EnemyManager[] m_Enemy;
 public List<Transform> wayPointsForAI;

 private WaitForSeconds m_StartWait;

 void Start () {
     m_StartWait = new WaitForSeconds (1);
     SpawnAI (wayPointsForAI);

     StartCoroutine (GameLoop ());
 }

 private void SpawnAI(List<Transform> waypoints){
     for (int i = 0; i < m_Enemy.Length; i++) {
         m_Enemy [i].m_Instance = Instantiate (m_EnemyPrefabs [i], m_Enemy [i].m_SpawnPoint.position, m_Enemy [i].m_SpawnPoint.rotation) as GameObject;

         m_Enemy [i].m_PlayerNumber = i;
         m_Enemy [i].SetupAI(waypoints);
     }
 }

}

EnemyManager:

  using System.Collections;
   using System.Collections.Generic;
   using System;
   using UnityEngine;
   using UnityEngine.AI;
 
  [Serializable]
  public class EnemyManager {

 public Transform m_SpawnPoint;

 [HideInInspector] public int m_PlayerNumber;            
 [HideInInspector] public GameObject m_Instance;
 [HideInInspector] public List<Transform> m_WayPointList;

 private StateController m_StateController;
 private EnemyMovement m_Movement;
 private GameManager2 m_GameManager;

 public void SetupAI(List<Transform> wayPointList){

     m_StateController = m_Instance.GetComponent<StateController> ();
     m_StateController.SetupAI(true, wayPointList);

     MeshRenderer[] renderers = m_Instance.GetComponentsInChildren<MeshRenderer> ();
 }


StateManager:

  using System.Collections;
  using System.Collections.Generic;
  using UnityEngine;
  using UnityEngine.AI;

  public class StateController : MonoBehaviour {

 public State currentState;
 public State remainState;

 public Transform eyes;

 [HideInInspector] public NavMeshAgent navMeshAgent;
 [HideInInspector] public List<Transform> wayPointList;
 [HideInInspector] public int nextWayPoint;
 [HideInInspector] public Transform chaseTarget;
 [HideInInspector] public float stateTimeElapsed;

 private bool aiActive;

 void Awake(){
     navMeshAgent = GetComponent<NavMeshAgent> ();
 }

 public void SetupAI(bool aiActivation, List<Transform> wayPoints)
 {
     wayPointList = wayPoints;
     aiActive = aiActivation;
     if (aiActive) 
     {
         navMeshAgent.enabled = true;
     } else 
     {
         navMeshAgent.enabled = false;
     }
 }
Comment
Add comment
10 |3000 characters needed characters left characters exceeded
▼
  • Viewable by all users
  • Viewable by moderators
  • Viewable by moderators and the original poster
  • Advanced visibility
Viewable by all users

0 Replies

· Add your reply
  • Sort: 

Your answer

Hint: You can notify a user about this post by typing @username

Up to 2 attachments (including images) can be used with a maximum of 524.3 kB each and 1.0 MB total.

Follow this Question

Answers Answers and Comments

299 People are following this question.

avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image

Related Questions

What is a WaypointCircuit? How I make one? 2 Answers

AI Waypoint rotate problem 0 Answers

Several NPC with waypoints 1 Answer

Enemy AI keeps chasing player even after the player has left its line of sight. 0 Answers

Why the loop in waypoints in not working when set to true? 0 Answers


Enterprise
Social Q&A

Social
Subscribe on YouTube social-youtube Follow on LinkedIn social-linkedin Follow on Twitter social-twitter Follow on Facebook social-facebook Follow on Instagram social-instagram

Footer

  • Purchase
    • Products
    • Subscription
    • Asset Store
    • Unity Gear
    • Resellers
  • Education
    • Students
    • Educators
    • Certification
    • Learn
    • Center of Excellence
  • Download
    • Unity
    • Beta Program
  • Unity Labs
    • Labs
    • Publications
  • Resources
    • Learn platform
    • Community
    • Documentation
    • Unity QA
    • FAQ
    • Services Status
    • Connect
  • About Unity
    • About Us
    • Blog
    • Events
    • Careers
    • Contact
    • Press
    • Partners
    • Affiliates
    • Security
Copyright © 2020 Unity Technologies
  • Legal
  • Privacy Policy
  • Cookies
  • Do Not Sell My Personal Information
  • Cookies Settings
"Unity", Unity logos, and other Unity trademarks are trademarks or registered trademarks of Unity Technologies or its affiliates in the U.S. and elsewhere (more info here). Other names or brands are trademarks of their respective owners.
  • Anonymous
  • Sign in
  • Create
  • Ask a question
  • Spaces
  • Default
  • Help Room
  • META
  • Moderators
  • Explore
  • Topics
  • Questions
  • Users
  • Badges