Esempio n. 1
0
        public void LoadAssetsAsync <T>(T source,
                                        List <AssetInfo> assetInfos,
                                        Action <T, List <UnityObject> > handlerAction,
                                        AssetLoadOption assetLoadOption = default(AssetLoadOption))
        {
            if (assetInfos != null)
            {
                var batch = AssetLoadRequestBatch <T> .Alloc(source, assetInfos.Count(), !assetLoadOption.DontAutoActive);

                batch.OnLoaded = handlerAction;
                int count        = 0;
                var singleOption = new AssetLoadOption(true, assetLoadOption.Parent,
                                                       assetLoadOption.Recyclable, assetLoadOption.PostProcessorFactory, assetLoadOption.ObjectType);
                foreach (var assetInfo in assetInfos)
                {
                    var req = AppendAssetRequest(source, assetInfo, null, singleOption);
                    batch.PackRequest(req);
                    count++;
                }

                if (count == 0)
                {
                    AssetLoadRequestBatch <T> .Free(batch);
                }
            }
        }
Esempio n. 2
0
        public void LoadAssetsAsync <T>(T source,
                                        IEnumerable <AssetInfo> assetInfos,
                                        Action <T, IEnumerable <UnityObject> > handlerAction,
                                        AssetLoadOption assetLoadOption = default(AssetLoadOption))
        {
            if (assetInfos != null)
            {
                var batch = AssetLoadRequestBatch <T> .Alloc();

                batch.OnLoaded = handlerAction;
                int count = 0;
                foreach (var assetInfo in assetInfos)
                {
                    var req = AppendAssetRequest(source, assetInfo, null, assetLoadOption);
                    batch.PackRequest(req);
                    count++;
                }

                if (count == 0)
                {
                    AssetLoadRequestBatch <T> .Free(batch);
                }
            }
        }