Ejemplo n.º 1
0
        public void Traverse()
        {
            using (var ms = new MemoryStream())
            {
                BinaryWriter writer = new BinaryWriter(ms);
#if AtlaS_ON
                writer.Write(true);
#else
                writer.Write(false);
#endif
                var prefabs = AssetDatabase.FindAssets("t:prefab").Select(i => AssetDatabase.GUIDToAssetPath(i)).ToArray();
                writer.Write(prefabs.Length);
                var prefabLog = new PrefabLog();
                for (int i = 0; i < prefabs.Length; i++)
                {
                    EditorUtility.DisplayProgressBar("Prefab", prefabs[i], (float)i / prefabs.Length);
                    prefabLog.path = prefabs[i];
                    prefabLog.Serialize(writer);
                }
                var scenes = AssetDatabase.FindAssets("t:scene").Select(i => AssetDatabase.GUIDToAssetPath(i)).ToArray();
                writer.Write(scenes.Length);
                var sceneLog = new SceneLog();
                for (int i = 0; i < scenes.Length; i++)
                {
                    EditorUtility.DisplayProgressBar("Scene", scenes[i], (float)i / scenes.Length);
                    sceneLog.path = scenes[i];
                    sceneLog.Serialize(writer);
                }
                var clips = AssetDatabase.FindAssets("t:animationclip").Select(i => AssetDatabase.GUIDToAssetPath(i)).ToArray();
                writer.Write(clips.Length);
                var clipAction = new AnimationClipAction();
                for (int i = 0; i < clips.Length; i++)
                {
                    EditorUtility.DisplayProgressBar("AnimationClip", clips[i], (float)i / scenes.Length);
                    clipAction.path = clips[i];
#if AtlaS_ON
                    clipAction.OnSwitchOff();
#else
                    clipAction.OnSwitchOn();
#endif
                }
                File.WriteAllBytes(LogFile, ms.ToArray());
            }
            AssetDatabase.SaveAssets();
            AssetDatabase.Refresh();
            EditorUtility.ClearProgressBar();
        }
Ejemplo n.º 2
0
 public AnimationFrame(InterpolationType interpolator,
                       AnimationClipAction action)
 {
     Action       = action;
     Interpolator = interpolator;
 }
Ejemplo n.º 3
0
 public void AddFrame(int frame,
                      InterpolationType interpolator,
                      AnimationClipAction actionDelegate)
 {
     Frames.Add(frame, new AnimationFrame(interpolator, actionDelegate));
 }