笔者觉得一个好缓动效果的使用,往往会让人觉得这个游戏对象瞬间活泼起来就像有了生命一般,Easing 就是这般神奇。在本文,笔者带大家写一个具有缓动效果的 PingPong 动效。
EasingCore
巧妇难为无米之炊,我们要先整理一些 Ease 算法先,没想人家早早的就整理了一份放到 GitHub 上咯~(其实 Itween里面也有一套 Ease 算法哈)
EasingCore-GitHub
怎么用 EasingCore:
怎么用EasingCore,超简单:
float value = EasingFunction.Get(easetype).Invoke(progress);
这样获得的值就是被算法修正的值啦。
PingPong
用上了这个EasingCore 的 PingPong动效模块,:
using EasingCore;
using System;
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using zFrame.Extend;
using Ease = EasingCore.Ease;
public class PingPong : MonoBehaviour
{
#region SelfField
float progress = 0;
bool addition = true;
private CoroutineHandler coroutine;
#endregion
<