【干货】PAG 动效组件受邀参与职业峰会,揭露技能架构演进细节

PAG 动效组件受邀参与职业峰会,揭露技能架构演进细节

腾讯 PAG 动效组件自 2022 年 1 月 14 日在 Github 上开源以来,遭到了职业的广泛关注,事务接入数量也从开端的 40 个迅速扩大到超过 600+。其间不仅包含微信,手 Q,王者荣耀等腾讯系的头部事务,也包含小红书,知乎,B站,京东等许多外部的头部 App。随着事务接入方的继续增长,PAG 团队也有幸被约请到了参与 《GMTC 全球大前端技能大会》和《LiveVideoStack 音视频技能大会》,进举动效处理计划相关的技能同享。在这儿咱们也将之前做的技能同享专题收拾成了图文逐字稿,期望让更多的事务深化了解 PAG 计划背面的技能细节,促进更多动效相关的产品需求被高效地处理。

以下是详细的技能同享内容(文章较长,主张收藏阅读):

目录

●PAG 计划概述

○1)诞生布景

○2)运用场景

○3)同类计划比照

●PAG 架构演进

○1.0 – 高效文件格局

○2.0 – AE特性全支撑

○3.0 – 模板组装组合

○4.0 – 全新烘托引擎

●PAG 总结与展望

○1)计划价值

○2)开源成果

○3)未来展望

●PAG 相关资源

PAG 计划概述

1)诞生布景

动效内容在全职业的各个场景里都现已被广泛运用,由于能够明显提高用户交互的体会。但动效资料的出产流程却一向是个很大的职业痛点,首要由于在传统的作业流下,依托研制用代码复原动效的出产方法存在巨大的瓶颈。

PAG 动效组件受邀参与职业峰会,揭露技能架构演进细节

在传统的动效作业流中,一般是规划师先运用 AE 规划好动效,然后导出一个视频Demo,研制再来依据 Demo 拆解动效组成并经过代码复原。这套作业流首要有以下三大中心痛点:

研制本钱高:每个动效都需求研制经过代码来复原,独自排期的特效以及手工装备复原的进程,都需求许多的研制人力继续投入。由于研制人力有限,也导致这个流程无法批量化出产资料。

出产周期长:规划师和研制人员的联调本钱高,作用复原度需求反复承认。之前出产一个典型的视频模板,均匀需求研制投入5人天复原才能上线。这样很难跟上运营节奏,简略错过时势热门。

视觉动效弱:AE里有许多杂乱动效,运用纯代码复原起来十分困难,规划师只能不断简化作用以达到跟开发本钱的平衡。导致终究上线的视觉作用都是打折过的,往往达不到预期。

要完全处理这些中心痛点,咱们需求一套主动化的资料出产通路。所以腾讯从 2016 年就着手开端研制了一套 PAG 的动效处理计划:

PAG 动效组件受邀参与职业峰会,揭露技能架构演进细节

PAG 的方针是下降或消除动效相关的研制本钱,打通规划师创作到资料上线的主动化流程。整套作业流首要分为左面的 AE 导出插件和桌面预览东西部分,以及右边的SDK 部分。AE 导出插件能够一键将规划师制造好的动效导出成 PAG 文件,经过桌面预览东西的承认,再上线到终端由 PAG SDK烘托成动效内容。能够发现左面的部分实践上是不需求研制介入的,咱们将之前需求研制介入的作业都变成了主动化的东西。整套作业流完美处理了传统作业流的三个中心痛点:

研制本钱方面:在 PAG 的动效作业流里,研制只需一次性接入 SDK 的本钱,在后续整个资料出产流程都无需研制人力介入。整套作业流不在受制于研制的人力瓶颈,就能够开放给更多的规划师运用,批量化的进行资料出产。

出产周期方面:由于砍掉了研制本钱,最耗时的研制和规划的联调环节也不存在了。规划师能够所见即所得地出产资料,极大地缩短了出产周期,视频模板均匀出产耗时从一周能够下降到四个小时,能够快速呼应运营热门。

视觉动效方面:PAG 的 SDK 现已完全复原了AE整个动效的烘托体系,接入一次,规划师就能够充沛利用AE动效的原子才能,组合出无限的视觉动效,不必由于代码复原本钱的问题而打折扣。

