示例#1
0
 private void OnDeleteAssetBundleItem(AssetBundleItemUI item)
 {
     if (loadAbItemUIs != null)
     {
         loadAbItemUIs.Remove(item);
     }
     if (loadShaderItems != null)
     {
         List <ShaderItemUI> shaderItems;
         if (loadShaderItems.TryGetValue(item, out shaderItems))
         {
             foreach (var shaderItem in shaderItems)
             {
                 shaderItem.Remove();
             }
             loadShaderItems.Remove(item);
         }
     }
     if (loadVariantItems != null)
     {
         List <ShaderVariantInfoUI> variantItems;
         if (loadVariantItems.TryGetValue(item, out variantItems))
         {
             foreach (var variantItem in variantItems)
             {
                 variantItem.Remove();
             }
             loadVariantItems.Remove(item);
         }
     }
 }
示例#2
0
        private void LoadAssetBundle(string file)
        {
            var assetBundleItem = new AssetBundleItemUI(file, this.assetBundleTreeAsset, this.OnDeleteAssetBundleItem);

            if (!assetBundleItem.Validate())
            {
                return;
            }
            assetBundleItem.AddToElement(this.assetBunleItemBody);
            loadAbItemUIs.Add(assetBundleItem);

            // Shaderリスト
            List <Shader> shaders = new List <Shader>();

            assetBundleItem.CollectAbObjectToList(shaders);
            List <ShaderItemUI> shaderItems = new List <ShaderItemUI>();

            foreach (var shader in shaders)
            {
                var shaderItem = new ShaderItemUI(shader, shaderTreeAsset, this.openDateStr);
                shaderItem.AddToElement(this.shaderItemBody);
                shaderItems.Add(shaderItem);
            }
            loadShaderItems.Add(assetBundleItem, shaderItems);
            // shaderVariantCollectionリスト
            List <ShaderVariantCollection> variantCollections = new List <ShaderVariantCollection>();

            assetBundleItem.CollectAbObjectToList(variantCollections);
            List <ShaderVariantInfoUI> variantItems = new List <ShaderVariantInfoUI>();

            foreach (var variantCollection in variantCollections)
            {
                var variantItem = new ShaderVariantInfoUI(variantCollection, this.openDateStr);
                variantItem.AddToElement(this.shaderVariantsItemBody);
                variantItems.Add(variantItem);
            }
            this.loadVariantItems.Add(assetBundleItem, variantItems);
        }