Redian新闻
>
AirBnb 开源动画引擎 Lottie:采用 Core Animation 提高性能

AirBnb 开源动画引擎 Lottie:采用 Core Animation 提高性能

公众号新闻

作者 | Sergio De Simone
译者 | 刘雅梦
策划 | 丁晓昀  

AirBnb 宣布了其开源矢量动画引擎 Lottie 的第四次主要迭代。AirBnb iOS 工程师 Cal Stephens 表示,由于采用了核心动画(Core Animation),Lottie 4.0 提供了显著的性能改进,并降低了 CPU 负载。

Lottie 是一个用于 iOS 和 Android 的库,可以实时渲染 After Effects 动画。Lottie 中的动画是通过 JSON 文件描述的,可以使用 Bodymovin 插件从 After Effects 中导出。Lottie 将对 JSON 进行解码,并访问渲染动画所需的所有资源,就像它只是应用程序中的另一个静态资源一样。

在 Lottie 4.0 中,AirBnb 放弃了使用 CADisplayLink 在主 CPU 线程上制作图形动画的原始方法:

每帧一次,Lottie 将在主线程上执行代码,以推进动画的进度并重新渲染其内容。这意味着动画在播放时将消耗 5–20% 以上的 CPU,从而减少了用于应用程序其余部分的可用 CPU 周期。

根据 Stephens 的说法,这使得 Lottie 在更复杂的情况下无法维持所需的帧速并且开始丢弃帧会变得相对常见。此外,当主线程忙于一些昂贵的任务时,动画可能会出现一些抖动。

切换到核心动画(Core Animation)意味着动画被卸载到 GPU 上,这有三个好处:利用硬件加速,减少 CPU 负载,并在 CPU 繁忙时提高帧速。

例如,Airbnb 应用程序在首次启动时显示 Lottie 动画。我们在这里进行了一项实验,发现切换到新的渲染引擎可以缩短应用程序的总启动时间,同时还可以提高启动动画的帧速和用户体验。

除了新的基于核心动画(Core Animation)的渲染引擎外,Lottie 4.0 还带来了一种新的文件格式,它使用压缩将一个或多个 Lottie JSON 文件及其相关资源聚合到一个文件中。JSON 解码管道已被重写,速度提高了约 2 倍。

Lottie 最初是用 Objective-C 编写的,两年前在 Swift 中被完全重写,最终发布了第 3 版。你可以从 GitHub repo 或使用包管理器(如 CocoaPods、Carthage 或 Swift 包管理器)安装它。

作者简介:

Sergio De Simone 是一名软件工程师。Sergio 已经在一系列不同的项目和公司担任软件工程师超过 15 年,其中包括西门子、惠普和小型创业公司等不同的工作环境。在过去的几年里,他一直专注于移动平台和相关技术的开发。他目前就职于 BigML,Inc.,负责 iOS 和 OS X 的开发。

原文链接:

https://www.infoq.com/news/2022/12/airbnb-lottie-4/

相关阅读:

React 源码解读之 React Fiber (https://xie.infoq.cn/article/c69eeb94f0023cde7bc0bf80a)

虚拟角色赛道的新“闯入者”:3D 引擎 Cocos 和它的新故事 (https://www.infoq.cn/article/jEs0tEhfmkjbQ1LGPkbI)

声明:本文为 InfoQ 翻译,未经许可禁止转载。

点击底部阅读原文访问 InfoQ 官网,获取更多精彩内容!

今日好文推荐

市场增速超20%,国产操作系统“浴火重生” | 解读操作系统的 2022

直面成本“刺客”、拒绝繁杂技术花样,压力之下云厂商改变方向|解读云原生的 2022

马化腾内部开炮:有些业务都活不下去了,周末还打球;阿里云香港服务器“史诗级”宕机;马斯克萌生退意 | Q资讯

奇点已来,推进All on Serverless有哪些困难、如何破局?| 解读Serverless的2022

微信扫码关注该文公众号作者

戳这里提交新闻线索和高质量文章给我们。
相关阅读
全球旅游逐渐复苏,Airbnb将顺势“腾飞”?警惕!列治文租客竟违法开Airbnb,一天刷几十次门禁,房东蒙在鼓里那年火车上的故事(下集)(十七)华人在多伦多每月花费$5150长租Airbnb遭驱逐:坚决不搬家!英特尔推出锐炫 RGB 鼠标垫:采用 USB-C 供电,售价 64.77 美元Meilisearch 1.0稳定版发布,Rust高性能开源搜索引擎度假忘带Airbnb钥匙 美国20岁女学生徒手爬楼惨丢命大多区Airbnb屋主惨遇无良租客!损失总值5万元快来这座 Airbnb 最受欢迎的房屋之一 -- 位于佛蒙特州的小玻璃屋女屋主死床上!妹子租Airbnb$650万豪宅 竟发现隐藏末日地下室...赚钱机会来了!华人没有房子也能做房东!Airbnb推出新功能三名美国游客墨西哥城Airbnb神秘死亡 警方公布死因牛! 华人妈妈和多伦多Airbnb房东为这事狂撕逼! 连议员厅长也惊动了!重磅!阿里开源自研高性能核心搜索引擎HavenaskAirbnb租客糟蹋房屋 亚裔房东赶人遭搧耳光Arch Linux 2023.01.01 版本 ISO 镜像发布:采用 Linux 内核 6.1FastTrack Universität 2023莱比锡大学公立语言项目招生简章Tacotron2、GST、Glow-TTS、Flow-TTS…你都掌握了吗?一文总结语音合成必备经典模型(二)车行千里-- 去找寻让我心动的那片秋 (多图超长)壹号本 PC 游戏掌机 OneXPlayer 2 发布:采用分离式手柄,6699 元起性能提升 2.5 倍!字节开源高性能 C++ JSON 库 sonic-cpp活在当下,享乐当下(圖)为什么西方节日在东方更热闹纽约市短租条例大变动?由于新的短期租赁规定,纽约市可能会失去 10,000 个 Airbnb 房源Gut:六大研究队列近80万人研究结果表明:采用并保持健康生活方式或能预防高达60%的炎性肠病病例的发生一条新建的路努比亚nubia Pad 3D预热:采用 AI 引擎超级仿生眼技术,前后摄 3D 影像暴跌30%后,业绩优异的Airbnb值得逢低关注?新规!加拿大Airbnb禁止租客举行跨年派对!重磅!阿里开源自研高性能核心搜索引擎 Havenask[时尚] AJ14兵马俑开箱 CLOT x Air Jordan 14 Low SP "Terracotta"噩梦!安省Airbnb房东崩溃:租客砸毁房子,造成$5万刀损失!太吵了! Airbnb宣布禁止租客跨年夜举行派对Manticore Search 6正式发布,C++高性能搜索引擎高性能!超轻量!AI模型编译器MegCC开源了!让推理引擎体积变小小小小小…
logo
联系我们隐私协议©2024 redian.news
Redian新闻
Redian.news刊载任何文章,不代表同意其说法或描述,仅为提供更多信息,也不构成任何建议。文章信息的合法性及真实性由其作者负责,与Redian.news及其运营公司无关。欢迎投稿,如发现稿件侵权,或作者不愿在本网发表文章,请版权拥有者通知本网处理。