一种简单的触发Dotween动画的方式
导语
偶然想实现一下鼠标悬浮在控件上时控件放大的效果,类似于守望先锋的主菜单UI,但不想使用Unity原生的Animation(性能消耗过大)。于是使用Dotwwen插值动画来做这个效果。
步骤一 动画
组件上挂载一个DotweenAnimation,做一个scale到1.3的效果,记得把autokill和autoplay取消
步骤二 触发
给组件添加一个EventTrigger, 或者自己写一个脚本继承EventTrigger,我使用了前者。在EventTrigger的鼠标移入和移出事件中分别调用DotweenAnimation的正向和反向播放动画:DoPlayForward() 和DoPlayBackWards()
完成
简单布置一个UI测试这个功能
运行时(没有截图到鼠标)
就这样实现了一个手感极佳的UI,鼠标滑过控件的时候字体放大,移出的时候缩回,后续可以加上更多的效果。注意,整个过程没有写一行代码,都是在Editor界面完成的,可以说是相当简单的方法。
性能
在profile界面查看这个小ui的性能
可以看到,耗时几乎忽略不计的同时0做到了GC(归功于dotween的强大)