或许前面的介绍还不够直观,这儿还有个模板资料上线的视频演示:

(插入演示视频)快速了解PAG运用流程

能够看到规划师在制造完模板后,只需求很简略的点击菜单里的导出选项即可得到一个 PAG 文件,不需求任何杂乱的装备进程。导出的文件双击就能直接播映,而且预览东西里还供给文本和占位图的修正才能,能够直接看到替换用户资料后的作用。在经过预览东西的承认之后,规划师就能够将 PAG 文件交付上线了。经过 PAG 的 SDK 能够一次性烘托到简直一切的干流渠道上。

2)运用场景

这是到现在为止 PAG 的 5 个典型运用场景:直播礼物,UI 动画,贴纸花字,视频模板,和游戏战报。从左到右对运行时修正性的要求也依次提高:

PAG 动效组件受邀参与职业峰会,揭露技能架构演进细节

现在微信视频号的直播就在采用 PAG 计划完结一切的礼物动效,也用在了之前西城男孩的线上演唱会里。UI 动画这儿演示的 Pick 按钮是一个 PAG 的可交互动效,支撑编程操控进展、文本内容。关键是整个动效文件体积十分小,仅 2 KB左右。中心的贴纸花字和视频模板信任咱们在短视频产品中都现已十分熟悉了。其间 PAG 的视频模板现在也大规模的运用在了广告视频的生成中。终究一个游戏战报场景,运用了 PAG 供给的图层组合才能,能够从多个PAG文件动态组合出一个自适应的模板,相当于活字印刷的功用。这块现在的现已在王者荣耀以及和平精英的高光时刻战报功用里得到了充沛的运用。

3)同类计划比照

职业里跟 PAG 相似的动效处理计划还有 Lottie 和 SVGA:

PAG 动效组件受邀参与职业峰会,揭露技能架构演进细节

这三个计划背面其实存在一个比较有意思的共同点:它们的作者都具有 Flash 相关的研制布景。Flash 是前史上把研制和规划师的作业流打通的最为完善的渠道,可是从 PC 年代过渡到移动端后,这儿就呈现了完全的断层。这三个计划其实都是在将原先繁荣的 Flash 作业流复刻到移动端上,一同在推进职业动效作业流的继续完善。除了诞生场景的不同,现在 PAG 比较其他计划在文件格局,烘托架构,AE特性支撑,运行时修正以及渠道支撑等各方面都更具有优势。

PAG 架构演进

信任经过前面几部分的解说,咱们对 PAG 计划处理的详细问题和运用场景应该现已有一个大致的了解。在接下来的内容中,咱们将带领咱们深化到这个计划的技能细节中,展现怎么从头打造一个 PAG 动效计划的全进程,以及其间涉及到的要点技能挑战。PAG 计划到现在为止现已迭代了 5 年多,共阅历 4 个大版别:

PAG 动效组件受邀参与职业峰会,揭露技能架构演进细节

1.0 – 高效文件格局

在 1.0 版别中,咱们从最底层开端完结了一套相似游戏引擎的烘托架构,能够无缝地跟视频烘托管线整合,并经过三级缓存等架构的规划满意了极高的实时性需求。但咱们花费最多的时刻的部分仍是在 PAG 文件格局的规划上,终究完结了相同动效内容,只需其他计划一半左右的巨细,而且解码还快 12 倍。那详细是怎么做到 PAG 文件巨细的极致紧缩呢?

PAG 动效组件受邀参与职业峰会,揭露技能架构演进细节

咱们首要采用了二进制的数据结构来存储动效内容。由于二进制数据结构能够十分便利的单文件集成任何资源,而且由于不需求像 JSON 相同处理字符串匹配问题,解码速度能够快几十倍。而在紧缩率方面,二进制数据结构能够越过 Key 的内容,只存储 Value,这样也能节省许多空间。别的咱们还引入了 TAG 数据块的结构,来处理二进制数据的向后兼容性问题。每个 PAG 文件都由无数个互相独立的 TAG 组成,扩展格局只需新增 TAG 即可。高版别 SDK 能够辨认低版别一切的 TAG,低版别 SDK 遇到无法辨认的 TAG 会越过读取,假如不是关键的信息也能够正常解码不影响烘托。

