public void RecycleAsset(string assetName, Object assetObject) { if (!m_RecycleAssetIndexMap.ContainsKey(assetName)) { if (m_FreeIndexList.Count > 0) { var index = m_FreeIndexList[m_FreeIndexList.Count - 1]; m_FreeIndexList.RemoveAt(m_FreeIndexList.Count - 1); var assetReference = s_AssetReferences.Get(); assetReference.SetTarget(assetObject); assetReference.Name = assetName; m_RecycleAssetList[index] = assetReference; m_RecycleAssetIndexMap.Add(assetName, index); } else { var assetReference = s_AssetReferences.Get(); assetReference.SetTarget(assetObject); assetReference.Name = assetName; m_RecycleAssetList.Add(assetReference); m_RecycleAssetIndexMap.Add(assetName, m_RecycleAssetList.Count - 1); } } else { var assetReference = m_RecycleAssetList[m_RecycleAssetIndexMap[assetName]]; if (!assetReference.IsAlive()) { assetReference.Name = assetName; assetReference.SetTarget(assetObject); } } }
public static AssetLoadTask GetAssetLoadTask() { return(s_AssetLoadTasks.Get()); }
public static AssetNode GetAssetNode() { return(s_AssetNodes.Get()); }
public static AssetBundleWrap GetAssetBundleWrap() { return(s_AssetBundleWrap.Get()); }