Exemple #1
0
        public static EmergentAgent NewAgent(EmergentBehaviour behaviour)
        {
            EmergentAgent a = new EmergentAgent();

            a.currentBehaviour = behaviour;
            a.position         = Vector3.zero;
            a.direction        = Vector3.zero;
            return(a);
        }
        void CreateAgents(float speedmps, EmergentBehaviour behaviour)
        {
            _agents = new List <EmergentAgent>();
            for (int i = 0; i < numberOfAgents; i++)
            {
                Vector3       d = UnityEngine.Random.onUnitSphere;
                Vector3       p = transform.position + UnityEngine.Random.insideUnitSphere * startRadiusOfAllAgents;
                EmergentAgent a = EmergentAgent.NewAgent(behaviour, p, d, agentSpeed, agentPrefab);


                a.transform.SetParent(this.transform);
                _agents.Add(a);
            }
        }
Exemple #3
0
        public static EmergentAgent NewAgent(EmergentBehaviour behaviour, Vector3 position, Vector3 direction, float speedMetersPerSecond, GameObject prefab)
        {
            EmergentAgent a = new EmergentAgent();

            a.currentBehaviour = behaviour;

            GameObject g = GameObject.Instantiate <GameObject>(prefab, position, Quaternion.identity);

            a.transform            = g.transform;
            a.position             = position;
            a.direction            = direction;
            a.speedMetersPerSecond = speedMetersPerSecond;


            return(a);
        }