美文网首页
DOTween 常用方法知识点

DOTween 常用方法知识点

作者: 豆铮 | 来源:发表于2020-11-20 09:36 被阅读0次

    --运动曲线可视化网站           https://www.runoob.com/jqueryui/api-easings.html

    --运动曲线借鉴网页               https://blog.csdn.net/zcc858079762/article/details/81279828

    --运动曲线示意                      http://robertpenner.com/easing/easing_demo.html

    --DoTween方法借鉴网页      https://blog.csdn.net/quanfa206/article/details/79180535

                                                 https://blog.csdn.net/likendsl/article/details/50887689

                                                 https://blog.csdn.net/qq_41056203/article/details/80935304

                                                 https://blog.csdn.net/czhenya/article/details/78377587?utm_source=debugrun&utm_medium=referral

    --DoTween方法组               

    1.以DO开头的方法:就是补间动画的方法。例如:transform.DOMoveX(100,1)  (local为局部)

    2.以Set开头的方法:设置补间动画的一些属性。例如:myTween.SetLoops(4, LoopType.Yoyo)

    3.以On开头的方法:补间动画的回调方法。例如:myTween.OnStart(myStartFunction)』

    (1)

    DOText("啊啊", 5)                          --5秒逐字显示完

    DOScale(1, 5)                              --5秒尺寸变到

    DOColor(Color.red, 2)                      --颜色变

    DOFade(1, 3)                                --透明

    DOAnchorPos(Vector3,duration)

    DOAnchorPosY(-265f, 0.5f);  --把Y轴移动到相对位置,花费多少时间

    DOMove(Vector3(0,1,1),2)                    --常用移动

    DOMove(Vector3(0,1,1),2):SetRelative()      --移动加量

    DOLocalMove(new Vector3(10, 10, 10), 5) 

    DOMoveX(5, 3).From()            --From从目标点立即反向移动

    DORotate(new Vector3(10, 10, 10), 5) 

    DOLocalMoveX(5, 10) 

    DOLocalRotate(new Vector3(10, 10, 10), 5) 

    DOScaleX(5, 10) 

    DOLookAt(new Vector3(10, 10, 10), 5)        --朝向目标点

    DOComplete()                            --移动立即结束(且动完)

    DOKill()                                    --停掉当前变化

    DOPause()                                  --暂停

    DOPlay()                                    --播放

    DOFlip()                        --仅在变化中,立即慢慢恢复原样

    DOTogglePause()                --仅在变化中,停止/开始

    DOGoto(2)                    --仅在变化中,物体变化到2秒时状态

    DOPlayBackwards()            --仅在变化中,物体回到原始位置(倒)

    DOPlayForward()                            --再次变化

    DORewind()                                  --回到原始(重置)

    DORestart()              --仅在变化中,从头播

    DOJump(new Vector3(10, 10, 10), 3, 10)    --弹跳(点,次数,时间)

    DOLocalJump(new Vector3(10, 10, 10), 3, 10)

    DOPunchPosition(new Vector3(10, 10, 10), 5) --坐标回弹

    DOPunchRotation(new Vector3(50, 50, 50), 5) --旋转回弹

    DOPunchScale(new Vector3(5, 5, 5), 5        --尺寸回弹

    DOShakePosition(1,Vector3(3,3,0),10,90)    --时间和相机位移和震动次数和方向(震动)

    DOShakePosition(10, new Vector3(10, 10, 10));

    DOShakeRotation(10, new Vector3(10, 10, 10));

    DOShakeScale(10, new Vector3(10, 10, 10));

    --Blend动画融合方法(两次临近动画Dotween会跳过第一行,此时需要混合)

    DOBlendableMoveBy(Vector3(0,1,1),2)                  --移动加量(原有加参数)

    DOBlendableLocalMoveBy(Vector3(10, 10, 10), 10)

    DOBlendableRotateBy(new Vector3(30, 30, 30), 10)      --旋转到

    DOBlendableLocalRotateBy(new Vector3(30, 30, 30), 10)

    DOBlendableScaleBy(new Vector3(10, 10, 10), 10)      --尺寸加量

    (2)

    SetAs(Tween tween \ TweenParams tweenParams) 

    SetAutoKill(true)        --设置自动销毁  /DOFade(0, 1.5f).SetAutoKill(false).Pause();

    SetEase(Ease.OutBounce)      --动画曲线(缓冲类型)

    SetDelay(everyDelay)          --设置延迟

    SetId(object id)              --设置ID    可以只用int、string、object等类型的值

    SetLoops(2, LoopType loopType = LoopType.Restart)  --动画循环次数/类型 LoopType.Yoyo

    SetRecyclable(bool recyclable)                    --设置为可回收,可循环使用的

     SetUpdate(UpdateType updateType,false)            --是否忽视 Unity的时间影响

    SetRelative()  设置相对变化

    (3)

    OnComplete()        --绑定结束事件的函数

    Onkill()            --动画被销毁的时候调用

    OnPlay()            --动画播放的时候调用

    OnPause()            --动画暂停的时候调用

    OnRewind()          --动画被重置的时候

    OnStart()            --动画被播放的时候(只会调用一次)

    OnStepComplete() 

    OnUpdate()          --每帧调用

    OnWaypointChange()         

    (other)

    self.sequence = CS.DG.Tweening.DOTween.Sequence()  --一个个播   

    local tween3 = self.goodItem.transform:DOScale(Vector3(1.1,1.1,1.1),0.1)

    local tween4 = self.goodItem.transform:DOScale(Vector3(1,1,1),0.1)

    self.sequence:Append(tween3)

    self.sequence:Append(tween4) 

     //设置冷却转圈 附带设置 转一圈完成的回调方法(回调方法直接实现,不用调用其他的方法)

    img.DOFillAmount(0, 1.5f).SetEase(Ease.Linear).SetLoops(-1, LoopType.Yoyo).OnStepComplete(() =>

    {

               img.fillClockwise = !circleOutline.fillClockwise;

               img.DOColor(RandomColor(), 1.5f).SetEase(Ease.Linear);

    }).Pause();

    相关文章

      网友评论

          本文标题:DOTween 常用方法知识点

          本文链接:https://www.haomeiwen.com/subject/ptxdiktx.html