Beispiel #1
0
        public void SetPreload(int totalAmount, int onceAmount, PoolPreloadComplete callback = null)
        {
            preloadTotalAmount = totalAmount;
            preloadOnceAmount  = onceAmount;

            preloadCompleteCallback = callback;
        }
Beispiel #2
0
        internal void DoUpdate(float deltaTime)
        {
            if (preloadTotalAmount > 0)
            {
                PreloadItem();
                return;
            }

            if (preloadCompleteCallback != null)
            {
                preloadCompleteCallback.Invoke(AssetPath);
                preloadCompleteCallback = null;
                return;
            }

            //cull
            if (isCullEnable && cullDelayTime > 0)
            {
                preCullTime += deltaTime;
                if (preCullTime >= cullDelayTime)
                {
                    Cull();
                    preCullTime = 0.0f;
                }
            }
        }
Beispiel #3
0
        internal void DoUpdate(float deltaTime, float unscaleDeltaTime)
        {
            //preload
            if (preloadTotalAmount > 0)
            {
                PreloadItem();
            }
            else if (preloadCompleteCallback != null)
            {
                preloadCompleteCallback.Invoke(CategoryName, GroupName);
                preloadCompleteCallback = null;
            }

            //cull
            if (isCullEnable && cullDelayTime > 0)
            {
                preCullTime += unscaleDeltaTime;
                if (preCullTime >= cullDelayTime)
                {
                    Cull();
                    preCullTime = 0.0f;
                }
            }
        }