但做到这个程度其实也仅仅对齐了职业里通用序列化计划的上限,而在紧缩率方面咱们还有很大的空间,原理便是依据动效文件自身的特色完结跨过字节鸿沟的紧缩。详细有两大紧缩战略:

PAG 动效组件受邀参与职业峰会,揭露技能架构演进细节

等于默许值可无需存储:时刻轴特点是AE动效的最基本组成单元,但通常状况下规划师并不会修正一切的特点,大部分时刻轴特点都等于默许值。这儿能够用一个标志位就越过默许值的存储。例如一个Point类型的时刻轴特点,默许值最少需求8个字节存储。而咱们假如运用一个字节的标志位来越过默存储,单个特点就能够节省7个字节的空间。这是十分可观的。

尽量聚合相似数据类型:咱们在文件的每个特点组里,都会尽或许地把相似的数据重新排列,让他们聚合到一同。这样就能够绕开字节对齐的问题,运用比特位来紧凑存储。例如中心这一组的特点,经过重新排列后,符号位的区域可从 5 字节降到5比特。内容的区域还能够利用右边的接连数组编码紧缩,均匀削减一半以上的文件巨细。其原理首要是利用了表示屏幕坐标的数据值通常不会太大,在存储数组时咱们能够依照最大的那个数需求的比特位来存储一切数据即可。

经过以上的紧缩战略,咱们就能够把一个动效文件尽或许地紧缩到最小。这儿是一些 PAG 和 Lottie 的动效文件巨细的比照数据:

PAG 动效组件受邀参与职业峰会,揭露技能架构演进细节

两者都进行了 zip 紧缩之后再进行比照,能够看到相同的动效内容均匀 PAG 只需Lottie 文件的 56% 巨细。假如不进行 zip 紧缩,距离还会更大。

2.0 – AE 全特性支撑

咱们在 2.0 版别里要点引入了 BMP 预组成的处理计划,而且比较立异的完结了矢量和序列帧的混合导出才能,然后在保存修正性的前提下又完结了一切的 AE 特性的导出,从这个版别开端才真实意义上完全开释了规划师的出产力。

PAG 动效组件受邀参与职业峰会,揭露技能架构演进细节

矢量导出方法优势便是文件极小,而且能够运行时修正动效的内容。但这种方法注定无法支撑一切AE特性,由于有许多的AE作用在有桌面显卡的状况下,都要走一个进展条才能预览,在移动端是没有或许做到实时烘托的。这也导致在实践的出产进程中,规划师有许多的杂乱动效,都无法用矢量形式导出出来,这样会极大约束规划师的构思发挥。而传统的序列帧导出方法,运行时又无法修正,文件也相对较大。PAG计划在这儿的立异点便是将两者的进行了完美整合,支撑矢量和序列帧的混合导出。规划师能够主动标记哪些图层运用序列帧导出,例如不需求修正而且有杂乱的动效,而需求修正的图层继续用简略的矢量方法导出。然后完结支撑一切的AE特性又能坚持运行时的修正性。

PAG 动效组件受邀参与职业峰会,揭露技能架构演进细节

在完结混合导出后,剩下的挑战便是怎么尽或许紧缩序列帧的巨细。咱们在PAG内部规划了视频序列帧的格局,充沛利用了视频的极限帧间紧缩才能。别的视频的格局还能够在运行时利用硬件加快解码,然后获得更高的烘托功能。但它也有一个明显缺点,便是不支撑透明通道。咱们会在导出时,会将一张 RGBA 的截图扩展成两倍巨细的不透明图片,左面放置 RGB 的内容,右边放置表示 Alpha 的灰度图。终究烘托时再兼并回 RGBA 的图片,然后完结透明通道的支撑。而在烘托的进程中,咱们没有像常规做法相同先转换 YUV 到 RGB,再叠加 Alpha 通道的兼并,而是直接完结了各种 YUV 硬解格局的一次性上屏,利用自定义 Shader 脚本,在一次制作中一起完结 YUV 到 RGB的转换以及与Alpha通道的兼并,让视频序列帧也完结了接近一般图片相同的制作功能。

