Ejemplo n.º 1
0
    public static void LoadModelInQueue(string modelName, LoadSingleFinish delFinish, object param1, object param2, object param3)
    {
        ModelLoadData curData = new ModelLoadData(ModelLoadData.LoadType.MODEL, modelName, delFinish, param1, param2, param3);

        if (m_dicSingleBundleCache.ContainsKey(curData.GetLoadUrl()))
        {
            if (null != delFinish)
            {
                delFinish(modelName, m_dicSingleBundleCache[curData.GetLoadUrl()], param1, param2, param3);
            }
            return;
        }
        m_loadBundleQueue.Enqueue(curData);
    }
Ejemplo n.º 2
0
    private static IEnumerator LoadOneBundleFromQueue(ModelLoadData curData)
    {
        string bundlePath = curData.GetLoadUrl();

        if (!LoadFromCache(bundlePath, curData.m_modelName, curData.m_delFinish, curData.m_param1, curData.m_param2, curData.m_param3))
        {
#if UNITY_WP8
            while (m_SingleBundleLoadingList.Contains(bundlePath))
            {
                yield return(null);
            }

            if (m_dicSingleBundleCache.ContainsKey(bundlePath))
            {
                if (null != curData.m_delFinish)
                {
                    curData.m_delFinish(bundlePath, m_dicSingleBundleCache[bundlePath], curData.m_param1, curData.m_param2, curData.m_param3);
                }

                yield break;
            }

            if (!m_SingleBundleLoadingList.Contains(bundlePath))
            {
                m_SingleBundleLoadingList.Add(bundlePath);

                WWW www = new WWW(bundlePath);
                yield return(www);

                ProcessLoad(www, bundlePath, curData.m_modelName, curData.m_delFinish, curData.m_param1, curData.m_param2, curData.m_param3);

                m_SingleBundleLoadingList.Remove(bundlePath);
            }
#else
            WWW www = new WWW(bundlePath);
            yield return(www);

            ProcessLoad(www, bundlePath, curData.m_modelName, curData.m_delFinish, curData.m_param1, curData.m_param2, curData.m_param3);
#endif
        }
    }