/// <summary> /// 添加一个动画 /// </summary> /// <param name="aiukTween"></param> private static void AddTween(IAiukTween aiukTween) { EnsureCreated(); if (aiukTween.Key != null) { RemoveTweenKey(aiukTween.Key, _addKeyStopBehavior); } tweens.Add(aiukTween); }
private void ShowLoadingTween() { Debug.LogError("开启loading动画!"); m_LoadingRect.gameObject.SetActive(true); if (m_loadingTween == null) { m_loadingTween = m_LoadingRect.gameObject .DoRotateZ(720f, 2f) .SetLoopType(AiukTweenLoopType.Restart) .SetLoopCount(-1); } else { m_loadingTween.Reset(); m_loadingTween.Resume(); } }
/// <summary> /// 归还一个动画对象 /// </summary> /// <param name="aiukTween"></param> public static void Restore(IAiukTween aiukTween) { Type type = aiukTween.GetType(); switch (type.Name) { case "Vector3Tween": var v3Tween = aiukTween as AiukVector3Tween; v3TweenPool.Restore(v3Tween); break; case "Vector4Tween": var v4Tween = aiukTween as AiukVector4Tween; v4TweenPool.Restore(v4Tween); break; case "Vector2Tween": var v2Tween = aiukTween as AiukVector2Tween; v2TweenPool.Restore(v2Tween); break; case "FloatTween": var floatTween = aiukTween as AiukFloatTween; floatTweenPool.Restore(floatTween); break; case "ColorTween": var colorTween = aiukTween as AiukColorTween; colorTweenPool.Restore(colorTween); break; case "QuaternionTween": var quaTween = aiukTween as AiukQuaternionTween; quaTweenPool.Restore(quaTween); break; } }
private static Quaternion LerpQuaternion(IAiukTween <Quaternion> t, Quaternion start, Quaternion end, float progress) { return(Quaternion.Lerp(start, end, progress)); }
private static Vector4 LerpVector4(IAiukTween <Vector4> t, Vector4 start, Vector4 end, float progress) { return(Vector4.Lerp(start, end, progress)); }
/// <summary> /// 移除一个动画 /// </summary> /// <param name="aiukTween"></param> /// <param name="stopBehavior"></param> /// <returns></returns> public static bool RemoveTween(IAiukTween aiukTween, AiukTweenStopBehavior stopBehavior) { aiukTween.Stop(stopBehavior); return(tweens.Remove(aiukTween)); }
private static Vector2 LerpVector2(IAiukTween <Vector2> t, Vector2 start, Vector2 end, float progress) { return(Vector2.Lerp(start, end, progress)); }
private static float LerpFloat(IAiukTween <float> t, float start, float end, float progress) { return(start + (end - start) * progress); }
private static Vector3 LerpVector3(IAiukTween <Vector3> t, Vector3 start, Vector3 end, float progress) { return(Vector3.Lerp(start, end, progress)); }
private static Color LerpColor(IAiukTween <Color> t, Color start, Color end, float progress) { return(Color.Lerp(start, end, progress)); }