public AssetBundleInfo(Asset_AB asset, AssetBundle assetBundle, Transform containerTransform, Action onSuccess, Action onFail)
 {
     this.asset              = asset;
     this.assetBundle        = assetBundle;
     this.containerTransform = containerTransform;
     this.onSuccess          = onSuccess;
     this.onFail             = onFail;
 }
        public void MarkAssetBundleForLoad(Asset_AB asset, AssetBundle assetBundle, Transform containerTransform, Action onSuccess, Action onFail)
        {
            CheckForReprioritizeAwaitingAssets();

            AssetBundleInfo assetBundleToLoad = new AssetBundleInfo(asset, assetBundle, containerTransform, onSuccess, onFail);

            float distanceFromPlayer = GetDistanceFromPlayer(containerTransform);

            if (distanceFromPlayer <= MAX_SQR_DISTANCE_FOR_QUICK_LOADING)
            {
                highPriorityLoadQueue.Enqueue(assetBundleToLoad);
            }
            else
            {
                lowPriorityLoadQueue.Enqueue(assetBundleToLoad);
            }
        }