AssetBundleGraph.ModifierUtility.CreateModifier C# (CSharp) Method

CreateModifier() public static method

public static CreateModifier ( NodeData node, BuildTarget target ) : IModifier
node NodeData
target BuildTarget
return IModifier
        public static IModifier CreateModifier(NodeData node, BuildTarget target)
        {
            return CreateModifier(node, BuildTargetUtility.TargetToGroup(target));
        }

Same methods

ModifierUtility::CreateModifier ( NodeData node, BuildTargetGroup targetGroup ) : IModifier
ModifierUtility::CreateModifier ( string className ) : IModifier
ModifierUtility::CreateModifier ( string guiName, Type targetType ) : IModifier

Usage Example

Example #1
0
        public void Run(BuildTarget target,
                        NodeData node,
                        ConnectionPointData inputPoint,
                        ConnectionData connectionToOutput,
                        Dictionary <string, List <Asset> > inputGroupAssets,
                        List <string> alreadyCached,
                        Action <ConnectionData, Dictionary <string, List <Asset> >, List <string> > Output)
        {
            var incomingAssets = inputGroupAssets.SelectMany(v => v.Value).ToList();

            var modifier = ModifierUtility.CreateModifier(node, target);

            UnityEngine.Assertions.Assert.IsNotNull(modifier);
            bool isAnyAssetModified = false;

            foreach (var asset in incomingAssets)
            {
                var loadedAsset = AssetDatabase.LoadAssetAtPath <UnityEngine.Object>(asset.importFrom);
                if (modifier.IsModified(loadedAsset))
                {
                    modifier.Modify(loadedAsset);
                    isAnyAssetModified = true;
                }
            }

            if (isAnyAssetModified)
            {
                // apply asset setting changes to AssetDatabase.
                AssetDatabase.Refresh();
            }

            // Modifier does not add, filter or change structure of group, so just pass given group of assets
            Output(connectionToOutput, inputGroupAssets, null);
        }
All Usage Examples Of AssetBundleGraph.ModifierUtility::CreateModifier