public static void WriteAssetPackConfig() { Debug.LogFormat("[{0}.{1}] target={2}", nameof(AssetPackBuilder), nameof(WriteAssetPackConfig), AssetPackBundleConfig.PATH); AssetPackBundleConfig config = GetOrCreateConfig(); config.bundles = GetBundles(Addressables.BuildPath).Select(pack => pack.Name).ToArray();; EditorUtility.SetDirty(config); AssetDatabase.SaveAssets(); AssetDatabase.Refresh(); }
private static void WriteAssetPackConfig(IEnumerable <AssetPackBundle> packBundles) { AssetPackBundleConfig config = GetOrCreateConfig(); config.packs = packBundles.Select(pack => pack.Name).ToArray(); Debug.LogFormat("[{0}.{1}] path={2}", nameof(AssetPackBuilder), nameof(WriteAssetPackConfig), AssetPackBundleConfig.PATH); EditorUtility.SetDirty(config); AssetDatabase.SaveAssets(); AssetDatabase.Refresh(); }
private static AssetPackBundleConfig GetOrCreateConfig() { AssetPackBundleConfig config = AssetDatabase.LoadAssetAtPath <AssetPackBundleConfig>(AssetPackBundleConfig.PATH); if (config == null) { config = ScriptableObject.CreateInstance <AssetPackBundleConfig>(); AssetDatabase.CreateAsset(config, AssetPackBundleConfig.PATH); } return(config); }
private static AssetPackBundleConfig GetOrCreateConfig() { AssetPackBundleConfig config = AssetDatabase.LoadAssetAtPath <AssetPackBundleConfig>(AssetPackBundleConfig.PATH); if (config == null) { config = ScriptableObject.CreateInstance <AssetPackBundleConfig>(); var basePath = Path.GetDirectoryName(AssetPackBundleConfig.PATH); if (!Directory.Exists(basePath)) { Directory.CreateDirectory(basePath); } AssetDatabase.CreateAsset(config, AssetPackBundleConfig.PATH); } return(config); }
public bool TryBeginOperation(ProvideHandle provideHandle) { string path = provideHandle.ResourceManager.TransformInternalId(provideHandle.Location); if (!path.StartsWith(Addressables.RuntimePath) || !path.EndsWith(".bundle")) { return(false); } string assetPackName = Path.GetFileNameWithoutExtension(path); if (!AssetPackBundleConfig.IsAssetPackBundle(assetPackName)) { return(false); } provideHandle.SetProgressCallback(PercentComplete); BeginOperation(assetPackName); return(true); }