Example #1
0
        private static (GameObject, uint Hash, IDictionary <uint, GameObject> EidMap, ImportLayoutLog) ImportLayout(IAkyuiImportSettings settings, IAkyuiLoader akyuiLoader, PathGetter pathGetter, AkyuiLogger logger)
        {
            var stopWatch  = Stopwatch.StartNew();
            var layoutInfo = akyuiLoader.LayoutInfo;
            var triggers   = settings.Triggers.Select(x => (IAkyuiGenerateTrigger)x).ToArray();

            var(gameObject, hash, eidMap) = AkyuiGenerator.GenerateGameObject(new EditorAssetLoader(pathGetter, logger, settings.Triggers), layoutInfo, triggers);
            foreach (var trigger in settings.Triggers)
            {
                trigger.OnPostprocessPrefab(akyuiLoader, ref gameObject);
            }
            return(gameObject, hash, eidMap, new ImportLayoutLog {
                Time = stopWatch.Elapsed.TotalSeconds
            });
        }
Example #2
0
 private static (GameObject, long Hash) ImportLayout(IAkyuiImportSettings settings, IAkyuiLoader akyuiLoader, PathGetter pathGetter, AkyuiLogger logger)
 {
     using (logger.SetCategory("Layout"))
     {
         logger.Log($"Import Start");
         var layoutInfo = akyuiLoader.LayoutInfo;
         var triggers   = settings.Triggers.Select(x => (IAkyuiGenerateTrigger)x).ToArray();
         var(gameObject, hash) = AkyuiGenerator.GenerateGameObject(new EditorAssetLoader(pathGetter, logger, settings.Triggers), layoutInfo, triggers);
         foreach (var trigger in settings.Triggers)
         {
             trigger.OnPostprocessPrefab(akyuiLoader, ref gameObject);
         }
         logger.Log($"Import Finish");
         return(gameObject, hash);
     }
 }
Example #3
0
        private static (GameObject, long Hash) ImportLayout(IAkyuiImportSettings settings, IAkyuiLoader akyuiLoader, PathGetter pathGetter, AkyuiLogger logger)
        {
            var stopWatch = Stopwatch.StartNew();

            using (logger.SetCategory("Layout"))
            {
                var layoutInfo = akyuiLoader.LayoutInfo;
                var triggers   = settings.Triggers.Select(x => (IAkyuiGenerateTrigger)x).ToArray();
                var(gameObject, hash) = AkyuiGenerator.GenerateGameObject(new EditorAssetLoader(pathGetter, logger, settings.Triggers), layoutInfo, triggers);
                foreach (var trigger in settings.Triggers)
                {
                    trigger.OnPostprocessPrefab(akyuiLoader, ref gameObject);
                }
                logger.Log($"Import Finish", ("time", $"{stopWatch.Elapsed.TotalSeconds:0.00}s"));
                return(gameObject, hash);
            }
        }