diff --git a/Assets/Convention b/Assets/Convention index 8e419a3..223df3f 160000 --- a/Assets/Convention +++ b/Assets/Convention @@ -1 +1 @@ -Subproject commit 8e419a32572d8991e12babcd7d3a2240aac810f3 +Subproject commit 223df3fb9168796af50eadf9c1ed87cc1c9ec5e8 diff --git a/Assets/Scripts/Framework/DDT.cs b/Assets/Scripts/Framework/DDT.cs index 0ca99eb..e850525 100644 --- a/Assets/Scripts/Framework/DDT.cs +++ b/Assets/Scripts/Framework/DDT.cs @@ -53,5 +53,11 @@ namespace Demo.Game { return Count; } + + private void OnDestroy() + { + if (Datas.IsCreated) + Datas.Dispose(); + } } } diff --git a/Assets/Scripts/Framework/Updatement.cs b/Assets/Scripts/Framework/Updatement.cs index 24e30ba..bada6c5 100644 --- a/Assets/Scripts/Framework/Updatement.cs +++ b/Assets/Scripts/Framework/Updatement.cs @@ -18,7 +18,7 @@ namespace Demo.Game public MathExtension.EaseCurveType easeCurveType = MathExtension.EaseCurveType.Linear; } [Serializable] - public struct UpdatementCompiledEntries + public struct UpdatementCompiledEntries: IDisposable { public NativeArray TimePoints; public NativeArray Positions; @@ -35,6 +35,16 @@ namespace Demo.Game EaseCurveTypes = easeCurveTypes; Count = count; } + + public void Dispose() + { + if (TimePoints.IsCreated) + TimePoints.Dispose(); + if (Positions.IsCreated) + Positions.Dispose(); + if (EaseCurveTypes.IsCreated) + EaseCurveTypes.Dispose(); + } } public int Content = 0; @@ -190,5 +200,10 @@ namespace Demo.Game item.SetupDuration(new(CompiledEntries.TimePoints[0], CompiledEntries.TimePoints[^1]), GetTimelineItemColor()); } + + private void OnDestroy() + { + CompiledEntries.Dispose(); + } } }