PoolManager.CreatePool C# (CSharp) Метод

CreatePool() публичный Метод

public CreatePool ( GameObject prefab, int poolSize ) : void
prefab GameObject
poolSize int
Результат void
	public void CreatePool(GameObject prefab, int poolSize) {
		int poolKey = prefab.GetInstanceID ();

		if (!poolDictionary.ContainsKey (poolKey)) {
			poolDictionary.Add (poolKey, new Queue<ObjectInstance> ());

			GameObject poolHolder = new GameObject (prefab.name + " pool");
			poolHolder.transform.parent = transform;

			for (int i = 0; i < poolSize; i++) {
				ObjectInstance newObject = new ObjectInstance(Instantiate (prefab) as GameObject);
				poolDictionary [poolKey].Enqueue (newObject);
				newObject.SetParent (poolHolder.transform);
			}
		}
	}

Usage Example

Пример #1
0
 private void Start()
 {
     _poolManager = ServiceLocator.Resolve <PoolManager>();
     _poolManager.CreatePool(UnitForvard, CountUnitForward);
     _poolManager.CreatePool(UnitDiagonal, CountUnitDiagonal);
     _poolManager.CreatePool(UnitFriend, CountUnitFriend);
 }
All Usage Examples Of PoolManager::CreatePool