private void OnLoadResourceAgentHelperLoadComplete(object sender, LoadResourceAgentHelperLoadCompleteEventArgs e) { AssetObject assetObject = null; if (m_Task.IsScene) { assetObject = m_ResourceLoader.m_AssetPool.Spawn(m_Task.AssetName); } if (assetObject == null) { object[] dependencyAssets = m_Task.GetDependencyAssets(); assetObject = AssetObject.Create(m_Task.AssetName, e.Asset, dependencyAssets, m_Task.ResourceObject.Target, m_ResourceHelper, m_ResourceLoader); m_ResourceLoader.m_AssetPool.Register(assetObject, true); m_ResourceLoader.m_AssetToResourceMap.Add(e.Asset, m_Task.ResourceObject.Target); foreach (object dependencyAsset in dependencyAssets) { object dependencyResource = null; if (m_ResourceLoader.m_AssetToResourceMap.TryGetValue(dependencyAsset, out dependencyResource)) { m_Task.ResourceObject.AddDependencyResource(dependencyResource); } else { throw new GameFrameworkException("Can not find dependency resource."); } } } s_LoadingAssetNames.Remove(m_Task.AssetName); OnAssetObjectReady(assetObject); }
private void OnLoadResourceAgentHelperLoadComplete(object sender, LoadResourceAgentHelperLoadCompleteEventArgs e) { AssetObject assetObject = null; if (m_Task.IsScene) { assetObject = m_AssetPool.Spawn(m_Task.AssetName); } if (assetObject == null) { assetObject = new AssetObject(m_Task.AssetName, e.Asset, m_Task.GetDependencyAssets(), m_Task.Resource, m_AssetPool, m_ResourcePool, m_ResourceHelper, m_ResourceLoader.m_DependencyCount); m_AssetPool.Register(assetObject, true); } m_LoadingAsset = false; s_LoadingAssetNames.Remove(m_Task.AssetName); OnAssetObjectReady(assetObject); }