예제 #1
0
    protected override void Init(string path)
    {
        base.Init(path);
        if (string.IsNullOrEmpty(path))
        {
            CDebug.LogError("XStaticAssetLoader 空资源路径!");
        }

        _assetFileLoader = CAssetFileLoader.Load(path, (_isOk, _obj) =>
        {
            if (IsReadyDisposed)
            {
                OnFinish(null);
                return;
            }

            TheAsset = Object.Instantiate(_obj);
            OnFinish(TheAsset);

            if (Application.isEditor)
            {
                if (TheAsset != null)
                {
                    CResourceLoadObjectDebugger.Create("StaticAsset", path, TheAsset);
                }
            }
        });
    }
    protected override void Init(string url)
    {
        base.Init(url);

        _assetFileBridge = CAssetFileLoader.Load(url, (isOk, asset) =>
        {
            if (IsReadyDisposed)  // 中途释放
            {
                OnFinish(null);
                return;
            }
            if (!isOk)
            {
                OnFinish(null);
                CDebug.LogError("[InstanceAssetLoader]Error on assetfilebridge loaded... {0}", url);
                return;
            }

            try
            {
                InstanceAsset = (GameObject)GameObject.Instantiate(asset as UnityEngine.GameObject);
            }
            catch (Exception e)
            {
                CDebug.LogException(e);
            }

            if (Application.isEditor)
            {
                CResourceLoadObjectDebugger.Create("AssetCopy", url, InstanceAsset);
            }

            OnFinish(InstanceAsset);
        });
    }
예제 #3
0
    protected override void Init(string url)
    {
        base.Init(url);

        Path            = url;
        AssetFileBridge = CAssetFileLoader.Load(Path, OnAssetLoaded);
    }
예제 #4
0
    protected override void Init(string url)
    {
        base.Init(url);

        Path = url;
        AssetFileBridge = CAssetFileLoader.Load(Path, OnAssetLoaded);
    }
예제 #5
0
    protected override void Init(string url)
    {
        base.Init(url);

        _assetFileBridge = CAssetFileLoader.Load(url, (isOk, asset) =>
        {
            if (IsReadyDisposed)  // 中途释放
            {
                OnFinish(null);
                return;
            }
            if (!isOk)
            {
                OnFinish(null);
                CDebug.LogError("[InstanceAssetLoader]Error on assetfilebridge loaded... {0}", url);
                return;
            }

            try
            {
                InstanceAsset = (GameObject)GameObject.Instantiate(asset as UnityEngine.GameObject);
            }
            catch (Exception e)
            {
                CDebug.LogException(e);
            }

            if (Application.isEditor)
            {
                CResourceLoadObjectDebugger.Create("AssetCopy", url, InstanceAsset);
            }

            OnFinish(InstanceAsset);
        });
    }
예제 #6
0
 protected override void Init(string url)
 {
     base.Init(url);
     _assetFileBridge = CAssetFileLoader.Load(url, (isOk, asset) =>
     {
         OnFinish(asset);
     });
 }
예제 #7
0
    // TODO: 无视AssetName暂时!
    public static CInstanceAssetLoader Load(string url, CAssetFileLoader.CAssetFileBridgeDelegate callback = null)
    {
        var loader = AutoNew<CInstanceAssetLoader>(url);

        CResourceModule.Instance.StartCoroutine(CoLoad(loader, callback));

        return loader;
    }
예제 #8
0
파일: CFontLoader.cs 프로젝트: scris/_GS
    protected override void Init(string url)
    {
        base.Init(url);

        _bridge = CAssetFileLoader.Load(Url, (_isOk, _obj) =>
        {
            OnFinish(_obj);
        });
    }
예제 #9
0
    protected override void Init(string url)
    {
        base.Init(url);

        _bridge = CAssetFileLoader.Load(Url, (_isOk, _obj) =>
        {
            OnFinish(_obj);
        });
    }
예제 #10
0
    protected override void Init(string url)
    {
        base.Init(url);

        AssetFileBridge = CAssetFileLoader.Load(url, (bool isOk, UnityEngine.Object obj) =>
        {
            OnFinish(obj);
        });
    }
예제 #11
0
    protected override void Init(string url)
    {
        base.Init(url);

        AssetFileBridge = CAssetFileLoader.Load(url, (bool isOk, UnityEngine.Object obj) =>
        {
            OnFinish(obj);
        });
    }
예제 #12
0
    public static CStaticAssetLoader Load(string url, CAssetFileLoader.CAssetFileBridgeDelegate callback = null)
    {
        CLoaderDelgate newCallback = null;
        if (callback != null)
        {
            newCallback = (isOk, obj) => callback(isOk, obj as UnityEngine.Object);
        }

        return AutoNew<CStaticAssetLoader>(url, newCallback);
    }
예제 #13
0
    // TODO: 无视AssetName暂时!
    public static CInstanceAssetLoader Load(string url, CAssetFileLoader.CAssetFileBridgeDelegate callback = null)
    {
        var loader = AutoNew<CInstanceAssetLoader>(url, (ok, resultObject) =>
        {
            if (callback != null)
                callback(ok, resultObject as UnityEngine.Object);
        }, true);

        return loader;
    }
예제 #14
0
 //仅仅是预加载,回调仅告知是否加载成功
 public static CAssetFileLoader Preload(string path, System.Action <bool> callback = null)
 {
     return(CAssetFileLoader.Load(path, (isOk, asset) =>
     {
         if (callback != null)
         {
             callback(isOk);
         }
     }));
 }
예제 #15
0
    //仅仅是预加载,回调仅告知是否加载成功
    public static IEnumerator CoPreload(string path, System.Action <bool> callback = null)
    {
        var w = CAssetFileLoader.Load(path, null);

        while (!w.IsFinished)
        {
            yield return(null);
        }

        if (callback != null)
        {
            callback(!w.IsError);  // isOk?
        }
    }
예제 #16
0
    protected override void Init(string path)
    {
        base.Init(path);
        if (string.IsNullOrEmpty(path))
            CDebug.LogError("XStaticAssetLoader 空资源路径!");

        _assetFileLoader = CAssetFileLoader.Load(path, (_isOk, _obj) =>
        {
            OnFinish(_obj);

            if (Application.isEditor)
                if (TheAsset != null)
                    CResourceLoadObjectDebugger.Create("StaticAsset", path, TheAsset);
        });
    }
예제 #17
0
    static IEnumerator CoLoad(CInstanceAssetLoader loader, CAssetFileLoader.CAssetFileBridgeDelegate callback)
    {
        while (!loader.IsFinished)
            yield return null;
        if (loader.IsReadyDisposed)
        {
            callback(false, null);
        }
        else
        {
            var newCopyAsset = loader.CopyAsset();
            if (Application.isEditor)
            {
                CResourceLoadObjectDebugger.Create("AssetCopy", loader.Url, newCopyAsset);
            }

            callback(newCopyAsset != null, newCopyAsset);
        }
    }
예제 #18
0
 protected override void Init(string url)
 {
     base.Init(url);
     _assetFileBridge = CAssetFileLoader.Load(url, (isOk, asset) =>
     {
         OnFinish(asset);
     });
 }