| | |
| | | using UnityEngine; |
| | | using System.Collections; |
| | | using UnityEngine; |
| | | using System.Collections.Generic; |
| | | using Cysharp.Threading.Tasks; |
| | | using System; |
| | | using UnityEngine.U2D; |
| | | using LitJson; |
| | | using System.IO; |
| | | using UnityEngine.Networking; |
| | | using UnityEngine.Video; |
| | | using Spine.Unity; |
| | | |
| | | |
| | | |
| | | #if UNITY_EDITOR |
| | |
| | | { |
| | | {typeof(GameObject), "prefab"}, |
| | | {typeof(Sprite), "png"}, |
| | | {typeof(Texture2D), "png"}, |
| | | {typeof(Shader), "shader"}, |
| | | {typeof(Texture2D), "jpg"}, |
| | | {typeof(Texture), "jpg"}, |
| | | { typeof(Shader), "shader"}, |
| | | {typeof(TextAsset), "txt"}, |
| | | {typeof(AudioClip), "wav"}, |
| | | {typeof(Font), "ttf"}, |
| | | {typeof(Material), "mat"}, |
| | | {typeof(VideoClip), "mp4"}, |
| | | {typeof(SpriteAtlas), "spriteatlasv2"}, |
| | | {typeof(SkeletonDataAsset), "asset"}, |
| | | }; |
| | | |
| | | |
| | |
| | | { |
| | | T asset = null; |
| | | |
| | | var path = string.Concat($"Assets/ResourcesOut/{directory}/{name}", GetExtension(typeof(T))).Replace("//", "/").Trim().Replace("\\", "/"); |
| | | |
| | | if (AssetSource.uiFromEditor) |
| | | var path = ($"Assets/ResourcesOut/{directory}/{name}" + GetExtension(typeof(T))).Replace("//", "/").Trim().Replace("\\", "/"); |
| | | if (!AssetSource.isUseAssetBundle) |
| | | { |
| | | #if UNITY_EDITOR |
| | | asset = UnityEditor.AssetDatabase.LoadAssetAtPath<T>(path); |
| | |
| | | } |
| | | else |
| | | { |
| | | if (directory == "UI" || directory == "UIComp" || directory.StartsWith("Sprite") || directory == "Battle/Prefabs") |
| | | { |
| | | directory = "UI/" + directory; |
| | | } |
| | | var assetInfo = new AssetInfo(directory.ToLower(), name.ToLower()); |
| | | asset = AssetBundleUtility.Instance.Sync_LoadAsset(assetInfo, typeof(T)) as T; |
| | | } |
| | |
| | | return asset; |
| | | } |
| | | |
| | | public string[] LoadConfig(string name) |
| | | { |
| | | string path = string.Empty; |
| | | #if UNITY_EDITOR |
| | | if (!AssetSource.isUseAssetBundle) |
| | | { |
| | | path = ResourcesPath.CONFIG_FODLER + "/" + name + ".txt"; |
| | | } |
| | | else |
| | | #endif |
| | | { |
| | | path = AssetVersionUtility.GetAssetFilePath($"config/{name}.txt"); |
| | | } |
| | | |
| | | return File.ReadAllLines(path); |
| | | } |
| | | |
| | | private Sprite LoadSprite(string atlasName, string spriteName) |
| | | { |
| | | // #if !UNITY_EDITOR |
| | | #if !UNITY_EDITOR |
| | | SpriteAtlas atlas = LoadAsset<SpriteAtlas>("Sprite", atlasName.Replace("Sprite/", "")); |
| | | return atlas.GetSprite(spriteName); |
| | | // #else |
| | | // return ResManager.Instance.LoadAssetInternal<Sprite>(atlasName, spriteName); |
| | | // #endif |
| | | #else |
| | | return ResManager.Instance.LoadAssetInternal<Sprite>(atlasName, spriteName); |
| | | #endif |
| | | } |
| | | |
| | | public void LoadAssetAsync<T>(string directory, string name, Action<bool, UnityEngine.Object> callBack) where T : UnityEngine.Object |
| | |
| | | LoadAssetAsync<SpriteAtlas>(atlasName, spriteName, (isLoaded, atlas) => { |
| | | if (isLoaded) |
| | | { |
| | | callBack?.Invoke(isLoaded, atlas.GetSprite(spriteName)); |
| | | SpriteAtlas _atlas = atlas as SpriteAtlas; |
| | | callBack?.Invoke(isLoaded, _atlas.GetSprite(spriteName)); |
| | | } |
| | | else |
| | | { |
| | |
| | | { |
| | | var path = string.Concat($"Assets/ResourcesOut/{directory}/{name}", GetExtension(typeof(T))).Replace("//", "/"); |
| | | |
| | | if (AssetSource.uiFromEditor) |
| | | if (!AssetSource.isUseAssetBundle) |
| | | { |
| | | #if UNITY_EDITOR |
| | | var asset = UnityEditor.AssetDatabase.LoadAssetAtPath<T>(path); |
| | |
| | | |
| | | public void UnloadAsset(string assetBundleName, string assetName) |
| | | { |
| | | if (AssetSource.uiFromEditor) |
| | | if (!AssetSource.isUseAssetBundle) |
| | | return; |
| | | |
| | | AssetBundleUtility.Instance.UnloadAsset(assetBundleName, assetName); |
| | |
| | | |
| | | public void UnloadAssetBundle(string assetBundleName, bool unloadAllLoadedObjects, bool includeDependenice) |
| | | { |
| | | if (AssetSource.uiFromEditor) |
| | | if (!AssetSource.isUseAssetBundle) |
| | | return; |
| | | AssetBundleUtility.Instance.UnloadAssetBundle(assetBundleName, unloadAllLoadedObjects, includeDependenice); |
| | | } |