sponsored links

騰訊研發出新招,從此動畫製作就用PAG

2020年開始,突如其來的疫情讓線上生活形式飛速發展,短影片平臺成了廣大網民休閒娛樂、學習技能、分享生活的重要途徑。

根據CNNIC釋出第48次《中國網際網路絡發展狀況統計報告》顯示,截至 2021 年 6 月,我國網路影片使用者規模達 9.44 億,其中短影片使用者規模為 8.88 億,佔網民整體的 87.8%,人均單日使用時長為 125 分鐘。

騰訊研發出新招,從此動畫製作就用PAG

在日益壯大的短影片使用者基數下,短影片平臺為了吸引更多流量,動畫設計師和開發需要不斷高效各類創意的特效,以滿足使用者多元的內容需求。

動畫是影響使用者互動很重要的一環,現在各平臺實現動畫很少會採用原生程式碼實現,那樣開發成本太高,週期太長。目前業界常用的動畫工作流解決方案有Lottie和SVGA,都可以將Adobe After Effects(簡稱AE)製作的動畫匯出成一個檔案,在終端APP中載入渲染使用,在一定程度上提升了動畫開發上線的效率。

基於以上背景,再給大家推薦一款騰訊研發的優秀動畫製作元件:開源動畫渲染庫PAG。

l 一、什麼是PAG

官方定義:PAG(Portable Animated Graphics) 是一套完整的動畫工作流。提供從AE匯出外掛,到桌面預覽工具PAGViewer,再到各端的跨平臺渲染 SDK。

下圖為PAG工作流示意,流程類似Lottie,設計師使用AE設計好動畫以後,透過PAGExporter外掛讀取AE工程檔案,根據具體需求選擇向量匯出、BMP預合成、混合匯出方式中的一種匯出一個PAG二進位制檔案,客戶端對該PAG二進位制檔案進行解碼、渲染,各端共享一套C++實現,平臺端只做介面封裝。

騰訊研發出新招,從此動畫製作就用PAG

l 二、PAG的優勢

對比市面上動畫元件SVGA和Lottie,PAG具有以下幾個特性:

l 動畫檔案小,解碼速度快

l 可實現所有的AE效果

l 配套工具完善,支援實時預覽效果

l 執行時可保留動畫效果並實時編輯文字或內容

1、動畫檔案小,解碼速度快

PAG 方案從設計之初就把檔案格式擺在了最重要的位置,目標是打造成為 AE 動畫內容的標準承載格式。

相比 Lottie 方案採用的 JSON 資料結構,PAG 借鑑了經歷數十年行業考驗的 SWF 開原始檔格式,採用了更加嚴謹的二進位制資料結構。天然的具有壓縮率更高, 解碼速度更快,以及可單檔案交付(不外掛圖片)的優勢。

另外在檔案大小上,PAG 透過利用動畫檔案本身的特點,獲得了極高的壓縮率。透過跳過大量預設值的儲存,使用位元位來緊湊儲存,相同動畫內容可以比同類型方案平均減少50%左右的檔案大小。在效能方面,PAG 的實時渲染效能平均可以達到 Lottie 的 1.5 到 2.5 倍左右。

騰訊研發出新招,從此動畫製作就用PAG

2、全AE特性支援

Lottie 僅支援向量的匯出方式,但向量方式主動只能實現 AE 特性的一個較小子集。PAG

不僅在向量匯出方式上支援更多的 AE 特性,還引入了影片序列幀結合向量的混合匯出能

,實現支援所有 AE 特性的同時,又能保持動畫執行時的可編輯性

3、配套工具完善,支援實時預覽效果

不同於Lottie、SVGA,PAG關於動畫的渲染繪製是在C++層實現的,透過自研的2D圖形渲染庫,不依賴平臺端渲染介面,可以實現各平臺的渲染一致性

桌面預覽工具PAGViewer確保了渲染結果跟移動端完全一致,這樣設計師可以直觀地看到移動端的展示效果,而不需要上線來回確認。同時提供效能檢測面板,幫助開發工程師根據素材量化的效能指標進行最佳化。

