Exemple #1
0
    private ResLoadAsyncData GetAsyncData(string path, DLoadResourcesCompete action)
    {
        ResLoadAsyncData data = null;

        if (m_cacheResPathList.Count > 0)
        {
            data = m_cacheResPathList[0];
            m_cacheResPathList.RemoveAt(0);
        }
        else
        {
            data = new ResLoadAsyncData();
        }
        data.m_path   = path;
        data.m_action = action;
        return(data);
    }
Exemple #2
0
    public void LoadResourcesAsync <T>(EResourceType resType, string name, DLoadResourcesCompete action)
        where T : Object
    {
        string path = GameResFunc.GetResPath(resType, name);

        if (string.IsNullOrEmpty(path))
        {
            Log(ELogType.Error, string.Format("res path is null !!!!!      resType : {0}", resType));
            return;
        }

        ResLoadAsyncData data = GetAsyncData(path, action);

        m_resPathList.Add(data);
        if (m_asyncEnd)
        {
            StartCoroutine(LoadResAsync <T>());
        }
    }