直播间礼物动效 - 实现方案

在直播间内,礼物特效是必不可少的促进平台营收,增添直播间氛围的一个手段,目前在行业内,比较成熟的方案包括使用序列帧、SVGA、Lotties、MP4等方案。各个方案都有其特定的使用场景。总体上分为如下几大类:

  1. 纯面向过程的动画记录方式

    例如 Airbnb推出的Lotties方案

  2. 半面向过程半结果的动画记录方式

    例如YY推出的SVGA方案

  3. 纯面向结果的动画记录方式

    例如MP4

其中,面向过程的动画记录方式,在播放端渲染的时候,需要做将记录的过程还原回来,如果涉及到复杂的动效效果,渲染的时候性能消耗会比较大,适合于一些简单的特效效果。半面向过程半结果的动画记录方式,在一定程度上弥补了上面的缺点,对一些复杂的特效可以使用嵌入图片的方式,但是会增加资源体积。纯面向结果的方式,例如MP4,在渲染的时候,客户端只需要解码出每一帧图片,然后绘制到屏幕上,这种方式能够还原设计师的所有动画,所见即所得,同时可以支持3D动效,是目前直播领域在一些比较大额的礼物场景下,主推的一种方式。

我们再用一个生活中的例子,来通俗的理解下面向过程和面向结果的动画有什么区别吧

以 冬奥会上,花样滑冰运动员小郭的运动过程为例:

  1. 面向过程的记录方式为

    小郭左边飘移y米,转体四周半,落下后来个蟹步,然后再反向转体四周半。要还原这个动画,面向过程的计算过程就相当复杂了,要通过转体几周来计算每一帧运动员的特征(形状,大小,位置等)再渲染,播放这种复杂动画的时候就会卡,因为计算量太大了。

  2. 面向结果的动画记录方式

    运动员小郭,第1帧特征(形状,大小,位置等),第2帧特征......第n帧特征。因为记录的是运动员每一帧的特征(形状,大小,位置等),相比第一个例子并没有变复杂,省去了这些复杂的计算,就能够更顺畅的播放复杂的动画

Guess you like

Origin juejin.im/post/7075167875002023944