騰訊研發出新招,從此動畫製作就用PAG

l 三、PAG的技術能力詳解

接著介紹下PAG優勢對應的技術解決方案:

1、 BMP預合成

為了實現AE特性的全面支援,PAG採用了 AE的SDK 截圖檔案匯出的形式,這樣可以匯出任意AE效果,但也有兩個顯著缺點:1、匯出檔案過大;2、圖片不可編輯

Ø 檔案大問題解決方案

針對截圖後文件過大的問題,PAG元件透過擴充套件影片格式,將原圖片序列幀壓縮到近百分之一的大小,再透過支援透明通道,如下圖所示,左邊為RGAB的影片內容,右邊為Alpha通道的灰度圖,最終渲染的時候再合併回RGBA的圖片,從而實現對透明通道的支援。渲染的過程中,由於啟用了硬體加速解碼,可以直接得到一個YUV的紋理。而且為了避免紋理在CPU和GPU之間來回複製,自定義了Shader指令碼,利用硬體加速在一次繪製過程中,同時完成YUV轉換和Alpha通道合併。平均提高了10%的渲染效能。

騰訊研發出新招,從此動畫製作就用PAG

Ø 圖片編輯問題解決方案

針對BMP預合成無法編輯的特點,PAG將BMP預合成支援的粒度由檔案延伸到合成,支援向量和BMP預合成混合匯出,從而實現了支援所有的AE特性又能保持執行時的可編輯性。

2、 圖層編輯

在智慧模板時代,如一鍵出片、王者戰報,模板不再是單個PAG檔案,而是由多個PAG檔案隨機組合而成,根據業務需求去控制組合的規則。由此PAG引入了圖層渲染數的編輯架構,不僅支援文字和佔位圖比編輯,還支援圖層級別的編輯。

如下圖,一個檔案就是一棵渲染樹,支援圖層級別的任意修改位置甚至增刪圖層,也支援將其他PAG檔案新增到這棵渲染樹中作為子樹。在時間軸的組合上,PAG具有時間伸縮的能力,包含迴圈,變速,定格等多種自適應模式。每個圖層又提供了起始時間的調整能力,能夠自由設定在時間軸上的相對位置。

騰訊研發出新招,從此動畫製作就用PAG

3、 整體影片渲染

Lottie的動畫方案之所以無法應用在影片合成中,主要是因為依賴了平臺相關的UI框架,開發成本低,,但也導致了它只能渲染到UI檢視上,並且無法在子執行緒中使用。

騰訊研發出新招,從此動畫製作就用PAG

為了支援離屏渲染繪製、子執行緒渲染,PAG直接基於C++跨平臺架構研發,一直從最底層的動畫插值器,還原到上層的時間軸和圖層渲染樹系統,雖然開發成本較高,但是所有端共享同一套程式碼,天然的能保障跨端渲染一致性。最重要的是能直接渲染到離屏紋理上,並完美支援子執行緒動畫渲染。

4、 服務端渲染

前面提到,PAG的渲染是基於C++層實現,平臺側僅提供渲染環境和介面的封裝。在實際使用中,出於成本的考慮,大部分的伺服器仍然是CPU的伺服器,GPU的伺服器大多應用於AI計算等場景。

AE中的部分特效如高斯模糊、邊角定位等都是透過OpenGL實現的,使用skia的CPU渲染模式無法渲染;除了Linux端,其它平臺都可以很好的使用GPU渲染進行加速,如果服務端採用CPU渲染模式,在程式碼層面需要做一系列的相容處理。為了能兼顧渲染效能和使用成本,PAG透過CPU模擬GPU的方式來提供OpenGL渲染環境,並且透過主流Mesa和Swiftshader兩種方案的效能對比,採用了Swiftshader的渲染方案。


檔名


總幀數


CPU渲染


Mesa


swiftshader


單幀平均耗時(us)


單幀平均耗時(us)


Mesa/CPU


單幀平均耗時(us)


