Exemplo n.º 1
0
        internal static AssetLoaderBase CreateLoaderInternal(AssetBundleInfo bundleInfo)
        {
            // 如果加载器已经存在
            AssetLoaderBase loader = TryGetLoader(bundleInfo.ManifestPath);

            if (loader != null)
            {
                loader.Reference();                 //引用计数
                return(loader);
            }

            // 创建加载器
            AssetLoaderBase newLoader;

            if (SimulationOnEditor)
            {
                newLoader = new AssetDatabaseLoader(bundleInfo);
            }
            else
            {
                newLoader = new AssetBundleLoader(bundleInfo);
            }

            // 新增下载需求
            _loaders.Add(newLoader);
            newLoader.Reference();             //引用计数
            return(newLoader);
        }
Exemplo n.º 2
0
        internal static AssetLoaderBase CreateLoaderInternal(AssetBundleInfo bundleInfo)
        {
            // 如果加载器已经存在
            AssetLoaderBase loader = TryGetLoader(bundleInfo.BundleName);

            if (loader != null)
            {
                return(loader);
            }

            // 创建加载器
            if (SimulationOnEditor)
            {
                loader = new AssetDatabaseLoader(bundleInfo);
            }
            else
            {
                loader = new AssetBundleLoader(bundleInfo);
            }

            // 新增下载需求
            _loaders.Add(loader);
            return(loader);
        }