一种动画的生成方法、装置及存储介质与流程

文档序号:23795510发布日期:2021-02-02 08:58阅读:95来源:国知局
一种动画的生成方法、装置及存储介质与流程

[0001]
本申请涉及动画处理技术领域,具体涉及一种动画的生成方法、装置及存储介质。


背景技术:

[0002]
为了在终端应用程序(application,app)中实现动画效果的动画,可以应用动画生成技术,例如应用lottie动画生成技术在app中应用lottie动画,但现有的动画生成技术不支持代码的动态配置,设计师输出动画资源稿时资源就确定了。
[0003]
例如,当利用现有的动画生成技术实现一个国家的国旗随风飘扬的动画时,其设计出的动画效果就是固定的,在一些业务场景中,只需要更改该动画中的国旗,但此时还是需要设计师根据该业务场景设计出该国旗对应的一套完整的动画资源,如果需要分别生成多个国家对应的国旗,则此时则需要设计师分别设计出多套动画资源,导致动画的生成效率低。


技术实现要素:

[0004]
本申请实施例提供种动画的生成方法、装置及存储介质,可以提高动画的生成效率。
[0005]
本申请实施例提供一种动画的生成方法,包括:
[0006]
获取动画模板文件,所述动画模板文件包括可配置动画元素对应的动画参数;
[0007]
基于动画元素设置接口获取针对所述可配置动画元素的配置动画参数;
[0008]
根据所述配置动画参数,对所述动画模板文件中可配置动画元素对应的动画参数进行设置,得到目标动画文件;
[0009]
根据所述目标动画文件生成目标动画。
[0010]
相应的,本申请实施例还提供一种动画的生成装置,包括:
[0011]
第一获取单元,用于获取动画模板文件,所述动画模板文件包括可配置动画元素对应的动画参数;
[0012]
第二获取单元,用于基于动画元素设置接口获取针对所述可配置动画元素的配置动画参数;
[0013]
设置单元,用于根据所述配置动画参数,对所述动画模板文件中可配置动画元素对应的动画参数进行设置,得到目标动画文件;
[0014]
生成单元,用于根据所述目标动画文件生成目标动画。
[0015]
在一些实施例中,所述生成单元具体用于:
[0016]
当所述目标动画文件符合预设动画规则时,采用编译执行的方式对所述目标动画文件进行编译处理,得到第一编译文件;
[0017]
对所述第一编译文件进行渲染处理,得到所述目标动画。
[0018]
在一些实施例中,所述生成单元还具体用于:
[0019]
当所述目标动画文件不符合预设动画规则时,采用解释执行的方式对所述目标动
画文件进行编译处理,得到第二编译文件;
[0020]
对所述第二编译文件进行渲染处理,得到所述目标动画。
[0021]
在一些实施例中,所述设置单元包括:
[0022]
添加子单元,用于当所述可配置动画元素对应的动画参数为零时,将所述配置动画参数添加至所述动画模板文件中可配置动画元素对应的位置中,得到所述目标动画文件;
[0023]
替换子单元,用于当所述可配置动画元素对应的动画参数不为零时,将所述动画模板文件中可配置动画元素对应的动画参数替换为所述配置动画参数,得到所述目标动画文件。
[0024]
在一些实施例中,所述第二获取单元包括:
[0025]
第一接收子单元,用于接收所述可配置动画元素对应的配置动画指令;
[0026]
激活子单元,用于根据所述配置动画指令激活资源扩展库中的动画元素设置接口;
[0027]
获取子单元,用于基于所述动画元素设置接口获取所述配置动画参数。
[0028]
在一些实施例中,所述第一获取子单元具体用于:
[0029]
接收开发者通过所述动画元素设置接口设置的所述配置动画参数;或,
[0030]
通过所述动画元素设置接口从数据库中获取所述配置动画参数。
[0031]
在一些实施例中,所述配置动画指令包括可配置动画元素标识,所述第一获取子单元还具体用于:
[0032]
根据所述可配置动画元素标识,通过所述动画元素设置接口从服务器数据库中下载与所述可配置动画元素标识对应的所述配置动画参数;或,
[0033]
根据所述可配置动画元素标识,通过所述动画元素设置接口从本地数据库中获取与所述可配置动画元素标识对应的所述配置动画参数。
[0034]
在一些实施例中,所述第二获取单元具体用于:
[0035]
接收所述可配置动画子元素对应的配置动画指令;
[0036]
基于所述动画元素设置接口根据所述配置动画指令获取所述配置动画参数;
[0037]
此时,所述设置单元具体用于:
[0038]
根据所述配置动画参数,对所述动画模板文件中可配置动画子元素对应的动画参数进行设置,得到所述目标动画文件。
[0039]
在一些实施例中,所述第一获取单元包括:
[0040]
第二接收子单元,用于接收模板选择指令;
[0041]
选择子单元,用于根据所述模板选择指令,从预置的多个备选动画模板中选择所述动画模板文件。
[0042]
本申请实施例还提供一种存储介质,所述存储介质存储有多条指令,所述指令适于处理器进行加载,以执行本申请实施例提供的任一种动画的生成方法中的步骤。
[0043]
本申请实施例还提供一种计算机程序产品,当其在计算机上运行时,使得计算机执行本申请实施例提供的任一种动画的生成方法中的步骤。
[0044]
本申请实施例中,动画的生成装置获取动画模板文件,所述动画模板文件包括可配置动画元素对应的动画参数;并基于动画元素设置接口获取针对所述可配置动画元素的
配置动画参数;然后根据所述配置动画参数,对所述动画模板文件中可配置动画元素对应的动画参数进行设置,得到目标动画文件;最后根据所述目标动画文件生成目标动画。本方案只需要对动画模板文件中的部分参数进行修改,就可以得到目标动画,可以提高动画的生成效率。
附图说明
[0045]
为了更清楚地说明本申请实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
[0046]
图1是本申请实施例提供的动画的生成方法的一个应用场景示意图;
[0047]
图2是本申请实施例提供的动画的生成方法的一个流程示意图;
[0048]
图3是本申请实施例提供的动画的生成方法的另一个流程示意图;
[0049]
图4是本申请实施例提供的动画的生成装置的一个结构示意图;
[0050]
图5是本申请实施例提供的动画的生成装置的另一个结构示意图;
[0051]
图6是本申请实施例提供的终端的一个结构示意图。
具体实施方式
[0052]
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
[0053]
本申请实施例提供一种动画的生成方法、装置及存储介质,该动画的生成装置可以集成在网络设备中,该网络设备可以是终端等设备,其中,该终端可以包括手机、平板电脑、笔记本电脑、以及个人计算(pc,personal computer)等设备。
[0054]
本申请实施例提供的动画的生成方法可以用于生成目标动画,例如,通过本申请实施例可以生成与动画模板文件同一系列的目标动画。
[0055]
在一些实施例中,动画的生成装置包括资源扩展库、资源动态解释器以及动画即时渲染器,其中,资源扩展库提供了获取配置动画参数的动画元素设置接口。资源动态解释器从服务器或动画的生成装置的本地数据库中读取动画模板文件,并从资源扩展库中获取配置动画参数,并根据配置动画参数对动画模板文件中的可配置动画元素对应的动画参数进行设置,得到目标动画文件,最后通过动画即时渲染器对目标动画文件进行渲染,得到目标动画。
[0056]
在一些实施例中,请参阅图1,图1为本申请实施例提供的一个应用场景实施例,在本实施例中,动画模板文件对应的动画由设计师设计得到,其中,该动画模板文件包括可配置动画元素以及不可配置动画元素,然后通过ae软件(after effectes)生成动画模板文件,开发者可以在应用程序中直接通过资源扩展库提供的动画元素设置接口在资源扩展库中设置动画模板文件中需要进行设置的可配置动画元素对应的配置动画参数,然后动画的生成装置通过资源动态解释器连接动画模板文件以及资源扩展库中的配置动画参数,并根
据配置动画参数,对动画模板文件中可配置动画元素对应的动画参数进行设置,得到目标动画文件,最后根据动画即时渲染器对目标动画文件进行渲染处理,得到目标动画。
[0057]
以下分别进行详细说明。需说明的是,以下实施例的序号不作为对实施例优选顺序的限定。
[0058]
本申请实施例中,将从动画的生成装置的角度进行描述,在一实施例中,提供了一种动画的生成方法,该方法可以由动画的生成装置的处理器执行,如图2所示,该动画的生成方法的具体流程可以如下:
[0059]
201、获取动画模板文件,该动画模板文件包括可配置动画元素对应的动画参数。
[0060]
需要说明的是,该动画模板文件除了包括可配置动画元素对应的动画参数之外,还包含有不可配置动画元素对应的动画参数,其中,可配置动画元素为动画模板文件中可以修改的项目,不可配置动画元素为该动画模板文件中不可修改的项目。
[0061]
在一些实施例中,可配置动画元素对应的动画参数可以为零,也可以不为零;当为零时,可以表示该可配置动画元素对应的位置留白,当不为零时,可以表示该可配置动画元素对应的位置的动画参数是可以被修改的动画参数。
[0062]
在一些实施例中,获取动画模板文件具体包括:接收模板选择指令;然后根据该模板选择指令,从预置的多个备选动画模板中选择动画模板文件。
[0063]
例如,当用户需要选择动画模板文件时,会调出动画的生成装置中的模板选择界面,该模板选择界面上提供有多个备选动画模板,然后用户再在模板选择界面上选择所需要的动画模板文件,动画的生成装置生成对应的模板选择指令,并根据该模板选择指令确定用户所选的动画模板文件。
[0064]
其中,在一些实施例中,动画的生成装置还可以接收用户的模板预览指令,并根据该模板预览指令向用户展示对应的动画。
[0065]
其中,本实施例中的动画模板文件可以从动画的生成装置的本地数据库中获取得到,也可以从服务器中下载得到,具体此处不做限定。该动画模板文件对应的动画由设计师设计得到,并通过after effectes生成动画模板文件,其中,该动画模板文件可以为json文件,该动画可以为lottie动画。
[0066]
202、基于动画元素设置接口获取针对该可配置动画元素的配置动画参数。
[0067]
在一些实施例中,该动画元素设置接口由资源动态解释器提供,开发者可以通过该动画元素设置接口对相应动画的配置动画参数进行设置,资源扩展库接收由开发者设置的配置动画参数,例如图片,文字以及一些动画过程的参数值,此外,开发者还可以通过该动画元素设置接口对动画过程进行动态改变,例如,当出现某个特效时插入一个安卓原生动画等。
[0068]
其中,开发者在通过动画元素设置接口对相应动画的配置动画参数进行设置之前,首先需要从设计师方获取对应动画模板文件中可配置动画元素的可配置动画元素标识(identity document,id),然后根据将该id传送给应用程序,最后开发者在应用程序中通过动画元素设置接口对相应动画的配置动画参数进行设置。
[0069]
此时,在一些实施例中,基于动画元素设置接口获取针对该可配置动画元素的配置动画参数可以包括:
[0070]
接收该可配置动画元素对应的配置动画指令;然后根据该配置动画指令激活资源
扩展库中的动画元素设置接口;再基于该动画元素设置接口获取该配置动画参数。其中,该配置动画指令由动画的生成设备根据用户的实际动画生成需求生成。
[0071]
在一些实施例中,该基于该动画元素设置接口获取该配置动画参数,包括:接收开发者通过该动画元素设置接口设置的该配置动画参数,此时可以直接获取开发者设置的配置动画参数;或,通过该动画元素设置接口从数据库中获取该配置动画参数。
[0072]
其中,该配置动画指令包括可配置动画元素标识,此时,通过该动画元素设置接口从数据库中获取该配置动画参数包括:根据该可配置动画元素标识,通过该动画元素设置接口从服务器数据库中下载与该可配置动画元素标识对应的该配置动画参数;或,根据该可配置动画元素标识,通过该动画元素设置接口从本地数据库中获取与该可配置动画元素标识对应的该配置动画参数,其中,本地数据库为动画的生成装置对应的数据库。
[0073]
其中,本申请实施例中的动画元素设置接口可以是一直激活的,也可以是收到配置动画指令之后才激活的,具体此处不做限定。
[0074]
在一些实施例中,当动画的生成装置获取了所需的配置动画参数之后,会首先将其保存在资源扩展库中,其中,资源扩展库中的配置动画参数为正在进行的配置动画参数。
[0075]
具体地,在一些实施例中,该配置动画指令包括可配置动画元素id,然后从服务器或动画的生成装置的数据库中获取对应id的配置动画参数,其中,当对应id的配置动画参数存在多个时,还需要获取用户的参数选择指令,根据用户的参数选择指令从多个参数中选择需要的配置动画参数。
[0076]
其中,可配置动画元素可以包括多个可配置动画子元素,即一个动画模板文件中可以包括多个可配置动画子元素,此时,当需要对其中一个可配置动画子元素进行设置时,所述基于动画元素设置接口获取针对所述可配置动画元素的配置动画参数,包括:接收所述可配置动画子元素对应的配置动画指令;然后基于所述动画元素设置接口根据所述配置动画指令获取所述配置动画参数,其中,该配置动画指令包括需要重新设置的可配置动画子元素对应id,然后根据该id从数据库中获取该可配置动画子元素对应的配置动画参数。
[0077]
其中,该配置动画参数可以为lottie元素对应的动画参数。
[0078]
203、根据该配置动画参数,对该动画模板文件中可配置动画元素对应的动画参数进行设置,得到目标动画文件。
[0079]
本实施例中,动画的生成装置中的资源动态解释器链接获取到的动画模板文件以及资源动态解释器中的配置动画参数,并根据资源动态解释器中的配置动画参数对动画模板文件中可配置动画元素对应的动画参数进行设置。
[0080]
在一些实施例中,根据该配置动画参数,对该动画模板文件中可配置动画元素对应的动画参数进行设置,得到目标动画文件,具体包括:
[0081]
当该可配置动画元素对应的动画参数为零时,则将该配置动画参数添加至该动画模板文件中可配置动画元素对应的位置中,得到目标动画文件;例如,当该可配置动画元素对应的参数位置留白时,则此时将用户所选择的该配置动画参数添加至该动画模板文件中可配置动画元素对应的位置中。
[0082]
当该可配置动画元素对应的动画参数不为零时,则将该动画模板文件中可配置动画元素对应的动画参数替换为该配置动画参数,得到目标动画文件。例如,当该可配置动画元素对应的动画参数为可以修改的动画参数时,则此时将该动画模板文件中可配置动画元
素对应的动画参数替换为该配置动画参数,
[0083]
此时,目标动画文件中包括不可配置动画元素对应的动画参数以及配置动画参数。
[0084]
204、根据该目标动画文件生成目标动画。
[0085]
在一些实施例中,可以根据动画的生成装置中的动画即时渲染器对目标动画文件进行渲染处理,以生成目标动画。
[0086]
在一些实施例中,对目标动画进行渲染处理之前,需要在资源动态解释器中对目标动画文件进行编译处理,再通过动画即时渲染器将进行过编译处理的目标动画文件进行渲染处理,生成目标动画。
[0087]
在一些实施例中,根据该目标动画文件生成目标动画,包括:
[0088]
当该目标动画文件符合预设动画规则时,采用编译执行的方式对该目标动画文件进行编译处理,得到第一编译文件;对该第一编译文件进行渲染处理,得到该目标动画。例如,当该目标动画文件对应的动画是热点动画,且在该动画的生成装置中已经稳定动画效果时,则此时说明该目标动画文件符合预设动画规则;具体地,当该目标动画文件在该动画的生成装置中执行次数超过阈值时,则说明该目标动画文件对应的动画是热点动画,其中,该阈值可以为3次,也可以为其他次数,具体此处不做限定;当该目标动画文件中的可配置动画元素对应的动画参数相对于上一次运行没有发生变化时,则说明目标动画文件对应的动画在该动画的生成装置中已经稳定动画效果。
[0089]
当该目标动画文件不符合预设动画规则时,采用解释执行的方式对该目标动画文件进行编译处理,得到第二编译文件;对该第二编译文件进行渲染处理,得到该目标动画。例如,当该当该目标动画文件对应的动画不是热点动画,或者在该动画的生成装置中还不是稳定的动画效果时,则此时说明该目标动画文件不符合预设动画规则。
[0090]
本实施例中,采用编译执行的方式对该目标动画文件进行编译处理,编译速度比较快,采用解释执行的方式对该目标动画文件进行编译处理,编译准确度较高。
[0091]
在一些实施例中,当动画的生成装置中存在硬件加速时,还可以开启硬件加速进行加速渲染,提高动画展示效果。
[0092]
本申请实施例中,动画的生成装置获取动画模板文件,该动画模板文件包括可配置动画元素对应的动画参数;并基于动画元素设置接口获取针对该可配置动画元素的配置动画参数;然后根据该配置动画参数,对该动画模板文件中可配置动画元素对应的动画参数进行设置,得到目标动画文件;最后根据该目标动画文件生成目标动画。本方案只需要对动画模板文件中的部分参数进行修改,就可以得到目标动画,可以提高动画的生成效率,并且可以降低设计师和开发者的工作量,减少一些大体相似,只有某些元素不同的动画设计。
[0093]
此外,当一个动画的生成装置需要生成多个同一系列的动画时(即生成多个共用一个动画文件模板,只有部分元素不同的动画),其内存只需要保存一个动画文件模板以及不同动画对应的需要修改的配置动画参数即可,可以减少包大小,节省存储空间,包大小对于移动应用的用户转化率有极大影响,因此减少包大小,可以提供移动应用的市场竞争力。
[0094]
此外,当该动画是llttie动画时,可以提高lottie动画的动态性,对于固定动画可以通过代码改变其中元素和动画过程,拓展动画的多态性。
[0095]
根据上一个实施例所描述的方法,以下将举例作进一步进行说明。
[0096]
本实施例中,将从终端为执行主体,目标动画为lottie动画为例进行描述,请参阅图3,本申请提供的另一种动画的生成方法,具体流程如下:
[0097]
301、终端获取lottie动画模板文件,该lottie动画模板文件包括可配置lottie动画元素对应的动画参数。
[0098]
在本实施例中,lottie动画模板文件除了包括可配置lottie动画元素对应的动画参数之外,还包括不可配置lottie动画元素对应的动画参数。
[0099]
其中,可配置lottie动画元素对应的动画参数可以为零,也可以不为零;当为零时,可以表示该可配置lottie动画元素对应的位置留白,当不为零时,可以表示该可配置lottie动画元素对应的位置的动画参数是可以被修改的动画参数。
[0100]
在一些实施例中,终端接收模板选择指令,再通过该模板选择指令从预置的多个备选lottie动画模板中选择需要的lottie动画模板文件。
[0101]
在一些实施例中,lottie动画模板文件可以从终端的本地数据库中获取得到,也可以从服务器中下载得到,具体此处不做限定。该lottie动画模板文件对应的动画由设计师设计得到,并通过after effectes生成该lottie动画模板文件,其中,该lottie动画模板文件为json文件。
[0102]
302、终端基于动画元素设置接口获取可配置lottie动画元素对应的配置动画参数。
[0103]
其中,本实施例中终端的资源扩展库提供了动画元素设置接口,终端可以通过这个接口获取可配置lottie动画元素对应的配置动画参数。
[0104]
具体地,在一些实施例中,开发者可以通过该动画元素设置接口对相应的lottie动画的配置动画参数进行设置,资源扩展库可以接收并保存由开发者设置的配置动画参数,其中,资源扩展库中的配置动画参数为正在进行中的待配置的动画参数。
[0105]
其中,开发者对可以通过该动画元素设置接口对相应的lottie动画的配置动画参数进行设置具体可以包括:
[0106]
开发者获取lottie动画模板中的可配置lottie动画元素对应的可配置动画元素id,然后开发者根据该可配置动画元素id设置相应的lottie动画的配置动画参数。
[0107]
其中,设计者设置好配置动画参数之后,可以将该动画配置参数上传至相关服务器中保存,也可以保存在动画的生成装置中的本地数据库中。
[0108]
此时,在一些实施例中,基于动画元素设置接口获取该可配置lottie动画元素对应的配置动画参数可以包括:
[0109]
接收该可配置lottie动画元素对应的配置动画指令;然后根据该配置动画指令激活资源扩展库中的动画元素设置接口;接收开发者通过该动画元素设置接口设置的该配置动画参数,此时可以直接获取开发者设置的配置动画参数,其中,该配置动画指令由动画的生成设备根据用户的实际动画生成需求生成。
[0110]
在另一些实施例中,基于动画元素设置接口获取该可配置lottie动画元素对应的配置动画参数包括:
[0111]
接收该可配置lottie动画元素对应的配置动画指令;根据该配置动画指令激活资源扩展库中的动画元素设置接口;通过该动画元素设置接口从数据库中获取该配置动画参数,其中,该数据库可以为终端的本地数据库或服务器中的数据库,若为服务器中的服务
器,则此时终端还需要从服务器中下载该配置动画参数,并通过该动画元素设置接口接收该配置动画参数。
[0112]
其中,本申请实施例中的动画元素设置接口可以是一直激活的,也可以是收到配置动画指令之后才激活的,具体此处不做限定。
[0113]
303、终端确定可配置lottie动画元素对应的动画参数是否为零,当为零时,执行步骤304,当不为零时,执行步骤305。
[0114]
在对lottie动画模板文件中可配置lottie动画元素对应的动画参数进行设置之前,首先要确定可配置lottie动画元素对应的动画参数是否为零,以此确定配置动画参数在lottie动画模板文件中的设置方式。
[0115]
304、终端将该配置动画参数添加至该lottie动画模板文件中可配置lottie动画元素对应的位置中,得到该目标lottie动画文件。
[0116]
当可配置lottie动画元素对应的动画参数为零时,此时说明该可配置lottie动画元素对应的位置留白,此时终端可以通过资源动态解释器将该配置动画参数添加或填充至该lottie动画模板文件中可配置lottie动画元素对应的位置中,得到该目标lottie动画文件。
[0117]
305、终端将该lottie动画模板文件中可配置lottie动画元素对应的动画参数替换为该配置动画参数,得到该目标lottie动画文件。
[0118]
当可配置lottie动画元素对应的动画参数不为零时,此时说明该可配置lottie动画元素对应的参数为可以被修改的动画参数,此时,终端可以通过资源动态解释器将该lottie动画模板文件中可配置lottie动画元素对应的动画参数直接替换为该配置动画参数,得到该目标lottie动画文件。
[0119]
306、终端确定该目标lottie动画文件是否符合预设动画规则,若符合,则执行步骤307-308,若不符合则执行步骤309-310。
[0120]
当终端通过资源动态解释器对lottie动画模板文件中可配置lottie动画元素对应的动画参数进行设置,得到目标lottie动画文件之后,将会判断该目标lottie动画文件是否符合预设动画规则。
[0121]
具体地,当该目标lottie动画文件对应的动画是热点动画,且在该动画的生成装置中已经稳定动画效果时,则此时说明该目标lottie动画文件符合预设动画规则;当该当该目标lottie动画文件对应的动画不是热点动画,或者在该动画的生成装置中还不是稳定的动画效果时,则此时说明该目标lottie动画文件不符合预设动画规则。
[0122]
307、终端采用编译执行的方式对该目标lottie动画文件进行编译处理,得到第一编译文件。
[0123]
当该目标lottie动画文件符合预设动画规则时,为了提高编译速度,此时终端可以通过资源动态解释器采用编译执行的方式对该目标lottie动画文件进行编译处理,得到第一编译文件,其中,第一编译文件的形式可以为json数据流。
[0124]
308、终端对该第一编译文件进行渲染处理,得到该目标lottie动画。
[0125]
当通过编译处理得到第一编译文件时,此时,终端可以通过动画即时渲染器对第一编译文件进行渲染处理,得到目标lottie动画,并在终端中展示目标lottie动画。
[0126]
309、终端采用解释执行的方式对该目标lottie动画文件进行编译处理,得到第二
编译文件。
[0127]
当该目标lottie动画文件不符合预设动画规则时,为了提高编译的准确度,此时终端可以通过资源动态解释器采用解释执行的方式对该目标lottie动画文件进行编译处理,得到第二编译文件,其中,第一编译文件的形式可以为json数据流。
[0128]
310、终端对该第二编译文件进行渲染处理,得到lottie目标动画。
[0129]
当通过编译处理得到第二编译文件时,此时,终端可以通过动画即时渲染器对第二编译文件进行渲染处理,得到目标lottie动画,并在终端中展示目标lottie动画。
[0130]
本申请实施例中,终端获取动画模板文件,该动画模板文件包括可配置动画元素对应的动画参数;并基于动画元素设置接口获取针对该可配置动画元素的配置动画参数;然后根据该配置动画参数,对该动画模板文件中可配置动画元素对应的动画参数进行设置,得到目标动画文件;最后根据该目标动画文件生成目标动画。本方案只需要对动画模板文件中的部分参数进行修改,就可以得到目标动画,可以提高动画的生成效率,并且可以降低设计师和开发者的工作量,减少一些大体相似,只有某些元素不同的动画设计。
[0131]
此外,当一个终端需要生成多个同一系列的动画时,其内存只需要保存一个动画文件模板,以及不同动画对应的需要修改的配置动画参数即可,可以减少包大小,节省终端的存储空间。
[0132]
为了更好地实施以上方法,相应的,本申请实施例还提供一种信息发送装置,该信息发送装置具体可以集成在网络设备中,该网络设备可以是服务器等设备。
[0133]
例如,如图4所示,该动画的生成装置可以包括第一获取单元401、第二获取单元402、设置单元403和生成单元404,如下:
[0134]
第一获取单元401,用于获取动画模板文件,所述动画模板文件包括可配置动画元素对应的动画参数;
[0135]
第二获取单元402,用于基于动画元素设置接口获取针对所述可配置动画元素的配置动画参数;
[0136]
设置单元403,用于根据所述配置动画参数,对所述动画模板文件中可配置动画元素对应的动画参数进行设置,得到目标动画文件;
[0137]
生成单元404,用于根据所述目标动画文件生成目标动画。
[0138]
在一些实施例中,所述生成单元404具体用于:
[0139]
当所述目标动画文件符合预设动画规则时,采用编译执行的方式对所述目标动画文件进行编译处理,得到第一编译文件;
[0140]
对所述第一编译文件进行渲染处理,得到所述目标动画。
[0141]
在一些实施例中,所述生成单元404还具体用于:
[0142]
当所述目标动画文件不符合预设动画规则时,采用解释执行的方式对所述目标动画文件进行编译处理,得到第二编译文件;
[0143]
对所述第二编译文件进行渲染处理,得到所述目标动画。
[0144]
请参阅图5,在一些实施例中,所述设置单元403包括:
[0145]
添加子单元4031,用于当所述可配置动画元素对应的动画参数为零时,将所述配置动画参数添加至所述动画模板文件中可配置动画元素对应的位置中,得到所述目标动画文件;
[0146]
替换子单元4032,用于当所述可配置动画元素对应的动画参数不为零时,将所述动画模板文件中可配置动画元素对应的动画参数替换为所述配置动画参数,得到所述目标动画文件。
[0147]
在一些实施例中,所述第二获取单元402包括:
[0148]
第一接收子单元4021,用于接收所述可配置动画元素对应的配置动画指令;
[0149]
激活子单元4022,用于根据所述配置动画指令激活资源扩展库中的动画元素设置接口;
[0150]
获取子单元4023,用于基于所述动画元素设置接口获取所述配置动画参数。
[0151]
在一些实施例中,所述第一获取子单元4023具体用于:
[0152]
接收开发者通过所述动画元素设置接口设置的所述配置动画参数;或,
[0153]
通过所述动画元素设置接口从数据库中获取所述配置动画参数。
[0154]
在一些实施例中,所述配置动画指令包括可配置动画元素标识,所述第一获取子单元4023还具体用于:
[0155]
根据所述可配置动画元素标识,通过所述动画元素设置接口从服务器数据库中下载与所述可配置动画元素标识对应的所述配置动画参数;或,
[0156]
根据所述可配置动画元素标识,通过所述动画元素设置接口从本地数据库中获取与所述可配置动画元素标识对应的所述配置动画参数。
[0157]
在一些实施例中,所述第二获取单元402具体用于:
[0158]
接收所述可配置动画子元素对应的配置动画指令;
[0159]
基于所述动画元素设置接口根据所述配置动画指令获取所述配置动画参数;
[0160]
此时,所述设置单元403具体用于:
[0161]
根据所述配置动画参数,对所述动画模板文件中可配置动画子元素对应的动画参数进行设置,得到所述目标动画文件。
[0162]
在一些实施例中,所述第一获取单元401包括:
[0163]
第二接收子单元4011,用于接收模板选择指令;
[0164]
选择子单元4012,用于根据所述模板选择指令,从预置的多个备选动画模板中选择所述动画模板文件。
[0165]
本申请实施例中,第一获取单元401获取动画模板文件,该动画模板文件包括可配置动画元素对应的动画参数;第二获取单元402基于动画元素设置接口获取针对该可配置动画元素的配置动画参数;然后设置单元403根据该配置动画参数,对该动画模板文件中可配置动画元素对应的动画参数进行设置,得到目标动画文件;最后生成单元404根据该目标动画文件生成目标动画。本方案只需要对动画模板文件中的部分参数进行修改,就可以得到目标动画,可以提高动画的生成效率,并且可以降低设计师和开发者的工作量,减少一些大体相似,只有某些元素不同的动画设计。
[0166]
图6示出了本申请实施例提供的终端的具体结构框图,该终端可以用于实施上述实施例中提供的动画的生成方法。该终端600可以为智能手机或平板电脑等。
[0167]
如图6所示,终端600可以包括rf(radio frequency,射频)电路110、包括有一个或一个以上(图中仅示出一个)计算机可读存储介质的存储器120、输入单元130、显示单元140、传感器150、音频电路160、传输模块170、包括有一个或者一个以上(图中仅示出一个)
处理核心的处理器180以及电源190等部件。本领域技术人员可以理解,图6中示出的终端600结构并不构成对终端600的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。其中:
[0168]
rf电路110用于接收以及发送电磁波,实现电磁波与电信号的相互转换,从而与通讯网络或者其他设备进行通讯。rf电路110可包括各种现有的用于执行这些功能的电路元件,例如,天线、射频收发器、数字信号处理器、加密/解密芯片、用户身份模块(sim)卡、存储器等等。rf电路110可与各种网络如互联网、企业内部网、无线网络进行通讯或者通过无线网络与其他设备进行通讯。上述的无线网络可包括蜂窝式电话网、无线局域网或者城域网。上述的无线网络可以使用各种通信标准、协议及技术,包括但并不限于全球移动通信系统(global system for mobile communication,gsm)、增强型移动通信技术(enhanced data gsm environment,edge),宽带码分多址技术(wideband code division multiple access,wcdma),码分多址技术(code division access,cdma)、时分多址技术(time division multiple access,tdma),无线保真技术(wireless fidelity,wi-fi)(如美国电气和电子工程师协会标准ieee 802.11a,ieee 802.11b,ieee802.11g和/或ieee 802.11n)、网络电话(voice over internet protocol,voip)、全球微波互联接入(worldwide interoperability for microwave access,wi-max)、其他用于邮件、即时通讯及短消息的协议,以及任何其他合适的通讯协议,甚至可包括那些当前仍未被开发出来的协议。
[0169]
存储器120可用于存储软件程序以及模块,如上述实施例中动画的生成方法的程序指令/模块,处理器180通过运行存储在存储器120内的软件程序以及模块,从而执行各种功能应用以及数据处理,即实现动画的生成的功能。存储器120可包括高速随机存储器,还可包括非易失性存储器,如一个或者多个磁性存储装置、闪存、或者其他非易失性固态存储器。在一些实例中,存储器120可进一步包括相对于处理器180远程设置的存储器,这些远程存储器可以通过网络连接至终端600。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
[0170]
输入单元130可用于接收输入的数字或字符信息,以及产生与用户设置以及功能控制有关的键盘、鼠标、操作杆、光学或者轨迹球信号输入。具体地,输入单元130可包括触敏表面131以及其他输入设备132。触敏表面131,也称为触摸显示屏或者触控板,可收集用户在其上或附近的触摸操作(比如用户使用手指、触笔等任何适合的物体或附件在触敏表面131上或在触敏表面131附近的操作),并根据预先设定的程式驱动相应的连接装置。可选的,触敏表面131可包括触摸检测装置和触摸控制器两个部分。其中,触摸检测装置检测用户的触摸方位,并检测触摸操作带来的信号,将信号传送给触摸控制器;触摸控制器从触摸检测装置上接收触摸信息,并将它转换成触点坐标,再送给处理器180,并能接收处理器180发来的命令并加以执行。此外,可以采用电阻式、电容式、红外线以及表面声波等多种类型实现触敏表面131。除了触敏表面131,输入单元130还可以包括其他输入设备132。具体地,其他输入设备132可以包括但不限于物理键盘、功能键(比如音量控制按键、开关按键等)、轨迹球、鼠标、操作杆等中的一种或多种。
[0171]
显示单元140可用于显示由用户输入的信息或提供给用户的信息以及终端600的各种图形用户接口,这些图形用户接口可以由图形、文本、图标、视频和其任意组合来构成。
显示单元140可包括显示面板141,可选的,可以采用lcd(liquid crystal display,液晶显示器)、oled(organic light-emitting diode,有机发光二极管)等形式来配置显示面板141。进一步的,触敏表面131可覆盖显示面板141,当触敏表面131检测到在其上或附近的触摸操作后,传送给处理器180以确定触摸事件的类型,随后处理器180根据触摸事件的类型在显示面板141上提供相应的视觉输出。虽然在图6中,触敏表面131与显示面板141是作为两个独立的部件来实现输入和输出功能,但是在某些实施例中,可以将触敏表面131与显示面板141集成而实现输入和输出功能。
[0172]
终端600还可包括至少一种传感器150,比如光传感器、运动传感器以及其他传感器。具体地,光传感器可包括环境光传感器及接近传感器,其中,环境光传感器可根据环境光线的明暗来调节显示面板141的亮度,接近传感器可在终端600移动到耳边时,关闭显示面板141和/或背光。作为运动传感器的一种,重力加速度传感器可检测各个方向上(一般为三轴)加速度的大小,静止时可检测出重力的大小及方向,可用于识别手机姿态的应用(比如横竖屏切换、相关游戏、磁力计姿态校准)、振动识别相关功能(比如计步器、敲击)等;至于终端600还可配置的陀螺仪、气压计、湿度计、温度计、红外线传感器等其他传感器,在此不再赘述。
[0173]
音频电路160、扬声器161,传声器162可提供用户与终端600之间的音频接口。音频电路160可将接收到的音频数据转换后的电信号,传输到扬声器161,由扬声器161转换为声音信号输出;另一方面,传声器162将收集的声音信号转换为电信号,由音频电路160接收后转换为音频数据,再将音频数据输出处理器180处理后,经rf电路110以发送给比如另一终端,或者将音频数据输出至存储器120以便进一步处理。音频电路160还可能包括耳塞插孔,以提供外设耳机与终端600的通信。
[0174]
终端600通过传输模块170(例如wi-fi模块)可以帮助用户收发电子邮件、浏览网页和访问流式媒体等,它为用户提供了无线的宽带互联网访问。虽然图6示出了传输模块170,但是可以理解的是,其并不属于终端600的必须构成,完全可以根据需要在不改变发明的本质的范围内而省略。
[0175]
处理器180是终端600的控制中心,利用各种接口和线路连接整个手机的各个部分,通过运行或执行存储在存储器120内的软件程序和/或模块,以及调用存储在存储器120内的数据,执行终端600的各种功能和处理数据,从而对手机进行整体监控。可选的,处理器180可包括一个或多个处理核心;在一些实施例中,处理器180可集成应用处理器和调制解调处理器,其中,应用处理器主要处理操作系统、用户界面和应用程序等,调制解调处理器主要处理无线通信。可以理解的是,上述调制解调处理器也可以不集成到处理器180中。
[0176]
终端600还包括给各个部件供电的电源190(比如电池),在一些实施例中,电源可以通过电源管理系统与处理器180逻辑相连,从而通过电源管理系统实现管理充电、放电、以及功耗管理等功能。电源190还可以包括一个或一个以上的直流或交流电源、再充电系统、电源故障检测电路、电源转换器或者逆变器、电源状态指示器等任意组件。
[0177]
尽管未示出,终端600还可以包括摄像头(如前置摄像头、后置摄像头)、蓝牙模块等,在此不再赘述。具体在本实施例中,终端600的显示单元140是触摸屏显示器,终端600还包括有存储器120,以及一个或者一个以上的程序,其中一个或者一个以上程序存储于存储器120中,且经配置以由一个或者一个以上处理器180执行一个或者一个以上程序包含用于
进行以下操作的指令:
[0178]
获取动画模板文件,该动画模板文件包括可配置动画元素对应的动画参数;
[0179]
基于动画元素设置接口获取针对该可配置动画元素的配置动画参数;
[0180]
根据该配置动画参数,对该动画模板文件中可配置动画元素对应的动画参数进行设置,得到目标动画文件;
[0181]
根据该目标动画文件生成目标动画。
[0182]
本领域普通技术人员可以理解,上述实施例的各种方法中的全部或部分步骤可以通过指令来完成,或通过指令控制相关的硬件来完成,该指令可以存储于一计算机可读存储介质中,并由处理器进行加载和执行。
[0183]
为此,本申请实施例提供一种存储介质,其中存储有多条指令,该指令能够被处理器进行加载,以执行本申请实施例所提供的任一种动画的生成方法中的步骤。例如,该指令可以执行如下步骤:
[0184]
获取动画模板文件,该动画模板文件包括可配置动画元素对应的动画参数;
[0185]
基于动画元素设置接口获取针对该可配置动画元素的配置动画参数;
[0186]
根据该配置动画参数,对该动画模板文件中可配置动画元素对应的动画参数进行设置,得到目标动画文件;
[0187]
根据该目标动画文件生成目标动画。
[0188]
以上各个操作的具体实施可参见前面的实施例,在此不再赘述。
[0189]
其中,该存储介质可以包括:只读存储器(rom,read only memory)、随机存取记忆体(ram,random access memory)、磁盘或光盘等。
[0190]
由于该存储介质中所存储的指令,可以执行本申请实施例所提供的任一种动画的生成方法中的步骤,因此,可以实现本申请实施例所提供的任一种动画的生成方法所能实现的有益效果,详见前面的实施例,在此不再赘述。
[0191]
以上对本申请实施例所提供的一种动画的生成方法、装置和存储介质进行了详细介绍,本文中应用了具体个例对本申请的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本申请的方法及其核心思想;同时,对于本领域的技术人员,依据本申请的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本申请的限制。
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1