一种动画生成方法和装置制造方法及图纸

技术编号:15705343 阅读:264 留言:0更新日期:2017-06-26 13:02
本申请提供一种动画生成方法和装置,所述方法包括:在接收到动画生成指令后,获取补间的数量;当所述补间的数量大于等于2时,创建一个或多个时间轴,其中,每个时间轴对应一个或者多个补间,所述时间轴的数量小于所述补间的数量;基于所述时间轴为对应的补间生成动画。本申请在生成动画时,创建数量小于补间数量的时间轴,用户设备在播放该动画时,无需绘制与补间数量相同数量的画布,减少了大量不必要的重绘工作,进而减小了播放复杂动画时用户设备的性能开销。

Animation generating method and device

This application provides an animation generation method and device. The method includes: receiving animation instructions, gets the number between fill; when the number of the complement between greater than or equal to 2, to create one or more of the time axis, wherein each time axis corresponds to one or more complement. The number of the time axis is less than the number of the complement between the time axis; corresponding tweening animation based on. The application in the generation of animation, create a number less than the time axis fill between the number of user equipment in the playback of animation, without drawing a meeting between the same amount of canvas, reduce a lot of unnecessary redrawing, and reduce the performance overhead when the user equipment play complex animation.

【技术实现步骤摘要】
一种动画生成方法和装置
本申请涉及图像处理
,尤其涉及一种动画生成方法和装置。
技术介绍
Canvas元素表示一个HTML(HyperTextMarkupLanguage,超文本标记语言)画布元素,Canvas元素本身不具备绘图功能,但是其定义了一个API(ApplicationProgrammingInterface,应用程序编程接口)支持脚本化客户端的绘图操作。相关技术中,在生成动画时,往往采用基于时间轴的补间技术。然而,在这样的实现方式中,在进行多对象的复杂动画生成时,会产生多个Canvas元素,针对每个Canvas元素,客户端在播放动画时都会绘制对应的整张画布,给设备带来较大的性能开销。
技术实现思路
有鉴于此,本申请提供一种动画生成方法和装置,以解决相关技术在生成复杂动画时给设备带来较大开销的问题。具体地,本申请是通过如下技术方案实现的:一种动画生成方法,所述方法包括:在接收到动画生成指令后,获取补间的数量;当所述补间的数量大于等于2时,创建一个或多个时间轴,其中,每个时间轴对应一个或者多个补间,所述时间轴的数量小于所述补间的数量;基于所述时间轴为对应的补间生成动画。一种动画生成装置,所述装置包括:数量获取单元,在接收到动画生成指令后,获取补间的数量;时间轴创建单元,当所述补间的数量大于等于2时,创建一个或多个时间轴,其中,每个时间轴对应一个或者多个补间,所述时间轴的数量小于所述补间的数量;动画生成单元,基于所述时间轴为对应的补间生成动画。由以上描述可以看出,本申请在生成动画时,创建数量小于补间数量的时间轴,用户设备在播放该动画时,无需绘制与补间数量相同数量的画布,减少了大量不必要的重绘工作,进而减小了播放复杂动画时用户设备的性能开销。附图说明图1是本申请一示例性实施例示出的一种动画生成方法的流程示意图。图2是本申请一示例性实施例示出的一种关键帧时间轴示意图。图3是本申请一示例性实施例示出的一种基于时间轴为对应的补间生成动画的流程示意图。图4是本申请一示例性实施例示出的一种用于动画生成装置的一结构示意图。图5是本申请一示例性实施例示出的一种动画生成装置的结构框图。具体实施方式这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本申请相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本申请的一些方面相一致的装置和方法的例子。在本申请使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本申请。在本申请和所附权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。还应当理解,本文中使用的术语“和/或”是指并包含一个或多个相关联的列出项目的任何或所有可能组合。应当理解,尽管在本申请可能采用术语第一、第二、第三等来描述各种信息,但这些信息不应限于这些术语。这些术语仅用来将同一类型的信息彼此区分开。例如,在不脱离本申请范围的情况下,第一信息也可以被称为第二信息,类似地,第二信息也可以被称为第一信息。取决于语境,如在此所使用的词语“如果”可以被解释成为“在……时”或“当……时”或“响应于确定”。补间,又称补间动画,是指建立在两个关键帧(一个起始关键帧,一个终止关键帧)之间的渐变动画。在生成多对象的复杂动画时,根据制作人员设置的补间,动画生成设备往往会分别为每个补间都创建一个对应的时间轴。用户设备在播放该动画时,基于每个时间轴,都会生成一个Canvas元素,而针对每个Canvas元素,用户设备都会绘制对应的整张画布,进而导致大量不必要的重绘工作,给用户设备带来较大的性能开销。针对上述问题,本申请提供一种动画生成方法,可以有效降低设备在播放动画时的性能开销。图1是本申请一示例性实施例示出的一种动画生成方法的流程示意图。请参考图1,所述动画生成方法可以应用在动画生成设备中,所述动画生成设备可以包括智能手机、平板电脑、PDA(PersonalDigitalAssistant,掌上电脑)、PC机等智能终端设备。所述动画生成方法可以理解为所述动画设备中装载的具有动画生成功能的客户端软件执行的处理逻辑,包括有:步骤101,在接收到动画生成指令后,获取补间的数量。在本实施例中,在生成动画时,制作人员可以在客户端中插入选定的图片以作为关键帧,用户也可以通过客户端提供的绘图功能自行绘制关键帧,本申请对此不作特殊限制。其中,所述关键帧相当于二维动画中的原画,是指角色或者物体运动或变化中的关键动作所处的那一帧。在本实施例中,制作人员可以基于客户端提供的关键帧时间轴进行关键帧的插入操作以及补间的设置。请参考图2所示的一种关键帧时间轴,该关键帧时间轴的刻度用于表示关键帧的帧序号,比如:刻度1表示帧序号为1的关键帧,刻度5表示帧序号为5的关键帧等。制作人员可以在所述关键帧时间轴中插入关键帧,比如:制作人员可以在刻度1处插入帧序号为1的关键帧,在刻度15处插入帧序号为15的关键帧等。在插入关键帧之后,用户可以选定用于补间的两个关键帧,可选的,用户可以使用鼠标在所述关键帧时间轴中选定一个帧序号,这个帧序号两侧的关键帧就是本次补间的起始关键帧和终止关键帧。基于所述起始关键帧和所述终止关键帧,客户端可以生成一个补间。举例来说,请继续参考图2所示的关键帧时间轴,假设制作人员插入三个关键帧,其帧序号分别为1、10以及15。当制作人员选中帧序号5时,客户端可以确定本次补间起始关键帧是帧序号为1的关键帧,终止关键帧是帧序号为10的关键帧。在本实施例中,基于客户端提供的关键帧时间轴,制作人员基于需要可以设置多个补间。举例来说,制作人员可以点击两次关键帧时间轴以设置两个补间,请参考表1所示的补间信息,其中一个补间的起始关键帧的帧序号为5,终止关键帧的帧序号为8,另一个补间的起始关键帧的帧序号为12,终止关键帧的帧序号为18。起始关键帧的帧序号终止关键帧的帧序号补间158补间21218表1在本实施例中,所述动画生成指令通常由用户在设置好补间后触发,客户端可以在接收到所述动画生成指令后,获取补间的数量。步骤102,当所述补间的数量大于等于2时,创建一个或多个时间轴,其中,每个时间轴对应一个或者多个补间,所述时间轴的数量小于所述补间的数量。基于前述步骤101,在获取到所述补间的数量后,可以先判断所述补间的数量是否大于等于2,当所述补间的数量为1时,可以参照相关技术中的实现方案生成动画。当所述补间的数量大于等于2时,可以创建数量小于所述补间数量的时间轴,其中,每个时间轴对应一个或多个补间。在本实施例中,创建的时间轴的数量可以由开发人员进行设置。在一个例子中,当所述补间的数量大于等于2时,可以仅创建一个时间轴,这个时间轴对应所有的补间。在另一个例子中,当所述补间的数量大于等于2时,可以创建数量为补间数量一半的时间轴。举例来说,假设所述补间的数量为8,则可以创建4个时间轴,每个时间轴对应两个补间。又假设,所述补间的数量为9,则也可以创建4个时间轴,其中3个时间轴对应两个补间,另一个时间轴对应3个补间,当然,也可以创建5个时间轴,其中4个时间轴对应两个补间,另外本文档来自技高网...
一种动画生成方法和装置

