Browse Source

[unity] Using InteractionMode.AutomatedAction at prefab Revert() call in newer Unity versions. See #1273.

Harald Csaszar 3 years ago
parent
commit
d9935741c2

+ 8 - 0
spine-unity/Assets/Spine/Runtime/spine-unity/Components/SkeletonRenderer.cs

@@ -43,6 +43,10 @@
 #define CONFIGURABLE_ENTER_PLAY_MODE
 #endif
 
+#if UNITY_2020_1_OR_NEWER
+#define REVERT_HAS_OVERLOADS
+#endif
+
 #define SPINE_OPTIONAL_RENDEROVERRIDE
 #define SPINE_OPTIONAL_MATERIALOVERRIDE
 
@@ -100,7 +104,11 @@ namespace Spine.Unity {
 						var objectOverrides = UnityEditor.PrefabUtility.GetObjectOverrides(instanceRoot);
 						foreach (UnityEditor.SceneManagement.ObjectOverride objectOverride in objectOverrides) {
 							if (objectOverride.instanceObject == meshFilter) {
+#if REVERT_HAS_OVERLOADS
+								objectOverride.Revert(UnityEditor.InteractionMode.AutomatedAction);
+#else
 								objectOverride.Revert();
+#endif
 								break;
 							}
 						}