Exemple #1
0
        /// <summary>
        /// Evaluates whether to set any <see cref="Errors"/> based on problems with the dependencies.
        /// </summary>
        /// <param name="tryGetAssetBundlePack">Function to get an <see cref="AssetBundlePack"/> given its name.</param>
        public void CheckDependencyErrors(TryGetAssetBundlePack tryGetAssetBundlePack)
        {
            if (DeliveryMode == AssetPackDeliveryMode.DoNotPackage)
            {
                return;
            }

            foreach (var variant in Variants)
            {
                var textureCompressionFormat = variant.Key;
                var assetPack = variant.Value;
                assetPack.CheckDependencyErrors(
                    DeliveryMode,
                    TryGetDependency(tryGetAssetBundlePack, textureCompressionFormat));
            }
        }
Exemple #2
0
        private static AssetBundleVariant.TryGetDependency TryGetDependency(
            TryGetAssetBundlePack tryGetAssetBundlePack, TextureCompressionFormat textureCompressionFormat)
        {
            return((string name, out AssetBundleVariant dependency, out AssetPackDeliveryMode deliveryMode) =>
            {
                deliveryMode = AssetPackDeliveryMode.DoNotPackage;
                dependency = null;
                AssetBundlePack assetBundlePack;
                if (tryGetAssetBundlePack(name, out assetBundlePack) &&
                    assetBundlePack.Variants.TryGetValue(textureCompressionFormat, out dependency))
                {
                    deliveryMode = assetBundlePack.DeliveryMode;
                    return true;
                }

                return false;
            });
        }