swiftshader/CPU


replacement.pag


60


2585


27630


10.689


13702


5.301


particle_video.pag


240


9867


47833


4.848


17622


1.786


template.pag


298


50432


300672


5.962


64142


1.272


shanzi_video.pag


399


63150


388089


6.146


78097


1.237


audio_pre.pag


500


30296


489803


16.167


37075


1.224

GPU渲染方面,外部只需要提供EGL環境,就可以完成GPU渲染。

l 四、總結

PAG提供了一套簡化並完善的動畫工作流,在縮小檔案體積的情況下,仍然支援所有 AE 特性,並保留了動畫執行可編輯的靈活性。僅需接入一次,設計師就可以快速上手使用所有高效元件,不再因研發成本削弱呈現效果。

目前,PAG方案已經廣泛應用於騰訊公司內外幾十款產品中,涵蓋了眾多的國民級應用,如微信、QQ、騰訊影片、QQ音樂、王者榮耀、QQ空間等。

騰訊研發出新招,從此動畫製作就用PAG

並且騰訊PAG在1月14日正式開源,現在可以介入SDK使用,設計師和開發小哥哥們可以妥妥的用起來了!

在官網就可以下載體驗,附上官網連結:https://pag.io

附錄——簡要使用介紹

l 如何安裝PAG :

目前PAG支援mac(macOS 10.9以上)和windows作業系統,安裝和使用都很簡單,以mac系統為例,首先需要安裝PAGViewer,選擇圖形化安裝即可;然後開啟 PAGViewer,PAGViewer 將自動檢測是否需要安裝/更新 AE 匯出外掛,按提示安裝即可。也可檢視使用連結:https://pag.io/docs/install.html

騰訊研發出新招,從此動畫製作就用PAG

接著就可以安裝AE匯出外掛

騰訊研發出新招,從此動畫製作就用PAG

l 如何匯出PAG檔案?

a.匯出全向量預合成的PAG檔案

點選選中需要匯出的合成(Composition),然後點選選單“檔案” -> “匯出” -> “PAG File...”,選擇要儲存的路徑即可匯出。匯出成功後雙擊匯出的PAG檔案可以直接預覽動畫。

騰訊研發出新招,從此動畫製作就用PAG

b.匯出全BMP預合成的PAG檔案

將需要匯出的合成(Compostion)修改為字尾為"_bmp"或"_BMP"的名字,標記總合成為「BMP預合成」,其他操作同上向量匯出模式。(注:BMP預合成字尾可以更改,詳見《外掛選項配置面板)》

c.匯出向量和BMP預合成混合的PAG檔案

可將總合成(Composition)命名為不帶"_bmp"或"_BMP"字尾的名字,它所引用的部分子合成命名為帶"_bmp"或"_BMP"字尾的名字,然後按正常流程匯出PAG檔案即可。

總體來說,PAG的安裝和操作都十分簡單,無論是設計師和開發工程師都能快速上手。

分類: 旅遊
時間: 2022-01-09

相關文章

NINE WEST 玖熙丨玖熙相伴 盡享至美自在時光

NINE WEST 玖熙丨玖熙相伴 盡享至美自在時光
初秋時節,微風徐來,空氣裡盡是慵懶幸福的味道.迎著陽光,開啟元氣滿滿的一天,你需要的是一杯咖啡.一個燦爛的微笑.一聲溫情的問候--愛美的玖熙女孩,此刻只需穿上專屬於你的NineWest,至美自在時光便 ...

尋找九仙湯(2021/06/04)

尋找九仙湯(2021/06/04)
離開了奢靡的海昏侯,我們也要去享受享受了. 上次來江西去了宜春袁州區的溫湯鎮.曾體驗過幾個溫泉,獨獨喜歡溫湯,雖然成片瓦新的樓,難見過往痕跡,但從黎明到黃昏到夜晚,那個十來平的溫泉池子始終積聚著煙火氣 ...

成年後再看《千與千尋》中那些隱藏的故事線,或許才能真正讀懂它