PAG 动效组件受邀参与职业峰会,揭露技能架构演进细节

在处理了视频帧的导出和烘托后,咱们还要考虑上层的数据封装格局。PAG并没有运用标准的MP4容器作为视频帧的封装,而是规划了一个简化的数据结构。首要仍是出于功能优化的原因。第一个方面是由于动效播映是存在随机性的,咱们需求一次性拿到一切的关键帧列表,才能够做到准确的判断是否需求重置解码器,但要从标准的 MP4 容器里获取关键帧列表,耗时会十分高。别的一方面,视频序列帧本质上仍是代表了一个动效,因而也存在静态区间的概念。大部分的动效资料,实践上并不是整个时刻轴都在变化的,或多或少会存在一些画面静止的区间。尽管这些静态区间数据不影响文件巨细,但传给硬件解码器都会形成固定的解码器等待。因而咱们在导出时会利用自定义数据结构记载额定的静态区间信息。这样在烘托时,就能够直接越过不必要的解码器等待。例如右边这个俄罗斯方块的视频模板,每个方块尽管都是一个静态图层,可是运用了矢量不支撑的作用,因而就会导出一个全时长都是静态的视频序列帧,这种状况也是比较常见的。而经过刚刚的优化,直接能够提高99%的功能。

PAG 动效组件受邀参与职业峰会,揭露技能架构演进细节

终究能够看一下各种序列帧计划文件巨细的比照。比较传统的图片序列帧,视频序列帧能够轻松紧缩到百分之一点几的巨细。

3.0 – 模板组装组合

运行时修正性在 PAG 里一向是项十分重要的才能,是让规划师的资料构思跟用户的个性化元素能够快速交融的关键。咱们在 PAG 的前两个版别的迭代进程中,现已别离完结了文本修正以及占位图的修正才能,让事务能够轻松完结贴纸花字以及视频模板等功用。再到 3.0 版别的时,咱们又引入了图层烘托树的修正架构,让资料的最小操控单元由文件变成了图层。不仅很好满意了一键出片和游戏战报相关场景下模板动态组装的需求,也让运行时修正的灵敏性提高到了一个新的高度。

PAG 动效组件受邀参与职业峰会,揭露技能架构演进细节

在PAG 1.0版别时,咱们的首要需求是在视频上叠加各种带动画的贴纸花字,因而需求文本的运行时修正才能。幻想一个滚字的动画从屏幕旁边一路滚过来,咱们在PAG里供给了接口能够修正文本内容,字体,色彩,字号等十几项特点,并保存规划师预设的动画作用。基本原理便是运行时对占位的文本内容进行修正,但保存一切预设的动画特点再进行烘托。到PAG 2.0时,咱们相同基于方法这个又引入了占位图的概念来处理视频模板的需求。中心原理便是运行时将视频逐帧替换到指定的占位图上,由PAG文件来操控视频的画面的动效和层级关系,输出完好的内容。规划师在制造视频模板时,只需添加一个占位图并当成视频处理就行,对它运用的任何改换和特效终究都会作用到替换后的视频上。一个 PAG 文件便是一个完好的模板,能够包含一个或多个占位图。咱们能够运用单个占位图来完结简略添加作用的视频模板,也能够用两个占位图完结视频片段切换的转场特效,或许多个占位图来完结画面仿制的多格视频。这样能够把模板的构思出产完全交给规划师发挥,终究让相片或视频模板等运用场景进入了工业化批量出产的年代。

PAG 动效组件受邀参与职业峰会,揭露技能架构演进细节

