diff options
Diffstat (limited to 'Library/PackageCache/com.unity.timeline@1.2.13/Runtime/AssetUpgrade/ClipUpgrade.cs')
| -rw-r--r-- | Library/PackageCache/com.unity.timeline@1.2.13/Runtime/AssetUpgrade/ClipUpgrade.cs | 34 |
1 files changed, 34 insertions, 0 deletions
diff --git a/Library/PackageCache/com.unity.timeline@1.2.13/Runtime/AssetUpgrade/ClipUpgrade.cs b/Library/PackageCache/com.unity.timeline@1.2.13/Runtime/AssetUpgrade/ClipUpgrade.cs new file mode 100644 index 0000000..20f3dfd --- /dev/null +++ b/Library/PackageCache/com.unity.timeline@1.2.13/Runtime/AssetUpgrade/ClipUpgrade.cs @@ -0,0 +1,34 @@ +namespace UnityEngine.Timeline +{ + partial class TimelineClip + { + enum Versions + { + Initial = 0, + ClipInFromGlobalToLocal = 1 + } + const int k_LatestVersion = (int)Versions.ClipInFromGlobalToLocal; + [SerializeField, HideInInspector] int m_Version; + + //fields that are used for upgrading should be put here, ideally as read-only + + void UpgradeToLatestVersion() + { + if (m_Version < (int)Versions.ClipInFromGlobalToLocal) + { + TimelineClipUpgrade.UpgradeClipInFromGlobalToLocal(this); + } + } + + static class TimelineClipUpgrade + { + // version 0->1, clipIn move from global to local + public static void UpgradeClipInFromGlobalToLocal(TimelineClip clip) + { + // case 936751 -- clipIn was serialized in global, not local offset + if (clip.m_ClipIn > 0 && clip.m_TimeScale > float.Epsilon) + clip.m_ClipIn *= clip.m_TimeScale; + } + } + } +} |