成年後再看《千與千尋》中那些隱藏的故事線,或許才能真正讀懂它
如果說有一部電影適合所有年齡段觀看,那必然首推的是宮崎駿大師的經典之作--<千與千尋>! 最初宮崎駿大師想要面向的群體只是十幾歲的兒童,因此將主人公設定成了一個只有十歲的小姑娘,誤入奇幻世 ...

1966年,毛主席在一神秘山洞居住12天,臨走時表示:我還會回來的

1966年,毛主席在一神秘山洞居住12天,臨走時表示:我還會回來的
前言 神秘幽靜的避暑勝地,毛主席卻將它稱之為"西方的一個山洞". 圖丨毛主席心中的聖地--滴水洞 1966年6月,毛主席就在他口中的"山洞"裡,居住了整整12天 ...

湖州大姐借錢開荒,靠養魚年收入7000萬,帶領周邊漁民共同致富

湖州大姐借錢開荒,靠養魚年收入7000萬,帶領周邊漁民共同致富
她不顧家人反對投入千萬,最終耗資2.3億元,築夢魚莊三十餘載,實現銷售突破一千萬元,帶領500個農民創業致富. 講述三農致富能手創富故事,挖掘草根人物致富經驗.本期子牙童趣三農致富能手就為大家講述&q ...

天水山水間 開啟清涼避暑之旅

天水山水間 開啟清涼避暑之旅
原標題:天水山水間 開啟清涼避暑之旅 麥積山石窟 本版圖片由天水文旅局供圖 仙人崖 小隴山植物園山莊 <天水千古秀>劇照 麥積山溫泉 在甘肅,有這樣一座城市,地處秦嶺西段,黃河最大的支流渭 ...

國慶長假 百車河溫泉備受遊客青睞
國慶長假期間,百車河漢宮溫泉以其日趨完善的基礎設施和細緻貼心的優質服務,吸引了大批遊客前來休閒度假. 10月2日,筆者在百車河漢宮溫泉的停車場,看到自駕車輛的停車位已基本停滿,遊客們佩戴口罩,保持安全 ...

美麗鄉村記者行 榆中“老家”風景美“浪街”鄉韻引客來

美麗鄉村記者行 榆中“老家”風景美“浪街”鄉韻引客來
浪街村大力發展鄉村旅遊產業,帶動村民走上致富路. 浪街村位於榆中縣城南,南望徐家峽和唐家峽.龕谷峽三個自然風景區,全村耕地面積約4320畝,共9個村民小組498戶人,距蘭州市區40公里,這裡生態優美, ...

散文 | 楊絳:憶傅雷

散文 | 楊絳:憶傅雷
憶傅雷 文丨楊絳 抗戰末期.勝利前夕,錢鍾書和我在宋淇先生家初次會見傅雷和朱梅馥夫婦.我們和傅雷家住得很近,晚飯後經常到他家去夜談.那時候知識分子在淪陷的上海,日子不好過,真不知"長夜漫漫何 ...

理想中的複式公寓,看完我也想來一套

理想中的複式公寓,看完我也想來一套
ABOUT THE CASE 案例簡介 設計工作室:CJH Studio 設計風格:現代簡約 地點:澳大利亞 面積:132㎡ 本期分享的是來自澳大利亞設計工作室CJH Studio的住宅作品PENTH ...

金輝·優步花園|品味秋天的洋房,嚮往閒適的生活

金輝·優步花園|品味秋天的洋房,嚮往閒適的生活
雲淡風輕,是屬於秋天的詞語 一入秋,園裡的萬物都是素雅的 連空氣都變得更加透明 有落葉稀稀疏疏地偶爾飄落下來 慵懶地靠在庭院的某個角落 這是屬於落葉的季節 也是屬於院子的季節 |效果圖 秋馨淡雅 若是 ...

樓梯擋光又礙事?頂層複式上演“換位大法”,誰看了不說一句贊