而到 3.0 版别时,咱们的修正需求进入了智能模板的阶段。会依据用户传的视频内容,主动生成一个自适应的模板。3.0的智能模板存在无限种或许性,规划师无法靠穷举每种或许性去出产资料。最佳方法是出产一个个小的PAG作用组件,然后进行组装组合。所以咱们在 3.0 里引入了图层烘托树的修正架构,把资料的最小操控单元由文件下沉到了图层级别。一个文件便是一棵图层烘托树,内部每个图层都能够自由增删改。而且文件自身也是一个图层,因而能够把多个文件添加到一个空的 PAGComposition 里组合播映,而且经过 setMatrix 对文件的空间相对方位进行任意修正。而在时刻轴的组合上。PAGFile 添加了时刻伸缩的才能,供给循环,变速,定格等多种自适应形式,能够灵敏适配用户的视频时长。每个图层又供给了起始时刻的调整才能,能够自由组合每个图层在时刻轴上的相对方位。经过这些改造,新的接口不仅很好地满意了相似王者战报这样的需求场景,也为海量资料播映供给了新的优化或许,不再需求给每个动效创立独立的上下文,而是能够组合在一同同享同一个上下文烘托,完结功能的大幅提高。

PAG 动效组件受邀参与职业峰会,揭露技能架构演进细节

3.0 版别引入的图层烘托树架构,的确让运行时修正的灵敏度提高了一个量级,但也对缓存体系以及线程安全提出了新的挑战。由于 PAG 文件解码后的目标在 3.0 之前是答应复用的,假定你要画50个相同的星星动画到画布上,只需求解码一次而且只占一份文件内存。现在假如图层修正是直接修正到实在的文件目标自身,要么是放弃文件复用,每次都完好复制一份许多根底数据,要么就需求对文件全体进行加锁,又无完结跨线程的并发烘托。所以咱们又在 3.0 版别里做了一个图层套壳的规划,将之前的 PAG 文件目标拆成了表里两个部分:外壳的 PAGFile 目标十分轻量,只记载用户或许修正的特点,而且一棵烘托树上会同享同一个线程锁来确保读写安全。而内部的 File 目标才存储实践占内存的那些根底数据,而且被规划为完全只读的,这样也就无需加锁。这样多个外壳 PAGFile 能够一起引证同一个内部 File 目标,既保障了修正的独立性,也天然支撑多线程并发拜访。终究在保存文件复用机制的前提下,顺利引入了十分灵敏的图层烘托树修正架构。

4.0 – 全新烘托引擎

在功能和包体方面,到 4.0 版别时咱们在上层能做的作业现已差不多到极限了,要继续打破只能深化到烘托引擎底层替换掉 Skia。因而咱们花了将近一年半的时刻从头完结了一套全新的纯 GPU 绘图引擎 TGFX,终究将 PAG 包体直线下降了 65% 左右,并将 PAG 的完好才能扩展到了 Web 端。

PAG 动效组件受邀参与职业峰会,揭露技能架构演进细节

首要看一下为什么不继续运用 Skia?现在谷歌开源的 Skia 2D 绘图库是职业里事实标准,多年来简直没有任何实质性的可代替计划呈现,Chrome,Firefox,Flutter,Adobe 系列软件,甚至 Android 体系都在基于 Skia 做文本和矢量的制作。但 Skia 自身是一个维护了近 20 年的计划,也存在许多的前史包袱,很难满意 PAG 对包体和功能的进一步优化需求。在包体方面,咱们尽管现已针对 Skia 做了十分多的定制和裁剪,可是它依然占据了 PAG 3.0 版别 80% 左右的包体,也无法再进一步进行裁剪。而在功能方面,由于 Skia 需求兼容前史留传的 CPU 制作形式,在 API 上暴露会比较保存,许多针对现代 GPU 制作管线能够进一步优化的接口都没暴露出来。为了完全打破包体和功能的约束,咱们花了将近一年半的时刻自研完结了一套轻量的纯 GPU 绘图引擎 TGFX,完结了对 Skia 的替换。下面看一下 TGFX 详细做了哪些优化:

PAG 动效组件受邀参与职业峰会,揭露技能架构演进细节

在包体方面,咱们终究以 400K 左右的巨细覆盖了 Skia 近 2M 包体的绝大部分功用。中心优化战略首要有两点:

完全扔掉传统的 CPU 烘托管线:由于现代的硬件现已简直不存在没有 GPU 的设备了,即使像服务器端这种特殊的场景,经过 Swiftshader 来模拟 GPU 得到的功能也会让你很意外。但 Skia 由于前史原因一向一起包含了 CPU 和 GPU 的两条烘托管线,而且由于它的 GPU 烘托管线重度依托 CPU 的部分,导致无法独自运用它的 GPU 烘托管线。咱们在 TGFX 中完全处理了这个耦合的问题,打造出了一个纯 GPU 的绘图引擎,这儿就节省了大概一半的包体。

