jjzjj

浅谈PAG与Lottie对比

萤火驻守心间 2023-09-14 原文

1、工作过程
Lottie:
设计师使用 AE 设计好动画, 通过 bodymovin 插件将 AE 工程文件导出为 json 文件,在客户端(使用 Lottie SDK)解析,最后通过各平台原生渲染方案进行渲染,其中在 Android 平台上通过 Canvas 进行绘制,在 iOS 上通过 CALayer 进行绘制,在 web 端支持 SVG、Canvas 和 HTML 绘制。
PAG:
设计师使用 AE 设计好动画以后,通过 PAGExporter 插件读取 AE 工程文件,根据具体需求选择矢量导出、BMP 预合成、混合导出方式中的一种导出一个 PAG 二进制文件,客户端对该 PAG 二进制文件进行解码、渲染,各端共享一套 C++实现,平台端只做接口封装。(导出插件:PAGExporter;桌面预览工具:PAGViewer;客户端渲染 SDK:PAG SDK)

2、文件格式方面
Lottie:导出素材格式是 json 文本,可读性高,但是承载 AE 特性能力差,文件体积大,解码速度慢。
PAG:采用二进制的编码方法,配套自研编解码器,动态比特位压缩,冗余信息极少,文件体积最小,解码速度最快,且支持图片和音频信息编码。

3、平台端支持方面
Lottie:支持 Android、iOS、web、mac OS,SVGA 支持 Android、iOS 和 web 端
PAG:支持 Android、iOS、web、mac OS、windows、Linux等,几乎涵盖到所有平台。

4、矢量动画渲染性能
PAG 优化 Lottie 和 SVGA,内存占用方面会偏大一些。

5、矢量动画文件对比
PAG 采用了动态比特位的压缩技术,动画文件可以做到足够小。相同的 AE 工程,PAG 导出的动画文件大小是 Lottie 动画文件的 51%左右

