// для предварительного создания пулов public void InstantiateToPool(string assetId, int count) { GameObject prefabReference = assetReferences.PrefabReference(assetId); if (prefabReference == null) { AssetInfo assetInfo = assetDatabase.GetAssetInfo(assetId); if (assetInfo == null) { Debug.LogError("Нет информации об ассете в базе " + assetId); return; } prefabReference = assetLoader.LoadAsset <GameObject>(assetInfo); if (prefabReference == null) { return; } assetReferences.AddPrefabReference(assetId, prefabReference); } for (int i = 0; i < count; i++) { GameObject instantiated = assetInstantiator.InstantiatedDeactivatedGameObject(assetId, prefabReference, assetPool.transform); assetPool.AddToPool(assetId, instantiated); } }
public static T GetObject <T>() where T : UnityEngine.Object { AssetInfo assetInfo = assetsDatabase.GetAssetInfo(typeof(T)); return(assetLoader.LoadAsset <T>(assetInfo)); }