首先祝大家新年快乐!

最近遇到一个小需求,策划要求UI背景图有GIF的效果,请问有什么比较好的解决方案吗?

unity版本 5.34

NGUI插件


自己用过的有两种。

如果是已经有帧动画的,把所有的动画帧打成一个atlas图集,然后直接挂在UISprite Animation上就行。

缺点是帧动画占容量会比较高。还有就是动画比较死,基本只能调大小帧率。

如果只是一些比较简单的动态效果,可以在图片上挂tween方法。有好多种,比如旋转、变形、位移等等,根据需要组合多种tween达到所需要的效果即可。

再复杂的估计就要配合其他动画工具了,我也没在搭UI的时候用到过……

回答里好多都不靠谱。

背景图那么大,序列帧动画就不要想了,尺寸大运行效率低。

靠谱一点的是Animation 动画或者 tween 动画。

用 Shader 做一些变幻动画也可以。另外,当策划提出天马行空的想法,而程序对如何实现毫无概念时,最好先让策划找来实际的参考案例,看到实际的效果 gif 图或者视频,再研究怎么做。-

Asset Store Animated GIF Player,有插件可以直接播放,性能效率没有测试过,不过原理上应该是很容易优化的。


拿uni2d或spine插件做mesh动画 应该效率好一些
把gif拆成帧动画,给背景图一个Animator,再把gif拆开的帧动画作一个animation clip来播放
就跟做精灵动画一样做个动画铺在ui上,帧动画或者骨骼动画都可以,怎么做动画可以问问你们动画小哥美术小姐姐
同前面几位,基本与其他常规2D动画一致,或者序列帧,或者缩放旋转位移。animation或者tween都可,序列帧也可以改ngui的shader来实现,也可以用shader 直接做一些动画,再复杂应该也可以用视频来做,挂在ngui texture上,第三方方案解码。具体选择何种方式性价比高要具体看动画的内容和形式。


推荐阅读:
相关文章