コード例 #1
0
        private void InsertBundle(string bundleName, AssetBundle bundle)
        {
            if (bundle.IsNotNull())
            {
                Debug.LogFormat("m_AssetBundles.Add({0}) : {1}", bundleName, m_AssetManifest.GetAssetBundleHash(bundleName));

                if (m_AssetBundles.ContainsKey(bundleName))
                {
                    if (m_AssetBundles[bundleName].IsNotNull())
                    {
                        m_AssetBundles[bundleName].Unload(true);
                    }

                    m_AssetBundles.Remove(bundleName);
                }

                m_AssetBundles.Add(bundleName, bundle);
            }
        }
コード例 #2
0
        public override IEnumerator Download()
        {
            AssetBundleManifest manifest = null;

            using (UnityWebRequest www = UnityWebRequest.GetAssetBundle(m_Url))
            {
                yield return(www.SendWebRequest());

                bool isSuccess = !www.isNetworkError && www.responseCode == 200;
                if (isSuccess)
                {
                    AssetBundle bundle = DownloadHandlerAssetBundle.GetContent(www);

                    if (bundle.IsNotNull())
                    {
                        manifest = bundle.LoadAsset <AssetBundleManifest>("assetbundlemanifest");

                        bundle.Unload(false);
                    }
                }

                m_OnComplete(manifest);
            }
        }