浏览代码

SkeletonBaker dirty settings fix

Fenrisul 10 年之前
父节点
当前提交
b2ae8cba9f
共有 1 个文件被更改,包括 8 次插入3 次删除
  1. 8 3
      spine-unity/Assets/spine-unity/Editor/SkeletonBaker.cs

+ 8 - 3
spine-unity/Assets/spine-unity/Editor/SkeletonBaker.cs

@@ -151,7 +151,10 @@ public static class SkeletonBaker {
 			}
 
 			if (newAnimContainer) {
-
+				EditorUtility.SetDirty(controller);
+				AssetDatabase.SaveAssets();
+				AssetDatabase.ImportAsset(controllerPath, ImportAssetOptions.ForceUpdate);
+				AssetDatabase.Refresh();
 			} else {
 
 				foreach (string str in unusedClipNames) {
@@ -647,6 +650,8 @@ public static class SkeletonBaker {
 	static void SetAnimationSettings (AnimationClip clip, AnimationClipSettings settings) {
 		MethodInfo methodInfo = typeof(AnimationUtility).GetMethod("SetAnimationClipSettings", BindingFlags.Static | BindingFlags.NonPublic);
 		methodInfo.Invoke(null, new object[] { clip, settings });
+
+		EditorUtility.SetDirty(clip);
 	}
 
 	static AnimationClip ExtractAnimation (string name, SkeletonData skeletonData, Dictionary<int, List<string>> slotLookup, bool bakeIK, SendMessageOptions eventOptions, AnimationClip clip = null) {
@@ -716,8 +721,8 @@ public static class SkeletonBaker {
 		SetAnimationSettings(clip, settings);
 
 		clip.EnsureQuaternionContinuity();
-		clip.EnsureQuaternionContinuity();
-		clip.EnsureQuaternionContinuity();
+
+		EditorUtility.SetDirty(clip);
 
 		return clip;
 	}