最大化的利用渠道端内置的一切才能:例如图片解码,字体解析,矢量栅格化等等,这些都会优先运用体系原生的接口代替内置第三方库的战略。以文本和矢量的栅格化为例,在 iOS 上咱们直接运用了体系供给的 CoreGraphics,文本方面则利用起 CoreText 等。而在其他渠道才嵌入了 Freetype。尽管添加了不同渠道适配的作业量,可是包体的确也获得了极致的优化。

PAG 动效组件受邀参与职业峰会,揭露技能架构演进细节

在易用性方面,TGFX 也做了不少改进,尤其是这个 Skia 没有的 Device & Window 体系。Skia 尽管供给了 GPU 的烘托管线,但要用起来门槛仍是比较高的。首要存在两个问题:

第一点是 Skia 只完结了跨渠道烘托的部分,一切跟渠道相关的视图桥接以及上下文的初始化都需求用户自己处理。这会导致用户正常用起来 Skia 的 GPU 形式需求对每个渠道写许多的适配代码。除了作业量大外这部分仍是兼容性的重灾区,要处理许多相似 iOS 中退到后台执行 OpenGL 的特殊状况。

第二点是 Skia 并不帮你确保线程安全或许上下文状态的切换,默许都由调用方自己处理。但绝大部分刚刚触摸 Skia 的用户并不清楚这儿的坑点,Skia 也没有显式阐明过,按一般的方法接入运用,很简略就形成许多的显存走漏以及难以排查的随机 Crash。

但 TGFX 供给了完善的 Device & Window 体系,能够帮你把这些问题一次性都完全处理,只需依照一致的形式进行调用,一切渠道相关的杂乱度都能够不必关怀,而且从 API 上约束了你有必要以线程安全的方法进行调用。即使没有十分资深的 GPU 烘托经验也能够很简略上手运用。

PAG 动效组件受邀参与职业峰会,揭露技能架构演进细节

在功能和架构方面,还做了这些额定的优化:

●咱们默许敞开了 HardwareBuffer 的支撑,来全面加快纹路的提交。这儿要点是利用了运行时反射的机制完全处理了设备兼容的问题,只需设备和体系存在这块才能咱们就会主动敞开。

●在线程安全以及并发烘托才能方面,除了前面提到的 Device&Windows 体系,TGFX 还完全改进了 Skia 的 GPU 目标办理模型,一切的 GPU 目标都能够在任意线程开释,等关联的上下文激活时才真实整理,避免了在 Skia 中经常呈现的随机 Crash 和走漏问题。

●咱们在 TGFX 的接口规划上约束了图片解码完会尽或许只缓存 GPU 的纹路部分,这样理论上大局能够直接下降一半的内存占用,避免像 Skia 里相同图片总是重复占用双份内存,由于要兼容CPU制作管线的读取。

●TGFX 在全渠道都完结了默许字体的读取才能,包含读取浏览器的默许字体库。处理了 Skia 的 Web 版别在这块的缺点,不然烘托中文都要下载上百 M 的字体包的问题,在 Web 上简直没有可用性。

以上这些还仅仅 TGFX 做的优化的一部分,更多的细节欢迎咱们到 Github(github.com/Tencent/lib…) 源代码中参考研讨。

PAG 动效组件受邀参与职业峰会,揭露技能架构演进细节

终究来看一下成果,在咱们把 Skia 完全替换为 TGFX 绘图引擎后,PAG 4.0版别的包体全体均匀都下降了65%左右,而且矢量烘托功能均匀还提高了 60% 左右。全体的优化十分明显。后续咱们也正在推进 TGFX 作为一个独立库房开源。咱们会继续完善并把它打造为一个通用的 2D 绘图引擎,为职业供给 Skia 之外的另一个轻量化的选择。

PAG 总结与展望

1)计划价值

PAG 动效组件受邀参与职业峰会,揭露技能架构演进细节

