前言

在动画还原上,设计师和开发都碰到过以下问题:

  • 动效复杂,通过原生代码还原动画非常耗时耗力
  • 设计师即使输出完整的动画参数说明,使用代码还原动效还原仍然会有偏差

有了大杀器Lottie和Bodymovin,可以完美解决以上问题,让我用一个词来形容Lottie+Bodymovin组合,那就是“省心”。

什么是Lottie和Bodymovin?

Lottie是Airbnb开源的一套跨平台(Web、IOS、Android、React Native)的动画库,设计师在Adobe Effect制作动画之后,使用Lottie提供Bodymovin(AE插件)将动画导出带有矢量动画信息的Json文件,最后开发将Json文件放入App项目中,就可以将动画100%还原到产品中。对于不同的工作角色,Lottie+Bodymovin提供一套完整动画解决方案:

  • 设计师,百分百还原设计师的脑洞和创意,相信这是对设计师的最好嘉奖
  • 开发,抛弃臃肿的代码,如今只需要简单导入和有限的代码就可以完成动画开发
  • 项目管理,不同担心因为还原难题而影响了项目进度
  • 产品经理,动画可以为产品锦上添花

跨平台实现

对于不同设备,开发小哥哥可以关注下面的项目了解进行实现——

  • Web页面,通过Airbnb的开源项目“lottie-web”(https://github.com/airbnb/lottie-web)实现
  • Android原生,通过Airbnb的开源项目“lottie-android”(https://github.com/airbnb/lottie-android)实现
  • IOS原生,通过Airbnb的开源项目“lottie-ios”(https://github.com/airbnb/lottie-ios)实现
  • React Native,通过Airbnb的开源项目“lottie-react-native”(https://github.com/react-native-community/lottie-react-native)实现

下面重点介绍下AE插件Bodymvin的安装~~

Bodymovin安装和使用

首先你的电脑已经安装了AE,如果你的AE打开了,在安装之前先将AE关闭。

01

第一步,安装ZXP,为安装Bodymovin插件到AE做准备。下载地址:https://aescripts.com/learn/zxp-installer/

02

第二步,下载最新的Bodymovin插件。下载地址:https://github.com/airbnb/lottie-web/tree/master/build/extension
然后打开第一步下载的ZXP,将Bodymovin拖动进去。下面这张图表示安装完成。

03

第三步,打开AE,AE进行允许AE使用脚本设置,操作如下:

点击“After Effects CC > 首选项 > 常规”「Mac OS:快捷键Command+Option+;(分号);Win:Ctrl+Alt+;(分号)」,选中“允许脚本写入文件和访问网络”,点击确定。

04

第四步,选择AE窗口 > 扩展 > Bodymovin,打开Bodymovin窗口。

05

第五步,先选择你要导出动画的存储路径,然后点击渲染即可将你选择的合成动画导出为Json文件。输出Json后,此时点击左上角的预览(preview)按钮,拖动下面的滑块进行预览。可以点击左上角的预览(preview)按钮,点击“Browse”可选择本地的Json文件进行预览,点击“Current Renders"对当前合成动画进行预览。动画非自动播放,要拖动下面的滑块进行预览。最后,将导出的Json文件或Json+images文件发给开发小哥哥去实现啦~~

案例分享

前面有提到最后导出的可能是Json文件,也可能是Json文件加一个images包,所以分2种情况,如果在AE里直接绘制素材并制作动画,用Bodymovin导出的只是一个Json文件;如果在AE中导入外部素材制作动画,除了Json文件之外,还会有一个images图片包生成,这个包包含了动画中的所有图片素材。下面根据这2种情况分享下实际应用案例:

1

在AE里直接绘制素材制作动画

需求背景是需要首页金刚区2个Icon入口(分别是支付宝支付和微信支付)合并为1个Icon入口,要素依然需要保留,同时需要让用户一看就知道这块功能是移动支付的入口。其中一个方案是采用Logo平滑过渡的方式,预览效果如下:里面的元素是在AE里头直接绘制的,AE截图如下。最后用Bodymovin导出的就只有一个Json文件。

2

导入外部素材在AE里头制作动画

外部素材可以是ps文件、ai文件或者是png文件。以摇钱花摇一摇获得奖励金动效为例,动画预览如下:所有素材都是事先用ps绘制好再导入到AE中去制作动画的。最后导出了Json文件+images包。

总结

综上,通过Lottie+Bodymovin来还原动画是非常省心的。

需要注意的一点是Lottie和Bodymovin还有一点点小瑕疵,小部分AE属性在各平台存在兼容问题,也就是在AE里头直接绘制使用的某些属性在一些平台不能被解析和还原,我在附录中附上了Lottie和Bodymovin支持导出的AE属性列表,不被支持的属性可以先避免使用。

不过,引用外部素材的话就可以放心使用了,所以有些AE不被支持的属性效果可以在PS或AI绘制好再导入AE中作为素材制作动画。

附录

Lottie和Bodymovin支持导出的AE属性。该表格英文版见:http://airbnb.io/lottie/#/supported-features

lottie动画_设计师和程序员的动画还原神器Lottie+Bodymovin相关推荐

  1. mpvue微信小程序动画_微信小程序MPvue实现动画效果

    export default { data() { return { animation1: {}, animation2: {}, animation3: {}, stretch: false, / ...

  2. 当了十年 IT 程序员,我转型做自动驾驶开发的这五年”_《新程序员》编辑部的博客-CSDN博客

    "当了十年 IT 程序员,我转型做自动驾驶开发的这五年"_<新程序员>编辑部的博客-CSDN博客

  3. 如何成为一个设计师和程序员混合型人才

    优秀的设计师和程序员统治着网络–毕竟是他们创建的网站.而那些创建最好玩和最有用的网站的人,往往都是两种技能兼而有之,他们可以将两种完全不同的视觉语言和技术语言运用自如. 会设计的程序员和会编程的设计师 ...

  4. 设计师和程序员-拓展知识关系网

    很多问题通过练习和搜寻解决方法可以解决,可能是蹩脚的设计或是充满缺陷的代码. 你应该找到一些新的博客并加入RSS(我们推荐这些人):多读些他们的博客,如果你喜欢编程,关注一些你喜欢的语言的 黑客.博主 ...

  5. 设计师和程序员必备:全世界最著名的 icon 网站都在这了

    设计师和程序员必备:全世界最著名的 icon 网站都在这了 作为一个多年的独立开发者,收藏了非常多免费无版权图片网站.免费 icons.知名的技术人博客.有趣的网站等等,今天给大家分享我这几年收藏的 ...

  6. ciTerm - 程序员终端摸鱼神器,建议全屏后体验效果更佳

    摸鱼神器哪家强,程序员盒子找ciTerm!!! ciTerm是个啥? ciTerm:coder iTerm,是由程序员盒子出品的一款程序员在线摸鱼神器,给你终端般的摸鱼使用体验!对,有了它明目张胆摸鱼 ...

  7. 翻译翻译什么叫她妈的惊喜_妈的程序员说,翻译

    翻译翻译什么叫她妈的惊喜 我们都知道, 产品经理使用相同的术语来解释其实际含义 . 但是软件工程师对具有隐藏含义的普通方言同样有罪. 这是翻译过的最常见的八种程序员谚语. 免责声明:我是前PM. 但是 ...

  8. 程序员辞职理由_我成为程序员的5大理由

    程序员辞职理由 I get asked frequently by fellow programmers why I started writing online and if they should ...

  9. 推荐一个采用方便程序员在线动画学习常用算法的良心网站

    网址:https://algorithm-visualizer.org/ 进去之后的页面是程序员熟悉的码农风格: 假设我想学习冒泡排序算法,在搜索栏里输入sort,在结果列表里选择bubble sor ...

  10. python父亲节礼物_父亲节程序员硬核示爱:你能看懂几条

    摘要:祝所有的父亲,节日快乐! 父亲节要送什么? 对老爸的爱在心口难开怎么办? 都说父爱如山,山也需要偶尔的温情问候,与其在网上遍寻各种攻略,不如敲起手中的键盘,码出几行代码,用你最熟悉的方式表达对父 ...

最新文章

  1. 云原生时代,Kubernetes让应用落地的N种招式(附PPT)
  2. oracle的用户账号密码设置
  3. sketch如何做设计稿交互_做交互设计不可不知的十大原则
  4. 解决vue移动端适配问题
  5. 全志H3 uboot传参到内核分析,boot.scr文件分析
  6. Leetcode 211. 添加与搜索单词 - 数据结构设计 解题思路及C++实现
  7. 怎么写显示商品图片_shopee商品描述怎么写,shopee商品排名靠前的是
  8. 现在还有哪些价值 100 亿美金的产品机会?
  9. 问鼎五岳之巅--Java开发手册泰山版心得分享
  10. linux blender骨骼绑定,Linux下安装Blender
  11. Leetcode-MySQL-197. 上升的温度
  12. error C2086: “int WINGDIAPI”: 重定义
  13. tc275单片机的内核_TC275开发板学习心得(一)
  14. 计算机网络2020秋--第二次测试
  15. 蛮牛精选七款Unity插件
  16. java窗口连接_JAVA简单的注册窗口(连接数据库)
  17. ## 关于时下新兴的日常图片视频摄像防抖技术的简单介绍与讨论
  18. 联想微型计算机拆,联想10064一体机拆机,联想一体机硬盘怎么拆
  19. 用傅里叶卷积实现万物隐身!三星这个LaMa神器可试玩!
  20. 【R语言】5种探索数据分布的可视化技术

热门文章

  1. Win10 专业版激活!
  2. 分布式日志收集系统实践(视频教程)
  3. 关于Ext checkboxfiled 获取值为 on的解决办法
  4. .net的XML对象序列化VS WCF中xml序列化问题
  5. sql常用语句集合(工作总结)
  6. Linux下C语言编程入门-8关于计时器
  7. mysql 删除后缀表_mysql批量删除指定前缀或后缀表
  8. axure后台示例_【Axure电商案例】如何设计和真的后台一样给客户看
  9. WIFI篇(3.python破解wifi--pywifi的介绍)
  10. phpstudy不执行php文件,phpstudy运行时突然无法报错