using UnityEngine;
|
using UnityEditor;
|
|
[CustomEditor(typeof(AssetBundleUtility))]
|
public class AssetBundleUtilityEditor : Editor {
|
|
private string m_LoadAssetBundleName = "ui/texture";
|
private string m_LoadAssetName = "Button_Blue_A";
|
|
private string m_UnloadAssetBundleName = "ui/texture";
|
private bool m_UnloadLoadedObject = false;
|
private bool m_IncludeDependenices = false;
|
private string m_UnloadAssetName = "Button_Blue_A";
|
|
public override void OnInspectorGUI() {
|
|
m_LoadAssetBundleName = EditorGUILayout.TextField("AssetBundle名称", m_LoadAssetBundleName);
|
m_LoadAssetName = EditorGUILayout.TextField("Asset名称", m_LoadAssetName);
|
|
GUILayout.BeginHorizontal();
|
|
if (GUILayout.Button("同步加载Asset")) {
|
AssetBundleUtility.Instance.Sync_LoadAsset(m_LoadAssetBundleName, m_LoadAssetName);
|
}
|
|
if (GUILayout.Button("异步协程加载Asset")) {
|
AssetBundleUtility.Instance.Co_LoadAsset(m_LoadAssetBundleName, m_LoadAssetName);
|
}
|
|
GUILayout.EndHorizontal();
|
|
GUILayout.Space(10);
|
|
m_UnloadAssetBundleName = EditorGUILayout.TextField("AssetBundle名称", m_UnloadAssetBundleName);
|
m_UnloadLoadedObject = GUILayout.Toggle(m_UnloadLoadedObject, "同时卸载引用资源");
|
m_IncludeDependenices = GUILayout.Toggle(m_IncludeDependenices, "同时卸载依赖包");
|
|
if (GUILayout.Button("卸载AssetBundle")) {
|
AssetBundleUtility.Instance.UnloadAssetBundle(m_UnloadAssetBundleName, m_UnloadLoadedObject, m_IncludeDependenices);
|
}
|
|
GUILayout.Space(10);
|
|
GUILayout.BeginHorizontal();
|
|
m_UnloadAssetName = EditorGUILayout.TextField("Asset名称", m_UnloadAssetName);
|
|
if (GUILayout.Button("卸载Asset")) {
|
AssetBundleUtility.Instance.UnloadAsset(m_UnloadAssetBundleName, m_UnloadAssetName);
|
}
|
|
GUILayout.EndHorizontal();
|
|
if (GUILayout.Button("卸载所有AssetBundle")) {
|
AssetBundleUtility.Instance.UnloadAll();
|
}
|
|
if (GUILayout.Button("调用Resources.UnloadUnUsed()")) {
|
Resources.UnloadUnusedAssets();
|
}
|
|
if (GUILayout.Button("调用System.GC.Collect()")) {
|
System.GC.Collect();
|
}
|
|
}
|
|
}
|