PAG计划诞生在最杂乱的视频修正下,也能够很好的满意其他各种场景下的动效需求。它提的供所见即所得的桌面东西和AE插件,能够一键将规划师的构思导出成PAG文件,并经过SDK快速烘托到简直一切的干流渠道上。

整套作业流给事务带来了三方面的中心价值:

去研制本钱:资料出产环节无需研制介入,节省许多研制人力和调试返工本钱。研制只需求接入一次SDK的本钱,后续规划师能够独立完结资料的出产上线,也避免了最耗时的研制和规划的联调环节,终究将资料出产相关的研制本钱大幅下降。

工业化出产:由于不再遭到研制人力瓶颈的约束,资料出产能够扩大到更多的规划师进行批量化出产。再加上桌面效率东西在作用预览和功能检测上的易用性,规划师能够所见即所得地出产资料,终究让视频模板均匀出产耗时从一周下降到四个小时,完结快速呼应运营热门。

无限AE动效:PAG的SDK现已完全复原了AE的整个动效烘托体系,并支撑矢量和序列帧混合导出,接入一次,规划师就能够复用PAG经过5年积累的AE动效原子才能,组合出无限的视觉动效,不必由于代码复原本钱的问题而对作用打折扣。

2)开源成果

PAG 动效组件受邀参与职业峰会,揭露技能架构演进细节

PAG 已于2022年 1 月 14 日正式开源至 Github,到现在已获得 2500+ star数,官网累计上线 46 篇文档教程,团队日常对接 2400+ 继续增长的规划师和研制用户群,SDK 也已接入服务了腾讯表里 600+ 产品事务,包含微信,手机 QQ,王者荣耀,等腾讯系头部 App,也有许多的外部产品,比方小红书,B站,京东,知乎等,稳定性经过了海量用户的继续验证。

3)未来展望

PAG 动效组件受邀参与职业峰会,揭露技能架构演进细节

过去一年多,PAG 团队的首要精力都投入到了 PAG 4.0 全新烘托引擎的晋级完善上,目的也是为了后续整个 PAG 计划能有更高的天花板。接下来咱们的重心会首要聚集在以下四个方向上:

●补全 AE 特性:前面尽管咱们依托BMP预组成才能现已能导出一切AE特效,但用那个方法导出无法运行时修正,所以咱们围绕可修正的图层仍是需求继续补全 AE 特性支撑。

●完善东西链:要点会推出图层级别的功能剖析东西,帮助规划师快速定位资料的功能热门,高效完结功能调优,以及供给移动端的真机功能剖析 App。

●更多烘托后端: 继续迭代完善 TGFX,添加更多烘托后端,适配Metal和 Vulkan等硬件图形接口,最大化发挥现代 GPU 硬件的烘托功能。

●可交互才能:现在市面上几个同类型的处理计划,包含 PAG 在内都还处在 Flash 当时的第一个发展阶段,也便是简略的动效内容复原,接下来在 PAG 5.0 版别里,咱们将会把 PAG 推进到第二个发展阶段,也便是集成可交互图形的才能。这样能够进一步简化事务场景中依然需求编码完结的许多动态化需求。

现场回顾

由于动效相关的运用场景十分广泛,跟各个事务的产品需求都有较高关联度,PAG 的技能专题同享也得到了观众的认可。无论是讲演现场仍是会场展台,来沟通讨论的相关同学都一度爆满:

PAG 动效组件受邀参与职业峰会,揭露技能架构演进细节

一起,在讲演后的 QA 环节观众也十分活跃的参与了互动发问,除了讨论了许多 PAG 背面的技能完结原理细节,也深化沟通了在各种详细事务场景下与 PAG 结合的运用方法以及最佳实践:

PAG 动效组件受邀参与职业峰会,揭露技能架构演进细节

终究,期望 PAG 本次的技能同享内容能给咱们日常的事务带来必定的帮助。往后 PAG 团队也会继续在动效领域打磨技能计划,为职业的动效作业流不断添加更多高效的新才能。

欢迎咱们经过以下方法进一步了解 PAG动效组件:

官网(下载及教程):pag.art/

QQ群(用户沟通):893379574

官方论坛(问题处理&官方互动):bbs.pag.art/

Github(源码研讨&开源共建):github.com/Tencent/lib…