樓梯擋光又礙事?頂層複式上演“換位大法”,誰看了不說一句贊
樓梯大挪移,一招解決採光問題 拆掉門廳一堵牆,視野通透10倍 樓梯間改衣帽間,擁有頂配套房 書房隱藏側翻床,三合一多功能 130平頂層複式上演"換位大法" 屋主 · 需求 屋主希望 ...

橙黃橘綠時,與您共相約

橙黃橘綠時,與您共相約
擁抱自然 享美好時光 NO.01 暢遊北植 一個風清氣朗的好天氣為我們的國慶假期畫上圓滿句號.節日期間,北京植物園為市民遊客帶來了一場視覺盛宴,秋花秋草五彩斑斕,菊花月季競相綻放,繪就出一幅秋日百花圖 ...

好住丨石景山古城中海首鋼天璽轉角大飄窗縱享陽光

好住丨石景山古城中海首鋼天璽轉角大飄窗縱享陽光
近日,樂居樓盤測評師走進中海首鋼天璽,為您帶來專案的全面測評.本期<好住>聚焦中海首鋼天璽.中海首鋼天璽位於石景山古城,對望京西奧森公園,打造122㎡-147㎡改善社群,總價約900萬/套 ...

魚鳧溼地公園丨30間泡泡屋,我捨不得私藏

魚鳧溼地公園丨30間泡泡屋,我捨不得私藏
這片美麗的避暑遊玩勝地,我一定要推薦給你. 春天,這裡是深藏在深山的"小仙本那": 夏天,這裡是自帶空調的"避暑天堂": 秋天,這裡有著浪漫加分的"絕 ...

奧運明星在全運丨湯慕涵很遺憾一直沒能“回家”全運會上要“努力出成績”

奧運明星在全運丨湯慕涵很遺憾一直沒能“回家”全運會上要“努力出成績”
9月18日,在陝西奧體中心遊泳館,來自全國各地的游泳運動員正在這裡進行賽前訓練,明天(9月19日)十四運會金牌大項游泳的比賽將在這裡打響.在賽前訓練中,中國吉林網記者見到了"咱家鄉人&quo ...

好住丨大興亦莊河西區高品質住宅 三面寬全明洋房縱享陽光

好住丨大興亦莊河西區高品質住宅 三面寬全明洋房縱享陽光
近日,樂居樓盤測評師走進京華雅郡,為您帶來專案的全面測評.本期<好住>聚焦京華雅郡,京華雅郡位於亦莊河西核心板塊,主打80-134㎡三面寬全明洋房,均價5.4萬元/平米.專案產品面積段覆蓋 ...

稻頌農業丨鮮美好喝的減脂湯!裙帶菜豆腐雞蛋湯

稻頌農業丨鮮美好喝的減脂湯!裙帶菜豆腐雞蛋湯
鮮美好喝的減脂湯!裙帶菜豆腐雞蛋湯今天給大家分享一道減脂湯!裙帶菜豆腐雞蛋湯!營養美味,好喝不胖!特別適合減脂期喝哦!喜歡的話一定要試試哦~ 裙帶菜豆腐雞蛋湯 食材:裙帶菜,嫩豆腐一小塊,白玉菇一小把 ...

老照片裡的“兩彈一星”故事丨“這是集體的功勳,不應由我一個人獨享”

老照片裡的“兩彈一星”故事丨“這是集體的功勳,不應由我一個人獨享”
集體,集集體,日新,日日新! 這是"兩彈一星"功勳獎章獲得者.中國科學院學部委員(院士)彭桓武在37年前信筆寫下的題詞. 字跡旁邊的獎章與證書共同見證了那個歷史性的時刻. &quo ...

好住丨精裝總價205萬起 北京恆大上河院全齡段戶型解析

好住丨精裝總價205萬起 北京恆大上河院全齡段戶型解析
近日,樂居樓盤測評師走進北京恆大上河院,為您帶來專案的全面測評.本期<好住>聚焦北京恆大上河院,北京恆大上河院位於密雲經濟開發區,臨近高鐵,79-145㎡低密洋房,精裝總價205萬起.專案 ...