【技术保护点】
一种动画生成方法,其特征在于,所述方法包括:在接收到动画生成指令后,获取补间的数量;当所述补间的数量大于等于2时,创建一个或多个时间轴,其中,每个时间轴对应一个或者多个补间,所述时间轴的数量小于所述补间的数量;基于所述时间轴为对应的补间生成动画。

【技术特征摘要】
1.一种动画生成方法,其特征在于,所述方法包括:在接收到动画生成指令后,获取补间的数量;当所述补间的数量大于等于2时,创建一个或多个时间轴,其中,每个时间轴对应一个或者多个补间,所述时间轴的数量小于所述补间的数量;基于所述时间轴为对应的补间生成动画。2.根据权利要求1所述的方法,其特征在于,所述基于所述时间轴为对应的补间生成动画,包括:当所述时间轴对应多个补间时,判断所述多个补间中是否存在M级冲突补间组,所述M级冲突补间组中的M级冲突补间的补间对象均相同,且补间时间相互冲突,其中M为自然数,初始值为缺省的计数初始值;当存在所述M级冲突补间组时,将所述M级冲突补间组中补间结束时间最晚的M级冲突补间更新为M+1级冲突补间,并判断所述M+1级补间中是否存在M+1级冲突补间组,直至M+K级冲突补间中不存在M+K级冲突补间组,其中K为大于等于0的自然数;基于所述时间轴为对应的非冲突补间以及所述M+K级补间生成动画。3.根据权利要求2所述的方法,其特征在于,所述判断所述多个补间中是否存在M级冲突补间组,包括:获取每个补间的补间对象;当存在两个或两个以上补间的补间对象相同时,判断所述两个或两个以上补间中任一补间与其他补间的补间时间是否相互冲突;如果所述任一补间与其他补间的补间时间相互冲突,则确定所述多个补间中存在至少一个M级冲突补间组,该M级冲突补间组中包括所述任一补间与所述其他补间。4.根据权利要求3所述的方法,其特征在于,所述判断所述两个或两个以上补间中任一补间与其他补间的补间时间是否相互冲突,包括:判断所述任一补间与所述其他补间的起始关键帧与终止关键帧组成的补间时间是否有交集,如果有交集,则确定所述任一补间与所述其他补间的补间时间相互冲突。5.根据权利要求2所述的方法,其特征在于,所述将所述M级冲突补间组中补间结束时间最晚的M级冲突补间更新为M+1级冲突补间,包括:将所述M级冲突补间组中补间结束关键帧的帧...

【专利技术属性】
技术研发人员:黄通
申请(专利权)人:阿里巴巴集团控股有限公司
类型:发明
国别省市:开曼群岛,KY

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1