diff --git a/MagicTween/Assets/MagicTween/Runtime/Experimental.meta b/MagicTween/Assets/MagicTween/Runtime/Experimental.meta deleted file mode 100644 index 2249ccc..0000000 --- a/MagicTween/Assets/MagicTween/Runtime/Experimental.meta +++ /dev/null @@ -1,8 +0,0 @@ -fileFormatVersion: 2 -guid: 4043eb194c8134e34867858c606bf017 -folderAsset: yes -DefaultImporter: - externalObjects: {} - userData: - assetBundleName: - assetBundleVariant: diff --git a/MagicTween/Assets/MagicTween/Runtime/Experimental/TweenParams.cs b/MagicTween/Assets/MagicTween/Runtime/Experimental/TweenParams.cs deleted file mode 100644 index 128d6c1..0000000 --- a/MagicTween/Assets/MagicTween/Runtime/Experimental/TweenParams.cs +++ /dev/null @@ -1,49 +0,0 @@ -using System; -using Unity.Collections; -using Unity.Collections.LowLevel.Unsafe; -using MagicTween.Experimental.Core; - -namespace MagicTween.Experimental -{ - public struct TweenParams : IDisposable - { - public unsafe static TweenParamsBuilder CreateBuilder() - { - var builder = new TweenParamsBuilder() - { - paramsPtr = (TweenParams*)UnsafeUtility.Malloc( - UnsafeUtility.SizeOf(), - UnsafeUtility.AlignOf(), - Allocator.Temp) - }; - var defaultValue = new TweenParams() - { - loops = 1, - playbackSpeed = 1f, - autoKill = true, - autoPlay = true - }; - UnsafeUtility.CopyStructureToPtr(ref defaultValue, builder.paramsPtr); - return builder; - } - - internal Ease ease; - internal ValueAnimationCurve customEasingCurve; - internal int loops; - internal LoopType loopType; - internal float playbackSpeed; - internal float delay; - internal bool autoPlay; - internal bool autoKill; - internal bool ignoreTimeScale; - internal bool isRelative; - internal InvertMode invertMode; - internal int customId; - internal FixedString32Bytes customIdString; - - public void Dispose() - { - if (customEasingCurve.IsCreated) customEasingCurve.Dispose(); - } - } -} \ No newline at end of file diff --git a/MagicTween/Assets/MagicTween/Runtime/Experimental/TweenParams.cs.meta b/MagicTween/Assets/MagicTween/Runtime/Experimental/TweenParams.cs.meta deleted file mode 100644 index 3d08532..0000000 --- a/MagicTween/Assets/MagicTween/Runtime/Experimental/TweenParams.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 81b111b9191814abbba631d0da0b917e -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/MagicTween/Assets/MagicTween/Runtime/Experimental/TweenParamsBuilder.cs b/MagicTween/Assets/MagicTween/Runtime/Experimental/TweenParamsBuilder.cs deleted file mode 100644 index 24eff69..0000000 --- a/MagicTween/Assets/MagicTween/Runtime/Experimental/TweenParamsBuilder.cs +++ /dev/null @@ -1,163 +0,0 @@ -using System; -using System.Runtime.CompilerServices; -using UnityEngine; -using Unity.Collections; -using Unity.Collections.LowLevel.Unsafe; -using Unity.Burst; -using MagicTween.Diagnostics; - -namespace MagicTween.Experimental.Core -{ - public unsafe ref struct TweenParamsBuilder - { - internal TweenParams* paramsPtr; - internal AnimationCurve customEasingCurve; - - public TweenParamsBuilder SetEase(Ease ease) - { - CheckBuilderPtr(); - - if (ease == Ease.Custom) - { - LogWarning_EaseCustom(); - return this; - } - - paramsPtr->ease = ease; - - return this; - } - - [BurstDiscard] - void LogWarning_EaseCustom() - { - Debugger.LogWarning("Ease.Custom cannot be specified explicitly. Use SetEase(AnimatinonCurve) instead."); - } - - public TweenParamsBuilder SetEase(AnimationCurve animationCurve) - { - CheckBuilderPtr(); - - paramsPtr->ease = Ease.Custom; - customEasingCurve = animationCurve; - - return this; - } - - public TweenParamsBuilder SetDelay(float delay) - { - CheckBuilderPtr(); - paramsPtr->delay = delay; - return this; - } - - public TweenParamsBuilder SetPlaybackSpeed(float speed) - { - CheckBuilderPtr(); - paramsPtr->playbackSpeed = speed; - return this; - } - - public TweenParamsBuilder SetLoops(int loops) - { - CheckBuilderPtr(); - paramsPtr->loops = loops; - return this; - } - - public TweenParamsBuilder SetLoops(int loops, LoopType loopType) - { - CheckBuilderPtr(); - paramsPtr->loops = loops; - paramsPtr->loopType = loopType; - return this; - } - - public TweenParamsBuilder SetIgnoreTimeScale(bool ignoreTimeScale = true) - { - CheckBuilderPtr(); - paramsPtr->ignoreTimeScale = ignoreTimeScale; - return this; - } - - public TweenParamsBuilder SetRelative(bool isRelative = true) - { - CheckBuilderPtr(); - paramsPtr->isRelative = isRelative; - return this; - } - - public TweenParamsBuilder SetFrom(InvertMode fromMode = InvertMode.Immediate) - { - CheckBuilderPtr(); - paramsPtr->invertMode = fromMode; - return this; - } - - public TweenParamsBuilder SetAutoKill(bool autoKill = true) - { - CheckBuilderPtr(); - paramsPtr->autoKill = autoKill; - return this; - } - - public TweenParamsBuilder SetAutoPlay(bool autoPlay = true) - { - CheckBuilderPtr(); - paramsPtr->autoPlay = autoPlay; - return this; - } - - public TweenParamsBuilder SetId(int id) - { - CheckBuilderPtr(); - paramsPtr->customId = id; - return this; - } - - public TweenParamsBuilder SetId(string id) - { - CheckBuilderPtr(); - paramsPtr->customIdString = new FixedString32Bytes(id); - return this; - } - - public TweenParamsBuilder SetId(in FixedString32Bytes id) - { - CheckBuilderPtr(); - paramsPtr->customIdString = id; - return this; - } - - public TweenParams Build() - { - CheckBuilderPtr(); - - if (paramsPtr->ease == Ease.Custom) - { - paramsPtr->customEasingCurve = new ValueAnimationCurve(customEasingCurve, Allocator.Persistent); - } - - UnsafeUtility.CopyPtrToStructure(paramsPtr, out var result); - Dispose(); - return result; - } - - [MethodImpl(MethodImplOptions.AggressiveInlining)] - void CheckBuilderPtr() - { - if (paramsPtr == null) - { - throw new InvalidOperationException("Builder is not initialized"); - } - } - - public void Dispose() - { - CheckBuilderPtr(); - UnsafeUtility.Free(paramsPtr, Allocator.Temp); - paramsPtr = null; - customEasingCurve = null; - } - } -} \ No newline at end of file diff --git a/MagicTween/Assets/MagicTween/Runtime/Experimental/TweenParamsBuilder.cs.meta b/MagicTween/Assets/MagicTween/Runtime/Experimental/TweenParamsBuilder.cs.meta deleted file mode 100644 index 5555a5d..0000000 --- a/MagicTween/Assets/MagicTween/Runtime/Experimental/TweenParamsBuilder.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 6c2ef8714f3294bcdb8b9fbcd0fcf2df -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/MagicTween/Assets/MagicTween/Runtime/Experimental/TweenSetAsExtensions.cs b/MagicTween/Assets/MagicTween/Runtime/Experimental/TweenSetAsExtensions.cs deleted file mode 100644 index a7bcd91..0000000 --- a/MagicTween/Assets/MagicTween/Runtime/Experimental/TweenSetAsExtensions.cs +++ /dev/null @@ -1,44 +0,0 @@ -using Unity.Collections; -using MagicTween.Core; -using MagicTween.Diagnostics; -using MagicTween.Core.Components; - -namespace MagicTween.Experimental -{ - public static class TweenSetAsExtensions - { - public static T SetAs(this T self, in TweenParams tweenParams) where T : struct, ITweenHandle - { - AssertTween.IsActive(self); - - var entity = self.GetEntity(); - - TweenWorld.EntityManager.SetComponentData(entity, new TweenParameterEase(tweenParams.ease)); - if (tweenParams.ease == Ease.Custom) - { - var customEasingCurve = TweenWorld.EntityManager.GetComponentData(entity).value; - if (customEasingCurve.IsCreated) customEasingCurve.Dispose(); - customEasingCurve = new ValueAnimationCurve(tweenParams.customEasingCurve, Allocator.Persistent); - TweenWorld.EntityManager.SetComponentData(entity, new TweenParameterCustomEasingCurve(customEasingCurve)); - } - - TweenWorld.EntityManager.SetComponentData(entity, new TweenParameterDelay(tweenParams.delay)); - TweenWorld.EntityManager.SetComponentData(entity, new TweenParameterLoops(tweenParams.loops)); - TweenWorld.EntityManager.SetComponentData(entity, new TweenParameterLoopType(tweenParams.loopType)); - TweenWorld.EntityManager.SetComponentData(entity, new TweenParameterPlaybackSpeed(tweenParams.playbackSpeed)); - - TweenWorld.EntityManager.SetComponentData(entity, new TweenParameterInvertMode(tweenParams.invertMode)); - TweenWorld.EntityManager.SetComponentData(entity, new TweenParameterIgnoreTimeScale(tweenParams.ignoreTimeScale)); - TweenWorld.EntityManager.SetComponentData(entity, new TweenParameterIsRelative(tweenParams.isRelative)); - - TweenWorld.EntityManager.SetComponentData(entity, new TweenParameterAutoPlay(tweenParams.autoPlay)); - TweenWorld.EntityManager.SetComponentData(entity, new TweenParameterAutoKill(tweenParams.autoKill)); - - TweenWorld.EntityManager.SetComponentData(entity, new TweenIdInt(tweenParams.customId)); - TweenWorld.EntityManager.SetComponentData(entity, new TweenIdString(tweenParams.customIdString)); - - return self; - } - - } -} \ No newline at end of file diff --git a/MagicTween/Assets/MagicTween/Runtime/Experimental/TweenSetAsExtensions.cs.meta b/MagicTween/Assets/MagicTween/Runtime/Experimental/TweenSetAsExtensions.cs.meta deleted file mode 100644 index 316631a..0000000 --- a/MagicTween/Assets/MagicTween/Runtime/Experimental/TweenSetAsExtensions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 66a66e500ee5a4679b44086011d0a4a0 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: