12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485 |
- using System.IO;
- using UnityEngine;
- //using UnityEditor;
- using XRTool.Util;
- namespace ShadowStudio.Util
- {
- /// <summary>
- /// 资源加载代理
- /// 支持Resource,Assetbundle,AssetDatabase 加载
- /// 其中Resource仅支持Resources路径下加载
- /// Assetbundle仅支持ab包加载,需要先将资源打包成Assetbundle
- /// AssetDatabase仅支持编辑器下加载资源
- /// </summary>
- public class ResourceLoader : Singleton<ResourceLoader>, DataLoad
- {
- public Object Load(string path)
- {
- path = Path.GetFileNameWithoutExtension(path);
- return Resources.Load(path);
- }
- public T Load<T>(string path) where T : Object
- {
- path = Path.GetFileNameWithoutExtension(path);
- return Resources.Load<T>(path);
- }
- public Object Load(string path, System.Type systemTypeInstance)
- {
- path = Path.GetFileNameWithoutExtension(path);
- return Resources.Load(path, systemTypeInstance);
- }
- public T[] LoadAll<T>(string path) where T : Object
- {
- path = Path.GetFileNameWithoutExtension(path);
- return Resources.LoadAll<T>(path);
- }
- public Object[] LoadAll(string path, System.Type systemTypeInstance)
- {
- path = Path.GetFileNameWithoutExtension(path);
- return Resources.LoadAll(path, systemTypeInstance);
- }
- public Object[] LoadAll(string path)
- {
- path = Path.GetFileNameWithoutExtension(path);
- return Resources.LoadAll(path);
- }
- public LoadInfo LoadAsync<T>(string path) where T : Object
- {
- path = Path.GetFileNameWithoutExtension(path);
- LoadInfo info = new LoadInfo();
- info.InitLoadInfo(Resources.LoadAsync<T>(path));
- return info;
- }
- public LoadInfo LoadAsync(string path)
- {
- path = Path.GetFileNameWithoutExtension(path);
- LoadInfo info = new LoadInfo();
- info.InitLoadInfo(Resources.LoadAsync(path));
- return info;
- }
- public LoadInfo LoadAsync(string path, System.Type type)
- {
- path = Path.GetFileNameWithoutExtension(path);
- LoadInfo info = new LoadInfo();
- info.InitLoadInfo(Resources.LoadAsync(path, type));
- return info;
- }
- public void UnloadAsset(Object assetToUnload)
- {
- Resources.UnloadAsset(assetToUnload);
- }
- public void UnloadAllAsset()
- {
- Resources.UnloadUnusedAssets();
- }
- }
- }
|