public override void Run(BuildActionContext context) { if (Arguments == null || Arguments.Length == 0) { ToolDebug.Warning("No item specified for process"); return; } if (Arguments.Length < 2) { ToolDebug.Warning("No resource specified {0}", Arguments[1]); return; } string processName = Arguments[1]; string resourcePath = Arguments[2]; var process = BuilderAssetDB.GetItem(processName); if (process == null) { ToolDebug.Warning("No process found {0}", processName); return; } //if (process.Object == null) //{ // ToolDebug.Warning("Invalid process item found {0}", processName); // return; //} var resourceAssetItem = BuilderAssetDB.AddOrGetAsset(resourcePath); if (resourceAssetItem == null) { ToolDebug.Warning("No resource found {0}", resourcePath); return; } if (context.CurrentBuildPipeline == null) { ToolDebug.Warning("Invalid buildpipeline item found {0}", processName); return; } //var buildPipeline = resourceAssetItem.BuildPipeline[context.CurrentTarget]; //var orgImporterObject = process.Object as BuildProcessor; //var childImporter = orgImporterObject.Clone(); //buildPipeline.ProcessorList.Add(childImporter); //// copy rest argument //for (int iConfig = 3; iConfig < Arguments.Length; iConfig++) //{ // childImporter.Parameters.Add(Arguments[iConfig]); //} }
public override void Run(BuildActionContext context) { if (Arguments == null || Arguments.Length == 0) { ToolDebug.Warning("No item specified for process"); return; } if (Arguments.Length < 2) { ToolDebug.Warning("No resource specified {0}", Arguments[1]); return; } string processName = Arguments[1]; string resourcePath = Arguments[2]; var process = BuilderAssetDB.GetItem(processName); if (process == null) { ToolDebug.Warning("No process found {0}", processName); return; } //if (process.Object == null) //{ // ToolDebug.Warning("Invalid process item found {0}", processName); // return; //} var resourceAssetItem = BuilderAssetDB.AddOrGetAsset(resourcePath); if (resourceAssetItem == null) { ToolDebug.Warning("No resource found {0}", resourcePath); return; } //AssetProcessor processor = BuilderAssetDB.Instance.GetProcessorFor(context.Target, resourceAssetItem, destType); //if (processor == null) //{ // ToolDebug.Error("No processor found {0}", resourcePath); // return; //} // TODO: copy rest argument // Arguments need to be pair of name:value such as setting set //for (int iConfig = 3; iConfig < Arguments.Length; iConfig++) //{ // childImporter.Parameters.Add(Arguments[iConfig]); //} }
public override void Run(BuildActionContext context) { var newAssembly = Assembly.LoadFile(Arguments[1]); if (newAssembly == null) { return; } BuildScriptActionManager.RegisterClasses(newAssembly); BuilderAssetDB.RegisterClasses(newAssembly); }