コード例 #1
0
 public ResourceLoadTask(string AssetFileName, string AssetObjectName,
                         Type AssetObjectType, ResourceLoadCallback callback,
                         object varParam
                         )
 {
     pCallBackParam   = varParam;
     pAssetFileName   = AssetFileName;
     pAssetObjectName = AssetObjectName;
     pAssetObjectType = AssetObjectType;
     pCallBack        = callback;
     pLoadObject      = null;
 }
コード例 #2
0
    /// <summary>
    /// 加载资源的方法;
    /// </summary>
    /// <param name="AssetFileName"></param>
    /// <param name="AssetObjectName"></param>
    /// <param name="AssetObjectType"></param>
    /// <param name="callback"></param>
    /// <param name="varParam"></param>
    /// <returns></returns>
    public bool LoadAssetBundle(string AssetFileName, string AssetObjectName, Type AssetObjectType,
                                ResourceLoadCallback callback = null, object varParam = null)
    {
        ResourceLoadTask tempTask = null;

        if (mResourcesModel == ResourcesModel.RM_Resources)
        {
            tempTask = new EditorResourceLoadTask(AssetFileName, AssetObjectName, AssetObjectType, callback, varParam);
        }
        else
        {
            AssetFileName = AssetFileName.ToLower();
            tempTask      = new AssetBundleLoadTask(AssetFileName, AssetObjectName, AssetObjectType, callback, varParam);
        }
        mLoadtasks.Enqueue(tempTask);
        return(true);
    }
コード例 #3
0
    /// <summary>
    ///初始化所有的文件依赖系
    /// </summary>
    private void InitDepends()
    {
        // 读取文件依赖回调;
        ResourceLoadCallback loadInitDependsCallBack = delegate(UnityEngine.Object obj, object varParam)
        {
            AssetBundleManifest tempABm = obj as AssetBundleManifest;
            if (tempABm == null)
            {
                Debug.LogError("ResourceManager InitDepend Failed.");
                return;
            }
            string[] tempDenpends = tempABm.GetAllAssetBundles();

            if (tempDenpends == null)
            {
                return;
            }

            for (int i = 0; i < tempDenpends.Length; i++)
            {
                string tempRes = tempDenpends[i];

                string[] tempResDepend = tempABm.GetDirectDependencies(tempRes);

                if (mDenpends.ContainsKey(tempRes))
                {
                    mDenpends [tempRes] = tempResDepend;
                }
                else
                {
                    mDenpends.Add(tempRes, tempResDepend);
                }
            }
        };

        string tempFilePath = "AssetBundles";

        LoadAssetBundle(tempFilePath, "AssetBundleManifest",
                        typeof(AssetBundleManifest), loadInitDependsCallBack, null);
    }
コード例 #4
0
 public EditorResourceLoadTask(string AssetFileName, string AssetObjectName,
                               Type AssetObjectType, ResourceLoadCallback callback, object varParam)
     : base(AssetFileName, AssetObjectName, AssetObjectType, callback, varParam)
 {
 }