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); } }
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); }