有关浅谈PAG与Lottie对比的更多相关文章

  1. STM32的HAL和LL库区别和性能对比 - 2

    LL库和HAL库简介LL:Low-Layer,底层库HAL:HardwareAbstractionLayer,硬件抽象层库LL库和hal库对比,很精简,这实际上是一个精简的库。LL库的配置选择如下:在STM32CUBEMX中,点击菜单的“ProjectManager”–>“AdvancedSettings”,在下面的界面中选择“AdvancedSettings”,然后在每个模块后面选择使用的库总结:1、如果使用的MCU是小容量的,那么STM32CubeLL将是最佳选择;2、如果结合可移植性和优化,使用STM32CubeHAL并使用特定的优化实现替换一些调用,可保持最大的可移植性。另外HAL和L

  2. 智能客服 | 浅谈人工智能聊天机器人ChatGPT - 2

    2022年底,OpenAI的预训练模型ChatGPT给人工智能领域的爱好者和研究人员留下了深刻的印象和启发,他展现的惊人能力将人工智能的研究和应用热度推向高潮,网上也充斥着和ChatGPT的各种聊天,他可以作诗、写小说、写代码、讨论疫情问题等。下面就是一些他的神回复:人命关天的坑: 写歌,留给词作者的机会不多了。。。 回答人类怎么样面对人工智能: 什么是ChatGPT?借用网上的一段介绍,ChatGPT是由人工智能研究实验室OpenAI在2022年11月30日发布的全新聊天机器人模型,一款人工智能技术驱动的自然语言处理工具。它能够通过学习和理解人类的语言来进行对话,还能根据聊天的上下文进行互动

  3. 思科与华为设备OSPF配置命令对比 - 2

    思科与华为设备OSPF配置命令对比[Huawei]ospf1//启动OSPF进程,进入OSPF视图Cisco(config)#routerospf110[Huawei]ospf1router-id10.1.1.1//启动OSPF进程,进入OSPF视图,手动输入router-idCisco(config-router)#router-id1.1.1.1[Huawei-ospf-1]area0//创建并进入OSPF区域视图(骨干区域)[Huawei-ospf-1-area-0.0.0.0]network10.0.1.00.0.0.255//配置区域所包含的网段[Huawei-GigabitEthe

  4. Elasticsearch和MongoDB对比 - 2

    文章目录Elasticsearch和MongoDB对比关于ElasticsearchElasticsearch应用场景关于MongoDBMongoDB优点mongodb适用场景Elasticsearch和MongoDB对比Elasticsearch和MongoDB开源许可协议参考Elasticsearch和MongoDB对比关于Elasticsearch官网:https://www.elastic.co/cn/elasticsearch/Elasticistheleadingplatformforsearch-poweredsolutions.Weaccelerateresultsthatma

  5. javascript - PureComponent 与无状态功能组件的性能对比 - 2

    考虑以下React代码:classTodosextendsReact.Component{constructor(props){super(props);this.state={item:'Test',};}render(){return}}classTodoItemextendsReact.PureComponent{render(){return{this.props.item}}}functionTodoItem(props){return{props.item}}上面有一个有状态的父组件Todos和同一个子组件的两个版本TodoItem。其中一个版本是纯组件,另一个是无状态功能

  6. javascript - 如何通过 JavaScript 或 CSS 检查用户是否处于高对比度模式 - 2

    当按下Shift+Left+Alt+Print时,Windows切换到高对比度模式-是否有有机会在网页上检测到它(使用JavaScript或CSS)吗?是否有机会在HTTP-Request(也就是服务器端,例如通过PHP或Ruby)中检测到它? 最佳答案 根据thisarticleaboutusingCSSspritesinhighcontrast,在Windows上的高对比度模式下,背景图像应设置为“无”,并且它还会更改背景颜色。这应该覆盖任何CSS样式表。因此,您可以在初始渲染后执行一些javascript来检测它。查看他的de

  7. javascript - Array.push 与 Array.unshift 的性能对比 - 2

    我在阅读有关数组操作的运行时复杂性的文章时了解到...ECMAScript规范不要求特定的运行时复杂性,因此它取决于特定的实现/JavaScript引擎/运行时行为[1][2].Array.push()以常数和Array.unshift()以线性时间运行,用于稀疏由类似哈希表的数据结构实现的数组[3].现在我想知道push和unshift在densearrays上是否具有相同的常数和线性时间复杂度.Firefox/Spidermonkey中的实验结果证实:现在我的问题:是否有官方文档或引用资料证实观察到的Firefox/Spidermonkey和Chrome/Node/V8的运行时性能

  8. javascript - Date.getTime() 对比日期.now() - 2

    我注意到now()只能由Date对象调用。getTime()只能由日期实例调用。vardd1=newDate();//console.log(dd1.now());//Throwserror->TypeError:ObjectMonAug19201316:28:03GMT-0400(EasternDaylightTime)hasnomethod'now'console.log(dd1.getTime());console.log(Date.now());//console.log(Date.getTime());//Throwserror->TypeError:Objectfuncti

  9. JavaScript event.currentTarget 对比这个 - 2

    event.currentTarget和this有区别吗?性能怎么样? 最佳答案 currentTarget事件属性返回事件监听器触发事件​​的元素。这仅在捕获和冒泡期间特别有用。您也可以使用this关键字,但是当您使用Microsoft事件注册模型时,this关键字不引用HTML元素。请参阅以下链接了解更多信息:http://www.quirksmode.org/js/events_order.html微软模式的问题但是当您使用Microsoft事件注册模型时,this关键字不会引用HTML元素。结合Microsoft模型中缺少类

  10. 【数据可视化】三款主流开源数据可视化工具对比:Superset、DataEase、MetaBase - 2

    现在市场上开源BI产品比较多,各个产品的侧重点不同,有的以报表为主、有的以可视化为主、有的以查询分析为主。这里我们选取了一些主流的开源BI产品,从产品功能、可视化能力、数据源支持以及使用文档等方面进行对比,希望对你有帮助。由Airbnb贡献的轻量级BI产品,目前在GitHub上有3万多颗星,其受欢迎程度可见一斑。Superset提供了Dashboard和多维分析两大类功能,后者可以将制作的结果发布到Dashboard上也可以单独使用。在这里插入图片描述数据源方面,Superset支持CSV、MySQL、Oracle、Redshift、Drill、Hive、Impala、Elasticsearc

随机推荐