Example #1
0
 public static IResOpeartion AsyncLoadRes <T> (string _bundle, string _res, OnLoadResFinishDelegate <T> _finish) where T : Object
 {
     if (null == resLoaderImpl)
     {
         Log.Error("ResBundle", "resLoaderImpl is null");
         return(null);
     }
     return(resLoaderImpl.AsyncLoadRes <T> (_bundle, _res, _finish));
 }
Example #2
0
        private static void addResTask(string _bundle, string _res, OnLoadResFinishDelegate <Object> _onFinish)
        {
            Task task = new Task();

            task.bundle      = _bundle;
            task.res         = _res;
            task.type        = Task.TYPE_RES;
            task.onResFinish = _onFinish;
            tasks.Enqueue(task);
        }
Example #3
0
        public IResOpeartion AsyncLoadRes <T> (string _bundle, string _res, OnLoadResFinishDelegate <T> _finish) where T : Object
        {
            this.LogDebug("Load res {0} from {1}... ", _res, _bundle);

            AssetBundle     bundle = null;
            UniResOperation op     = new UniResOperation();

            if (bundles.TryGetValue(_bundle, out bundle))
            {
                mono.StartCoroutine(asyncLoadRes <T> (op, bundle, _res, _finish));
            }
            else
            {
                this.LogError("bundle {0} is not exists!", _bundle);
                op.Use(0.0f);
            }
            return(op);
        }
Example #4
0
        private IEnumerator asyncLoadRes <T> (UniResOperation _op, AssetBundle _bundle, string _res, OnLoadResFinishDelegate <T> _finish) where T : Object
        {
            AssetBundleRequest req = _bundle.LoadAssetAsync <T> (_res);

            _op.Use(req);
            yield return(req);

            this.LogDebug("Load res {0} finish", _res);
            _op.Use(1.0f);
            _finish(req.asset as T);
        }
Example #5
0
 public static void AddResTask(string _bundle, string _res, OnLoadResFinishDelegate <Object> _onFinish)
 {
     addResTask(_bundle, _res, _onFinish);
 }