locle210 发表于 2018-1-19 16:14:37

unity Resources 资源加载 封装


using System.Collections;
using System.Collections.Generic;
using UnityEngine;
/// <summary>
/// 获取路径返回资源
/// </summary>
public class ResourceCtrl : Singleton<ResourceCtrl> {

    // 简单工厂模式
    public T LoadOjbect<T> (object enumName) where T : Object
    {
      string enumType = enumName.GetType().Name;

      string filePath = string.Empty;
      //
      switch (enumType)
      {

            case "Music_Bg":
                {
                  filePath = "Music/Bg/" + enumName.ToString();
                  break;
                }
            case "Music_Effect":
                {
                  filePath = "Music/Effect/" + enumName.ToString();
                  break;
                }
            case "Image_UI_MaleRoleUI":
                {
                  filePath = "Image/UI/MaleRoleUI/" + enumName.ToString();
                  break;
                }
            case "Image_UI_MaleSkillUI":
                {
                  filePath = "Image/UI/MaleSkillUI/" + enumName.ToString();
                  break;
                }
            case "Image_UI_SikgaekSkillUI":
                {
                  filePath = "Image/UI/SikgaekSkillUI/" + enumName.ToString();
                  break;
                }
            case "Data":
                {
                  filePath = "Data/" + enumName.ToString();
                  break;
                }
            case "Prefab_Common":
                {
                  filePath = "Prefab/Common/" + enumName.ToString();
                  break;
                }
            case "Prefab_Monster":
                {
                  filePath = "Prefab/Monster/" + enumName.ToString();
                  break;
                }
            case "Prefab_Boss":
                {
                  filePath = "Prefab/Boss/" + enumName.ToString();
                  break;
                }
            case "Prefab_Male":
                {
                  filePath = "Prefab/male/" + enumName.ToString();
                  break;
                }
            case "Prefab_Sikgaek":
                {
                  filePath = "Prefab/Sikgaek/" + enumName.ToString();
                  break;
                }
            case "Prefab_Effect":
                {
                  filePath = "Prefab/Effect/" + enumName.ToString();
                  break;
                }
            case "AnimatorController_monster":
                {
                  filePath = "AnimatorController/monster/" + enumName.ToString();
                  break;
                }
            case "AnimatorController_Boss":
                {
                  filePath = "AnimatorController/Boss/" + enumName.ToString();
                  break;
                }
            case "AnimatorController_male":
                {
                  filePath = "AnimatorController/male/" + enumName.ToString();
                  break;
                }
            default:
                break;
      }

      return Resources.Load<T>(filePath);
    }
}


页: [1]
查看完整版本: unity Resources 资源加载 封装