CN104142820B - 一种动画制作方法、装置和*** - Google Patents

一种动画制作方法、装置和*** Download PDF

Info

Publication number
CN104142820B
CN104142820B CN201410049103.7A CN201410049103A CN104142820B CN 104142820 B CN104142820 B CN 104142820B CN 201410049103 A CN201410049103 A CN 201410049103A CN 104142820 B CN104142820 B CN 104142820B
Authority
CN
China
Prior art keywords
action
action node
node
tree construction
assembly
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201410049103.7A
Other languages
English (en)
Other versions
CN104142820A (zh
Inventor
冯小立
罗春华
田宇
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Tencent Technology Shenzhen Co Ltd
Original Assignee
Tencent Technology Shenzhen Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Tencent Technology Shenzhen Co Ltd filed Critical Tencent Technology Shenzhen Co Ltd
Priority to CN201410049103.7A priority Critical patent/CN104142820B/zh
Publication of CN104142820A publication Critical patent/CN104142820A/zh
Application granted granted Critical
Publication of CN104142820B publication Critical patent/CN104142820B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Processing Or Creating Images (AREA)

Abstract

本发明实施例公开了一种动画制作方法、装置和***。本发明实施例采用获取需要制作的动画的树结构,该树结构包括多个动作节点;根据该树结构确定当前需要处理的动作节点,并为该当前需要处理的动作节点选择组件和该组件需要执行的动作,根据确定的动作从动作集合中调用相应的动作命令,然后触使该组件执行这些动作命令,得到处理后动作节点,并返回执行确定当前需要处理的动作节点的步骤,直至该树结构中的所有动作节点处理完毕,最后根据该树结构对所有处理后动作节点进行组装,便可得到制作结果,即得到所需要制作的动画。该方案不仅实现简单、制作效率高,修改方便、以及扩展性较好,而且输出的数据文件也较小。

Description

一种动画制作方法、装置和***
技术领域
本发明涉及计算机技术领域,具体涉及一种动画制作方法、装置和***。
背景技术
在当前的动画制作过程中,一般都会以时间轴帧的方式来制作,所谓时间轴帧,类似于Flash(一种交互式矢量图和Web动画的标准)的时间轴。其中,一帧为一个画面,而时间轴主要用于组织和控制影片内容在一定时间内播放的层数和帧数,可以简单理解时间轴是决定画面出现先后顺序以及所在层次的工具。也就是说,在现有技术中,在制作动画时,需要制作很多帧,其中可能有各种补间动画,不仅需要花很长时间调校准,而且,如果后续需要改动,比如把球体螺旋着向内聚合运动改成螺旋向外扩散运动,或者球体换成另一种物体,那就得对这一套动画进行大修改,甚至需要对每一帧进行修改及调试等。
在对现有技术的研究和实践过程中,本发明的发明人发现,现有的制作动画的方案过于繁琐和复杂,不仅制作效率低、修改不方便、以及扩展性不强,而且,输出的数据文件也较大。
发明内容
本发明实施例提供一种动画制作方法、装置和***,不仅实现简单、制作效率高、修改方便、以及扩展性较好,而且输出的数据文件也较小。
一种动画制作方法,包括:
获取需要制作的动画的树结构,所述树结构包括多个动作节点;
根据所述树结构确定当前需要处理的动作节点,并为所述当前需要处理的动作节点选择组件和所述组件需要执行的动作;
根据确定的动作从动作集合中调用相应的动作命令;
触使所述组件执行所述动作命令,得到处理后动作节点,并返回执行确定当前需要处理的动作节点的步骤,直至所述树结构中的所有动作节点处理完毕;
根据所述树结构对所有处理后动作节点进行组装,得到制作结果。
一种动画制作装置,包括获取单元、确定单元、调用单元、执行单元和组装单元;
获取单元,用于获取需要制作的动画的树结构,所述树结构包括多个动作节点;
确定单元,用于根据所述树结构确定当前需要处理的动作节点,并为所述当前需要处理的动作节点选择组件和所述组件需要执行的动作;
调用单元,用于根据确定的动作从动作集合中调用相应的动作命令;
执行单元,用于触使所述组件执行所述动作命令,得到处理后动作节点,并触发确定单元执行确定当前需要处理的动作节点的操作,直至所述树结构中的所有动作节点处理完毕;
组装单元,用于根据所述树结构对所有处理后动作节点进行组装,得到制作结果。
一种计算机***,包括本发明实施例提供的任一种动画制作装置。
本发明实施例采用获取需要制作的动画的树结构,该树结构包括多个动作节点;根据该树结构确定当前需要处理的动作节点,并为该当前需要处理的动作节点选择组件和该组件需要执行的动作,根据确定的动作从动作集合中调用相应的动作命令,然后触使该组件执行这些动作命令,得到处理后动作节点,并返回执行确定当前需要处理的动作节点的步骤,直至该树结构中的所有动作节点处理完毕,最后根据该树结构对所有处理后动作节点进行组装,便可得到制作结果,即得到所需要制作的动画。由于在该方案中,可以灵活地获取组件和该组件需要执行的动作,并触使该组件执行根据该动作调用的动作命令,以得到相应的处理后动作节点,然后再根据树结构对各个动作节点所对应的处理后动作节点进行组装,从而完成对动画的制作,而无需如现有技术般,按照时间轴逐帧进行制作,大大降低了制作难度,以及提高了制作效率,而且,由于在该方案中,主要是以动作节点为单位,因此,相对于现有以帧为单位而言,也便于后续修改和扩展,而且,数据量也较少。也就是说,该方案不仅实现简单、制作效率高,修改方便、以及扩展性较好,而且就制作同等的动画而言,相对于现有技术,本方案输出的数据文件也较小。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1a是本发明实施例提供动画制作方法的流程图;
图1b本发明实施例中所需制作的动画的第1层的示意图;
图1c本发明实施例中所需制作的动画的第2层的示意图;
图1d本发明实施例中所需制作的动画的第3层的示意图;
图1e本发明实施例中所需制作的动画的第4层的示意图;
图1f本发明实施例中所需制作的动画的第5层的示意图;
图1g本发明实施例中所需制作的动画的第6层的示意图;
图1h本发明实施例中所需制作的动画的第7层的示意图;
图1i本发明实施例中所需制作的动画的第8层的示意图;
图1j本发明实施例中所需制作的动画的树结构的示意图;
图1k本发明实施例中所需制作的动画的示意图;
图2a是本发明实施例提供动画制作装置的结构框图;
图2b是本发明实施例提供动画制作方法的另一流程图;
图3是本发明实施例提供动画制作装置的结构示意图;
图4是本发明实施例提供终端的结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明实施例提供一种动画制作方法、装置和***。以下分别进行详细说明。
实施例一、
本实施例将从动画制作装置的角度进行描述,该动画制作装置具体可以集成在终端中,该终端具体可以包括智能手机、平板电脑、膝上型便携计算机和台式计算机等等。
一种动画制作方法,包括:获取需要制作的动画的树结构,其中,该树结构包括多个动作节点;根据该树结构确定当前需要处理的动作节点,并为该当前需要处理的动作节点选择组件和所述组件需要执行的动作;根据确定的动作从动作集合中调用相应的动作命令;触使该组件执行该动作命令,得到处理后动作节点,并返回执行确定当前需要处理的动作节点的步骤,直至该树结构中的所有动作节点处理完毕;根据该树结构对所有处理后动作节点进行组装,得到制作结果,即得到需要制作的动画,为了描述方便,在本发明实施例中,将以采用传统时间帧方案制作而成的动画称为“帧动画”。“帧动画”是一种特殊的基本动作,本发明实施例为了兼容传统时间帧动画,把它们封装成一种有时间属性的基本动作。
如图1a所示,一种动画制作方法,具体流程可以如下:
101、获取需要制作的动画的树结构,其中,该树结构包括多个动作节点。
例如,具体可以参考序列帧效果截图,对需要制作的动画按照元素层次关系进行分层,比如,可以一个元素作为一个层次,等等,此外,还可以记录每一个元素的特征,比如从出现到消失发生了哪些动作,以及每个动作的开始时间和结束时间,等等,这样,这些层次之间的关系便可以构成一个树结构。
比如,如图1b至图1i所示,如果需要制作一个关于“洗髓丹”的生成的动画,则可以根据其组成元素分成8个层次,如下:
第1层:六个闪烁的红色图腾,在第2帧出现,在第100帧开始变淡,在第114帧基本消失,可参见图1b。
第2层:转轮A,在第2帧慢慢出现,在第11帧最亮,在第22帧开始逆时针转120度,在第100帧开始变淡,在第114帧消失,可参见图1c。
第3层:转轮B,基本与第2层的相同,不同转轮B为顺时针转120度,即转轮B在第2帧慢慢出现,在第11帧最亮,在第22帧开始顺时针转120度,在第100帧开始变淡,在第114帧消失,可参见图1d。
第4层:3个卡牌,分别在第2帧、第4帧和第5帧出现,3个蓝色小球,分别在第1帧、第3帧和第5帧出现,这6个卡牌在第7帧开始变小,在第19帧消失,可参见图1e。
第5层:6个火球聚集的“帧动画”,在第6帧出现,播放完即消失,可参见图1f。
第6层:6个球的圆周运动,在第29帧出现,顺时针转720度,在第78帧慢慢变淡,在第80帧消失,可参见图1g。
第7层:洗髓丹生成的“帧动画”,在第80帧出现,播放完即消失,可参见图1h。
第8层:最终生成的洗髓丹,在第115帧出现,可参见图1i。
根据上述的分层关系,便可以得到一个关于“洗髓丹”的生成的动画的树结构,例如,如果将该关于“洗髓丹”的生成的动画作为动作节点0,将第1层作为动作节点1,将第2层作为动作节点2,将第3层作为动作节点3,将第4层作为动作节点4,将第5层作为动作节点5,将第6层作为动作节点6,将第7层作为动作节点7,将第8层作为动作节点8,则可以得到如图1j所示的树结构。
此外,在获取需要制作的动画的树结构之后,还可以对所述树结构进行修改,比如,对树结构中的动作节点进行复制、剪切、粘贴、移动、删除、添加、节点重命名和/或节点属性编辑等。
102、根据该获取到的树结构确定当前需要处理的动作节点,并为该当前需要处理的动作节点选择组件和该组件需要执行的动作,然后执行步骤103。
其中,组件指的是需要执行动作的物体,而动作则可以包括基本动作和复合动作;基本动作指的是基础的、原子的动作,可以包括立即显现、立即消失、移动、缩放、旋转、渐显、渐渐到、渐隐、闪烁和/或延迟等,复合动作主要由多个动作(基本动作或复合动作)组合而成,也称为“过程”,可以包括顺序播放、同时播放和/或重复等,复合动作还可以嵌套复合动作。其中,每个动作还可以包括动作属性,比如包括动作的开始执行的时间、动作持续的时间和/或动作结束的时间,等等。
例如,以上述制作一个关于“洗髓丹”的生成的动画为例,若确定当前需要处理的动作节点为“动作节点1”,则可以确定组件为“六个闪烁的红色图腾”,动作为“立即显现”和“渐渐到”,具体为在第2帧出现,在第100帧开始变淡,在第114帧基本消失。
又例如,若确定当前需要处理的动作节点为“动作节点2”,则可以确定组件为“转轮A”,动作为“渐显”、“旋转”和“渐隐”,具体为在第2帧慢慢出现,在第11帧最亮,在第22帧开始逆时针转120度,在第100帧开始变淡,在第114帧消失,等等,以此类推,其他的动作节点与此类似,在此不再列举。
需说明的是,如果在步骤101中,已经对树结构进行了修改,则此时需要根据修改后的树结构来确定当前需要处理的动作节点,在此不再赘述。
103、根据确定的动作从动作集合中调用相应的动作命令。
例如,如果在步骤102中,确定动作为“立即显现”、“渐渐到”,则调用“立即显现”的命令和“渐渐到”的命令。
104、触使该组件执行这些动作命令,得到处理后动作节点,并返回执行确定当前需要处理的动作节点的步骤,即返回执行步骤102,直至该树结构中的所有动作节点处理完毕,比如,可以判断该树结构中的所有动作节点是否均处理完毕,若是,则执行步骤105,若否,则返回执行步骤102。
例如,以当前需要处理的动作节点为“动作节点1”为例,则此时可以触使“六个闪烁的红色图腾”分别执行“立即显现”的命令和“渐渐到”的命令,具体为在第2帧出现,在第100帧开始变淡,在第114帧基本消失,在执行完毕后,便可处理另一个动作节点,即返回执行确定当前需要处理的动作节点的步骤,比如将“动作节点2”作为新的“当前需要处理的动作节点”,等等,以此类推,直至将该结构树中的所有动作节点处理完毕。
需说明的是,为了描述方便,处理后动作节点在本发明实施例中一般为“演员”,它是一种特殊的复合动作,内部包括一个组件与一个自有动作。其中,该自有动作可以是基本动作,也可以是复合动作,因此演员可以内含一个组件与一个演员。即实现了演员的嵌套关系。可以更加方便的扩展。
105、根据该树结构对所有处理后动作节点进行组装,得到制作结果。
例如,具体可以将该处理后动作节点作为层,并按照该树结构所指示的层次关系依次对各个层进行组合,得到制作结果。
比如,以上述制作一个关于“洗髓丹”的生成的动画为例,则此时可以采用如步骤101所示的层次关系依次将各个层进行组合,得到制作结果,即得到关于“洗髓丹”的生成的动画,例如,参见图1k。
需说明的是,如果树结构已经进行了修改,则此时需要根据修改后的树结构对所有处理后动作节点进行组装,得到制作结果。
可选的,除了在获取需要制作的动画的树结构之后,可以对树结构进行修改之外,在得到制作结果之后,也可以通过对树结构进行修改,来实现对制作结果作进一步修改的目的,即在步骤“根据该树结构对所有处理后动作节点进行组装,得到制作结果”之后,该动画制作方法还可以包括:
对该树结构进行修改,根据修改后的树结构对所述制作结果进行修改。其中,该对树结构的修改可以包括对树结构中的动作节点进行复制、剪切、粘贴、移动、删除、添加、节点重命名和/或节点属性编辑等。
其中,根据修改后的树结构对所述制作结果进行修改具体可以包括:
根据该修改后的树结构确定改动的动作节点;
若该改动的动作节点为新添加的动作节点或节点属性被重新编辑的动作节点,则为该改动的动作节点选择组件和该组件需要执行的动作,根据确定的动作从动作集合中调用相应的动作命令,触使该组件执行所述动作命令,得到该改动的动作节点对应的处理后动作节点,根据该修改后的树结构在该制作结果中添加该改动的动作节点对应的处理后动作节点;
若该改动的动作节点为复制的动作节点,则获取被复制的动作节点所对应的处理后动作节点,作为被该改动的动作节点对应的处理后动作节点,根据该修改后的树结构在该制作结果中添加该改动的动作节点对应的处理后动作节点;
若该改动的动作节点为移动后的动作节点,则获取被移动的动作节点所对应的处理后动作节点,作为该改动的动作节点对应的处理后动作节点,根据该修改后的树结构在该制作结果中添加该改动的动作节点对应的处理后动作节点;
若该改动的动作节点为被剪切的动作节点或被删除的动作节点或被移走的动作节点,则根据该修改后的树结构在该制作结果中删除该被剪切的动作节点所对应的处理后动作节点或被删除的动作节点所对应的处理后动作节点或被移走的动作节点所对应的处理后动作节点;
若该改动的动作节点为被重命名的动作节点,则该修改后的树结构在该制作结果中对该被重命名的动作节点的节点名称进行修改。
由上可知,本实施例采用获取需要制作的动画的树结构,该树结构包括多个动作节点;根据该树结构确定当前需要处理的动作节点,并为该当前需要处理的动作节点选择组件和该组件需要执行的动作,根据确定的动作从动作集合中调用相应的动作命令,然后触使该组件执行这些动作命令,得到处理后动作节点,并返回执行确定当前需要处理的动作节点的步骤,直至该树结构中的所有动作节点处理完毕,最后根据该树结构对所有处理后动作节点进行组装,便可得到制作结果,即得到所需要制作的动画。由于在该方案中,可以灵活地获取组件和该组件需要执行的动作,并触使该组件执行根据该动作调用的动作命令,以得到相应的处理后动作节点,然后再根据树结构对各个动作节点所对应的处理后动作节点进行组装,从而完成对动画的制作,而无需如现有技术般,按照时间轴逐帧进行制作,大大降低了制作难度,以及提高了制作效率,而且,由于在该方案中,主要是以动作节点为单位,因此,相对于现有以帧为单位而言,也便于后续修改和扩展,而且,数据量也较少。也就是说,该方案不仅实现简单、制作效率高,修改方便、以及扩展性较好,而且就制作同等的动画而言,相对于现有技术,本方案输出的数据文件也较小。
实施例二、
根据实施例一所描述的方法,以下将举例作进一步详细说明。
如图2a所示,该动画制作装置可以包括数据集合和动画组装器,其中,数据集合可以包括动作集合模块、组件集合模块和演员集合模块等,而动画组装器则可以包括接口模块和控制模块,该接口模块包括动作调用接口和组件调用接口等,具体可以如下:
(一)数据集合;
1、动作集合模块;
该动作集合模块包括各种动作所对应的动作命令,该动作可以是包括基本动作和复合动作;基本动作指的是基础的、原子的动作,可以包括立即显现、立即消失、移动、缩放、旋转、渐显、渐隐、渐渐到、闪烁和/或延迟等,复合动作主要由多个动作(基本动作或复合动作)组合而成,也称为“过程”,可以包括顺序播放、同时播放和/或重复等,复合动作还可以嵌套复合动作。其中,每个动作还可以包括动作属性,比如包括动作的开始执行的时间、动作持续的时间和/或动作结束的时间,等等。
例如,该动作集合模块中可以包括:“立即显现”的命令、“立即消失”的命令、“移动”的命令、“缩放”的命令、“缩放”的命令、“渐显”的命令、“渐隐”的命令、“渐渐到”的命令、“闪烁”的命令、“延迟”的命令、“顺序播放”的命令、“同时播放”的命令和/或“重复”的命令等,这些命令可供动作解析引擎调用。
该动作集合模块中所保存的动作命令可以根据实际应用的需求进行设置,在此不再赘述。
2、组件集合模块;
该组件集合模块包括各种组件,即包括各种需要执行动作的物体的模型,比如球体、方形、人像和/或转轮等等。
该组件集合模块中所保存的组件可以根据实际应用的需求进行设置,在此不再赘述。
3、演员集合模块;
演员,即本发明实施例所说的“处理后动作节点”,它是一种特殊的复合动作,内部包括一个组件与一个自有动作。其中,该自有动作可以是基本动作,也可以是复合动作,因此演员可以内含一个组件与一个演员。即实现了演员的嵌套关系。可以更加方便的扩展。该演员集合模块主要用于保存各个动作节点所对应的“处理后动作节点”。
(二)动画组装器;
1、控制模块;
该控制模块,主要用于获取需要制作的动画的树结构,根据该获取到的树结构确定当前需要处理的动作节点,为该当前需要处理的动作节点选择组件,并控制组件调用接口从组件集合模块中为该当前需要处理的动作节点调用所需的组件,以及为选择的组件选择该组件需要执行的动作,并控制动作调用接口从动作集合模块中调用相应的动作命令,以及触使该组件执行这些动作命令,得到处理后动作节点,将处理后动作节点保存在演员集合模块中,在树结构中的所有动作节点处理完毕后,根据该树结构从演员集合模块中调用相应的处理后动作节点,并对处理后动作节点进行组装,得到并输出制作结果。
2、组件调用接口;
该组件调用接口,主要用于在控制模块的控制下,从组件集合模块中为该当前需要处理的动作节点调用所需的组件,等等。
3、动作调用接口;
该动作调用接口,主要用于在控制模块的控制下,从动作集合模块中调用相应的动作命令,等等。
基于上述的动画制作装置,以下将对该动画制作装置的具体执行流程进行说明。
如图2b所示,一种动画制作方法,具体流程可以如下:
201、动画制作装置的控制模块获取需要制作的动画的树结构,其中,该树结构包括多个动作节点。
其中,该树结构可以由用户根据需求建立,然后由控制模块接收用户输入的树结构。
例如,以制作一个关于“洗髓丹”的生成的动画(参见图1b至图1i)为例,其中,根据其组成元素分成8个层次,如下:
第1层:六个闪烁的红色图腾,在第2帧出现,在第100帧开始变淡,在第114帧基本消失。
第2层:转轮A,在第2帧慢慢出现,在第11帧最亮,在第22帧开始逆时针转120度,在第100帧开始变淡,在第114帧消失。
第3层:转轮B,基本与第2层的相同,不同转轮B为顺时针转120度,即转轮B在第2帧慢慢出现,在第11帧最亮,在第22帧开始顺时针转120度,在第100帧开始变淡,在第114帧消失。
第4层:3个卡牌,分别在第2帧、第4帧和第5帧出现,3个蓝色小球,分别在第1帧、第3帧和第5帧出现,这6个卡牌在第7帧开始变小,在第19帧消失。
第5层:6个火球聚集的“帧动画”,在第6帧出现,播放完即消失。
第6层:6个球的圆周运动,在第29帧出现,顺时针转720度,在第78帧慢慢变淡,在第80帧消失。
第7层:洗髓丹生成的“帧动画”,在第80帧出现,播放完即消失。
第8层:最终生成的洗髓丹,在第115帧出现。
根据上述的分层关系,便可以得到一个关于“洗髓丹”的生成的动画的树结构,例如,如果将该关于“洗髓丹”的生成的动画作为动作节点0,将第1层作为动作节点1,将第2层作为动作节点2,将第3层作为动作节点3,将第4层作为动作节点4,将第5层作为动作节点5,将第6层作为动作节点6,将第7层作为动作节点7,将第8层作为动作节点8,则可以得到如图1j所示的树结构。
此外,在获取需要制作的动画的树结构之后,还可以对所述树结构进行修改,比如,对树结构中的动作节点进行复制、剪切、粘贴、移动、删除、添加、节点重命名和/或节点属性编辑等。
202、动画制作装置的控制模块根据该获取到的树结构确定当前需要处理的动作节点。
例如,控制模块可以自动依次获取树结构中的动作节点,以作为当前需要处理的动作节点,也可以接收由用户从树结构中指定的动作节点,以作为当前需要处理的动作节点。
需说明的是,如果在步骤201中,已经对树结构进行了修改,则此时需要根据修改后的树结构来确定当前需要处理的动作节点,在此不再赘述。
203、动画制作装置的控制模块为该当前需要处理的动作节点选择组件,并控制组件调用接口从组件集合模块中为该当前需要处理的动作节点调用所需的组件,以及为选择的组件选择该组件需要执行的动作,并控制动作调用接口从动作集合模块中调用相应的动作命令。
其中,组件指的是需要执行动作的物体,而动作则可以包括基本动作和复合动作;基本动作指的是基础的、原子的动作,可以包括立即显现、立即消失、移动、缩放、旋转、渐显、渐隐、渐渐到、闪烁和/或延迟等,复合动作主要由多个动作(基本动作或复合动作)组合而成,也称为“过程”,可以包括顺序播放、同时播放和/或重复等,复合动作还可以嵌套复合动作。其中,每个动作还可以包括动作属性,比如包括动作的开始执行的时间、动作持续的时间和/或动作结束的时间,等等。
例如,以上述制作一个关于“洗髓丹”的生成的动画为例,若确定当前需要处理的动作节点为“动作节点1”,则可以确定组件为“六个闪烁的红色图腾”,动作为“立即显现”和“渐渐到”,具体为在第2帧出现,在第100帧开始变淡,在第114帧基本消失。
又例如,若确定当前需要处理的动作节点为“动作节点2”,则可以确定组件为“转轮A”,动作为“渐显”、“旋转”和“渐隐”,具体为在第2帧慢慢出现,在第11帧最亮,在第22帧开始逆时针转120度,在第100帧开始变淡,在第114帧消失,等等,以此类推,其他的动作节点与此类似,在此不再列举。
204、动画制作装置的控制模块触使该组件执行这些动作命令,得到处理后动作节点,并返回执行确定当前需要处理的动作节点的步骤,即返回执行步骤202,直至该树结构中的所有动作节点处理完毕。
例如,以当前需要处理的动作节点为“动作节点1”为例,则此时可以触使“六个闪烁的红色图腾”分别执行“立即显现”的命令和“渐渐到”的命令,具体为在第2帧出现,在第100帧开始变淡,在第114帧基本消失,在执行完毕后,便可处理另一个动作节点,即返回执行确定当前需要处理的动作节点的步骤,比如将“动作节点2”作为新的“当前需要处理的动作节点”,等等,以此类推,直至将该结构树中的所有动作节点处理完毕。
需说明的是,在得到处理后动作节点后,还可以预先浏览已经得到的各个处理后动作节点的动画效果,以查看是否符合需求,如果不符合,则可以进行修改。
205、动画制作装置的控制模块根据该树结构从演员集合模块中调用相应的处理后动作节点,并对处理后动作节点进行组装,得到并输出制作结果。
例如,该控制模块具体可以将该处理后动作节点作为层,并按照该树结构所指示的层次关系依次对各个层进行组合,得到制作结果。
比如,以上述制作一个关于“洗髓丹”的生成的动画为例,则此时可以采用如步骤201所示的层次关系依次将各个层进行组合,得到制作结果,即得到关于“洗髓丹”的生成的动画。
由上可知,本实施例采用获取需要制作的动画的树结构,该树结构包括多个动作节点;根据该树结构确定当前需要处理的动作节点,并为该当前需要处理的动作节点选择组件和该组件需要执行的动作,根据确定的动作从动作集合中调用相应的动作命令,然后触使该组件执行这些动作命令,得到处理后动作节点,并返回执行确定当前需要处理的动作节点的步骤,直至该树结构中的所有动作节点处理完毕,最后根据该树结构对所有处理后动作节点进行组装,便可得到制作结果,即得到所需要制作的动画。由于在该方案中,可以灵活地获取组件和该组件需要执行的动作,并触使该组件执行根据该动作调用的动作命令,以得到相应的处理后动作节点,然后再根据树结构对各个动作节点所对应的处理后动作节点进行组装,从而完成对动画的制作,而无需如现有技术般,按照时间轴逐帧进行制作,大大降低了制作难度,以及提高了制作效率,而且,由于在该方案中,主要是以动作节点为单位,因此,相对于现有以帧为单位而言,也便于后续修改和扩展,而且,数据量也较少。也就是说,该方案不仅实现简单、制作效率高,修改方便、以及扩展性较好,而且就制作同等的动画而言,相对于现有技术,本方案输出的数据文件也较小。
实施例三、
在实施例二的基础上,可选的,除了在获取需要制作的动画的树结构之后,可以对树结构进行修改之外,在得到制作结果之后,也可以通过对树结构进行修改,来实现对制作结果作进一步修改的目的,即在步骤“根据该树结构对所有处理后动作节点进行组装,得到制作结果”之后,该动画制作方法还可以包括:
动画制作装置的控制模块对该树结构进行修改,根据修改后的树结构对所述制作结果进行修改。
例如,该控制模块具体可以接收用户输入的关于树结构的修改命令,然后根据该修改命令对该树结构进行修改,并根据修改后的树结构对所述制作结果进行修改。
其中,该对树结构的修改可以包括:对树结构中的动作节点进行复制、剪切、粘贴、移动、删除、添加、节点重命名和/或节点属性编辑等。
其中,树结构修改方式的不同,其对制作结果的影响也不同,以下将对如何根据修改后的树结构对所述制作结果进行修改进行详细说明,如下:
根据该修改后的树结构确定改动的动作节点;
若该改动的动作节点为新添加的动作节点或节点属性被重新编辑的动作节点,则为该改动的动作节点选择组件和该组件需要执行的动作,根据确定的动作从动作集合中调用相应的动作命令,触使该组件执行该动作命令,得到该改动的动作节点对应的处理后动作节点,根据该修改后的树结构在该制作结果中添加该改动的动作节点对应的处理后动作节点;也就是说,如果该改动的动作节点为新添加的动作节点或节点属性被重新编辑的动作节点,则表明需要添加新的元素,因此,将该改动的动作节点作为新的动作节点来进行处理。
若该改动的动作节点为复制的动作节点,则获取被复制的动作节点所对应的处理后动作节点,作为被该改动的动作节点对应的处理后动作节点,根据该修改后的树结构在该制作结果中添加该改动的动作节点对应的处理后动作节点;也就是说,如果该改动的动作节点为复制的动作节点,则表明该元素与某个元素相同,因此,它们的处理后动作节点也相同,所以,为了提高处理效率,可以将被复制的动作节点所对应的处理后动作节点直接作为该改动的动作节点所对应的处理后动作节点。
若该改动的动作节点为移动后的动作节点,则获取被移动的动作节点所对应的处理后动作节点,作为该改动的动作节点对应的处理后动作节点,根据该修改后的树结构在该制作结果中添加该改动的动作节点对应的处理后动作节点;也就是说,如果该改动的动作节点为移动后的动作节点,则表明对于整个动画而言,并没有添加新的元素,而仅仅将其中的某个元素的位置进行了调整,因此,为了提高处理效率,此时也无需将该改动的动作节点作为新的动作节点来进行处理,而是直接沿用了该移动了的动作节点在原位置时所对应的处理后动作节点。
若该改动的动作节点为被剪切的动作节点或被删除的动作节点或被移走的动作节点,则根据该修改后的树结构在该制作结果中删除该被剪切的动作节点所对应的处理后动作节点或被删除的动作节点所对应的处理后动作节点或被移走的动作节点所对应的处理后动作节点;也就是说,由于该改动的动作节点为被剪切的动作节点或被删除的动作节点或被移走的动作节点,因此,表明位于原位置的元素已经被删除,因此,直接删除即可。
若该改动的动作节点为被重命名的动作节点,则该修改后的树结构在该制作结果中对该被重命名的动作节点的节点名称进行修改。
由上可知,本实施例除了可以实现如实施例二所述的有益效果之外,进一步的,还可以灵活方便地修改其中的动作节点(元素),大大提高了扩展性和处理效率。
实施例四、
为了更好地实施以上方法,本发明实施例还提供一种动画制作装置,如图3所示,该动画制作装置包括获取单元301、确定单元302、调用单元303、执行单元304和组装单元305。
获取单元301,用于获取需要制作的动画的树结构,其中,该树结构包括多个动作节点。
例如,具体可以参考序列帧效果截图,对需要制作的动画按照元素层次关系进行分层,比如,可以一个元素作为一个层次,等等,此外,还可以记录每一个元素的特征,比如从出现到消失发生了哪些动作,以及每个动作的开始时间和结束时间,等等,这样,这些层次之间的关系便可以构成一个树结构。比如,可参见图1b至图1i所示的例子,详见前面的实施例,在此不再赘述。
确定单元302,用于根据该树结构确定当前需要处理的动作节点,并为该当前需要处理的动作节点选择组件和该组件需要执行的动作;
其中,组件指的是需要执行动作的物体,而动作则可以包括基本动作和复合动作;基本动作指的是基础的、原子的动作,可以包括立即显现、立即消失、移动、缩放、旋转、渐显、渐隐、渐渐到、闪烁和/或延迟等,复合动作主要由多个动作(基本动作或复合动作)组合而成,也称为“过程”,可以包括顺序播放、同时播放和/或重复等,复合动作还可以嵌套复合动作。其中,每个动作还可以包括动作属性,比如包括动作的开始执行的时间、动作持续的时间和/或动作结束的时间,等等。
调用单元303,用于根据确定的动作从动作集合中调用相应的动作命令。
执行单元304,用于触使该组件执行这些动作命令,得到处理后动作节点,并触发确定单元执行确定当前需要处理的动作节点的操作,直至该树结构中的所有动作节点处理完毕;
组装单元305,用于根据该树结构对所有处理后动作节点进行组装,得到制作结果。例如,具体可以如下:
组装单元305,具体可以用于将该处理后动作节点作为层,并按照该树结构所指示的层次关系依次对各个层进行组合,得到制作结果。
可选的,此外,在获取需要制作的动画的树结构之后,还可以对所述树结构进行修改,比如,对树结构中的动作节点进行复制、剪切、粘贴、移动、删除、添加、节点重命名和/或节点属性编辑等。即该动画制作装置还可以包括修改单元;
修改单元,用于在获取需要制作的动画的树结构之后,对该树结构进行修改,其中,修改可以包括对树结构中的动作节点进行复制、剪切、粘贴、移动、删除、添加、节点重命名和/或节点属性编辑等。
则此时,确定单元302,具体可以用于根据修改后的树结构确定当前需要处理的动作节点;
组装单元305,具体可以用于根据修改后的树结构对所有处理后动作节点进行组装,得到制作结果。
可选的,除了在获取需要制作的动画的树结构之后,可以对树结构进行修改之外,在得到制作结果之后,也可以通过对树结构进行修改,来实现对制作结果作进一步修改的目的,即:
修改单元,还可以用于在得到制作结果之后,对该树结构进行修改,根据修改后的树结构对所述制作结果进行修改。其中,对结构树进行的修改可以包括对树结构中的动作节点进行复制、剪切、粘贴、移动、删除、添加、节点重命名和/或节点属性编辑。
例如,该修改单元,具体可以用于执行如下操作:
根据该修改后的树结构确定改动的动作节点;
若该改动的动作节点为新添加的动作节点或节点属性被重新编辑的动作节点,则为该改动的动作节点选择组件和该组件需要执行的动作,根据确定的动作从动作集合中调用相应的动作命令,触使该组件执行所述动作命令,得到该改动的动作节点对应的处理后动作节点,根据该修改后的树结构在该制作结果中添加该改动的动作节点对应的处理后动作节点;
若该改动的动作节点为复制的动作节点,则获取被复制的动作节点所对应的处理后动作节点,作为被该改动的动作节点对应的处理后动作节点,根据该修改后的树结构在该制作结果中添加该改动的动作节点对应的处理后动作节点;
若该改动的动作节点为移动后的动作节点,则获取被移动的动作节点所对应的处理后动作节点,作为该改动的动作节点对应的处理后动作节点,根据该修改后的树结构在该制作结果中添加该改动的动作节点对应的处理后动作节点;
若该改动的动作节点为被剪切的动作节点或被删除的动作节点或被移走的动作节点,则根据该修改后的树结构在该制作结果中删除该被剪切的动作节点所对应的处理后动作节点或被删除的动作节点所对应的处理后动作节点或被移走的动作节点所对应的处理后动作节点;
若该改动的动作节点为被重命名的动作节点,则该修改后的树结构在该制作结果中对该被重命名的动作节点的节点名称进行修改。
具体实现时,以上单元可以作为独立的实体来实现,也可以进行任意组合,作为同一或若干个实体来实现,以上各个单元的具体实施可参见前面的实施例。
该动画制作装置具体可以集成在终端中,该终端具体可以包括智能手机、平板电脑、膝上型便携计算机和台式计算机等等。
由上可知,本实施例的动画制作装置的获取单元301可以获取需要制作的动画的树结构,该树结构包括多个动作节点,由确定单元302根据该树结构确定当前需要处理的动作节点,并为该当前需要处理的动作节点选择组件和该组件需要执行的动作,然后由调用单元303根据确定的动作从动作集合中调用相应的动作命令,并由执行单元304触使该组件执行这些动作命令,得到处理后动作节点,并返回执行确定当前需要处理的动作节点的步骤,直至该树结构中的所有动作节点处理完毕,最后由组装单元305根据该树结构对所有处理后动作节点进行组装,便可得到制作结果,即得到所需要制作的动画。由于在该方案中,可以灵活地获取组件和该组件需要执行的动作,并触使该组件执行根据该动作调用的动作命令,以得到相应的处理后动作节点,然后再根据树结构对各个动作节点所对应的处理后动作节点进行组装,从而完成对动画的制作,而无需如现有技术般,按照时间轴逐帧进行制作,大大降低了制作难度,以及提高了制作效率,而且,由于在该方案中,主要是以动作节点为单位,因此,相对于现有以帧为单位而言,也便于后续修改和扩展,而且,数据量也较少。也就是说,该方案不仅实现简单、制作效率高,修改方便、以及扩展性较好,而且就制作同等的动画而言,相对于现有技术,本方案输出的数据文件也较小。
实施例五、
相应的,本发明实施例还提供一种计算机***,包括本发明实施例提供的任一种动画制作装置,具体可参见实施例四,例如,具体可以如下:
动画制作装置,用于获取需要制作的动画的树结构,其中,该树结构包括多个动作节点;根据该树结构确定当前需要处理的动作节点,并为该当前需要处理的动作节点选择组件和该组件需要执行的动作;根据确定的动作从动作集合中调用相应的动作命令;触使该组件执行该动作命令,得到处理后动作节点,并返回执行确定当前需要处理的动作节点的步骤,直至该树结构中的所有动作节点处理完毕;根据该树结构对所有处理后动作节点进行组装,得到制作结果。
例如,动画制作装置,具体可以将该处理后动作节点作为层,并按照该树结构所指示的层次关系依次对各个层进行组合,得到制作结果。
此外,在获取需要制作的动画的树结构之后,还可以对树结构进行修改,即:
动画制作装置,还可以用于对所述树结构进行修改,其中,该对树结构的修改可以包括对树结构中的动作节点进行复制、剪切、粘贴、移动、删除、添加、节点重命名和/或节点属性编辑等。然后根据该修改后的树结构确定当前需要处理的动作节点,并为该当前需要处理的动作节点选择组件和该组件需要执行的动作;根据确定的动作从动作集合中调用相应的动作命令;触使该组件执行该动作命令,得到处理后动作节点,并返回执行确定当前需要处理的动作节点的步骤,直至该修改后的树结构中的所有动作节点处理完毕,根据修改后的树结构对所有处理后动作节点进行组装,得到制作结果。
此外,除了在获取需要制作的动画的树结构之后,可以对树结构进行修改之外,在得到制作结果之后,也可以通过对树结构进行修改,来实现对制作结果作进一步修改的目的,即:
动画制作装置,还可以用于在得到制作结果之后,对该树结构进行修改,根据修改后的树结构对所述制作结果进行修改。例如具体可以如下:
根据该修改后的树结构确定改动的动作节点;
若该改动的动作节点为新添加的动作节点或节点属性被重新编辑的动作节点,则为该改动的动作节点选择组件和该组件需要执行的动作,根据确定的动作从动作集合中调用相应的动作命令,触使该组件执行所述动作命令,得到该改动的动作节点对应的处理后动作节点,根据该修改后的树结构在该制作结果中添加该改动的动作节点对应的处理后动作节点;
若该改动的动作节点为复制的动作节点,则获取被复制的动作节点所对应的处理后动作节点,作为被该改动的动作节点对应的处理后动作节点,根据该修改后的树结构在该制作结果中添加该改动的动作节点对应的处理后动作节点;
若该改动的动作节点为移动后的动作节点,则获取被移动的动作节点所对应的处理后动作节点,作为该改动的动作节点对应的处理后动作节点,根据该修改后的树结构在该制作结果中添加该改动的动作节点对应的处理后动作节点;
若该改动的动作节点为被剪切的动作节点或被删除的动作节点或被移走的动作节点,则根据该修改后的树结构在该制作结果中删除该被剪切的动作节点所对应的处理后动作节点或被删除的动作节点所对应的处理后动作节点或被移走的动作节点所对应的处理后动作节点;
若该改动的动作节点为被重命名的动作节点,则该修改后的树结构在该制作结果中对该被重命名的动作节点的节点名称进行修改。
该动画制作装置的具体实施可参见前面的实施例,在此不再赘述。
此外,该计算机***还可以包括其他的设备,在此不再赘述。
由于该计算机***可以包括本发明实施例提供的任一种动画制作装置,因此可以实现本发明实施例所提供的动画制作装置同样的有益效果,详见前面实施例,在此不再赘述。
实施例六、
相应的,本发明实施例还提供一种终端,可以集成本发明实施例提供的任一种动画制作装置,如图4所示,该终端可以包括射频(RF,RadioFrequency)电路401、包括有一个或一个以上计算机可读存储介质的存储器402、输入单元403、显示单元404、传感器405、音频电路406、无线保真(WiFi,WirelessFidelity)模块407、包括有一个或者一个以上处理核心的处理器408、以及电源409等部件。本领域技术人员可以理解,图4中示出的终端结构并不构成对终端的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。其中:
RF电路401可用于收发信息或通话过程中,信号的接收和发送,特别地,将基站的下行信息接收后,交由一个或者一个以上处理器408处理;另外,将涉及上行的数据发送给基站。通常,RF电路401包括但不限于天线、至少一个放大器、调谐器、一个或多个振荡器、用户身份模块(SIM,SubscriberIdentityModule)卡、收发信机、耦合器、低噪声放大器(LNA,LowNoiseAmplifier)、双工器等。此外,RF电路401还可以通过无线通信与网络和其他设备通信。所述无线通信可以使用任一通信标准或协议,包括但不限于全球移动通讯***(GSM,GlobalSystemofMobilecommunication)、通用分组无线服务(GPRS,GeneralPacketRadioService)、码分多址(CDMA,CodeDivisionMultipleAccess)、宽带码分多址(WCDMA,WidebandCodeDivisionMultipleAccess)、长期演进(LTE,LongTermEvolution)、电子邮件、短消息服务(SMS,ShortMessagingService)等。
存储器402可用于存储软件程序以及模块,处理器408通过运行存储在存储器402的软件程序以及模块,从而执行各种功能应用以及数据处理。存储器402可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作***、至少一个功能所需的应用程序(比如声音播放功能、图像播放功能等)等;存储数据区可存储根据终端的使用所创建的数据(比如音频数据、电话本等)等。此外,存储器402可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他易失性固态存储器件。相应地,存储器402还可以包括存储器控制器,以提供处理器408和输入单元403对存储器402的访问。
输入单元403可用于接收输入的数字或字符信息,以及产生与用户设置以及功能控制有关的键盘、鼠标、操作杆、光学或者轨迹球信号输入。具体地,在一个具体的实施例中,输入单元403可包括触敏表面以及其他输入设备。触敏表面,也称为触摸显示屏或者触控板,可收集用户在其上或附近的触摸操作(比如用户使用手指、触笔等任何适合的物体或附件在触敏表面上或在触敏表面附近的操作),并根据预先设定的程式驱动相应的连接装置。可选的,触敏表面可包括触摸检测装置和触摸控制器两个部分。其中,触摸检测装置检测用户的触摸方位,并检测触摸操作带来的信号,将信号传送给触摸控制器;触摸控制器从触摸检测装置上接收触摸信息,并将它转换成触点坐标,再送给处理器408,并能接收处理器408发来的命令并加以执行。此外,可以采用电阻式、电容式、红外线以及表面声波等多种类型实现触敏表面。除了触敏表面,输入单元403还可以包括其他输入设备。具体地,其他输入设备可以包括但不限于物理键盘、功能键(比如音量控制按键、开关按键等)、轨迹球、鼠标、操作杆等中的一种或多种。
显示单元404可用于显示由用户输入的信息或提供给用户的信息以及终端的各种图形用户接口,这些图形用户接口可以由图形、文本、图标、视频和其任意组合来构成。显示单元404可包括显示面板,可选的,可以采用液晶显示器(LCD,LiquidCrystalDisplay)、有机发光二极管(OLED,OrganicLight-EmittingDiode)等形式来配置显示面板。进一步的,触敏表面可覆盖显示面板,当触敏表面检测到在其上或附近的触摸操作后,传送给处理器408以确定触摸事件的类型,随后处理器408根据触摸事件的类型在显示面板上提供相应的视觉输出。虽然在图4中,触敏表面与显示面板是作为两个独立的部件来实现输入和输入功能,但是在某些实施例中,可以将触敏表面与显示面板集成而实现输入和输出功能。
终端还可包括至少一种传感器405,比如光传感器、运动传感器以及其他传感器。具体地,光传感器可包括环境光传感器及接近传感器,其中,环境光传感器可根据环境光线的明暗来调节显示面板的亮度,接近传感器可在终端移动到耳边时,关闭显示面板和/或背光。作为运动传感器的一种,重力加速度传感器可检测各个方向上(一般为三轴)加速度的大小,静止时可检测出重力的大小及方向,可用于识别手机姿态的应用(比如横竖屏切换、相关游戏、磁力计姿态校准)、振动识别相关功能(比如计步器、敲击)等;至于终端还可配置的陀螺仪、气压计、湿度计、温度计、红外线传感器等其他传感器,在此不再赘述。
音频电路406、扬声器,传声器可提供用户与终端之间的音频接口。音频电路406可将接收到的音频数据转换后的电信号,传输到扬声器,由扬声器转换为声音信号输出;另一方面,传声器将收集的声音信号转换为电信号,由音频电路406接收后转换为音频数据,再将音频数据输出处理器408处理后,经RF电路401以发送给比如另一终端,或者将音频数据输出至存储器402以便进一步处理。音频电路406还可能包括耳塞插孔,以提供外设耳机与终端的通信。
WiFi属于短距离无线传输技术,终端通过WiFi模块407可以帮助用户收发电子邮件、浏览网页和访问流式媒体等,它为用户提供了无线的宽带互联网访问。虽然图4示出了WiFi模块407,但是可以理解的是,其并不属于终端的必须构成,完全可以根据需要在不改变发明的本质的范围内而省略。
处理器408是终端的控制中心,利用各种接口和线路连接整个手机的各个部分,通过运行或执行存储在存储器402内的软件程序和/或模块,以及调用存储在存储器402内的数据,执行终端的各种功能和处理数据,从而对手机进行整体监控。可选的,处理器408可包括一个或多个处理核心;优选的,处理器408可集成应用处理器和调制解调处理器,其中,应用处理器主要处理操作***、用户界面和应用程序等,调制解调处理器主要处理无线通信。可以理解的是,上述调制解调处理器也可以不集成到处理器408中。
终端还包括给各个部件供电的电源409(比如电池),优选的,电源可以通过电源管理***与处理器408逻辑相连,从而通过电源管理***实现管理充电、放电、以及功耗管理等功能。电源409还可以包括一个或一个以上的直流或交流电源、再充电***、电源故障检测电路、电源转换器或者逆变器、电源状态指示器等任意组件。
尽管未示出,终端还可以包括摄像头、蓝牙模块等,在此不再赘述。具体在本实施例中,终端中的处理器408会按照如下的指令,将一个或一个以上的应用程序的进程对应的可执行文件加载到存储器402中,并由处理器408来运行存储在存储器402中的应用程序,从而实现各种功能:
尽管未示出,终端还可以包括摄像头、蓝牙模块等,在此不再赘述。具体在本实施例中,终端的显示单元是触摸屏显示器,终端还包括有存储器,以及一个或者一个以上的程序,其中一个或者一个以上程序存储于存储器中,且经配置以由一个或者一个以上处理器执行所述一个或者一个以上程序包含用于进行以下操作的指令:
获取需要制作的动画的树结构,其中,该树结构包括多个动作节点;根据该树结构确定当前需要处理的动作节点,并为该当前需要处理的动作节点选择组件和该组件需要执行的动作;根据确定的动作从动作集合中调用相应的动作命令;触使该组件执行该动作命令,得到处理后动作节点,并返回执行确定当前需要处理的动作节点的步骤,直至该树结构中的所有动作节点处理完毕;根据该树结构对所有处理后动作节点进行组装,得到制作结果。
其中,步骤“根据该树结构对所有处理后动作节点进行组装,得到制作结果”具体可以为:
将该处理后动作节点作为层,并按照该树结构所指示的层次关系依次对各个层进行组合,得到制作结果。
此外,在获取需要制作的动画的树结构之后,还可以对树结构进行修改,即还可以执行如下操作的指令:
对所述树结构进行修改,其中,该对树结构的修改可以包括对树结构中的动作节点进行复制、剪切、粘贴、移动、删除、添加、节点重命名和/或节点属性编辑等。
则此时,步骤“根据该树结构来确定当前需要处理的动作节点”具体为:根据修改后的树结构来确定当前需要处理的动作节点。
步骤“根据该树结构对所有处理后动作节点进行组装,得到制作结果”具体为:根据修改后的树结构对所有处理后动作节点进行组装,得到制作结果。
可选的,除了在获取需要制作的动画的树结构之后,可以对树结构进行修改之外,在得到制作结果之后,也可以通过对树结构进行修改,来实现对制作结果作进一步修改的目的,即还可以执行如下操作指令:
对该树结构进行修改,根据修改后的树结构对所述制作结果进行修改。其中,该对树结构的修改可以包括对树结构中的动作节点进行复制、剪切、粘贴、移动、删除、添加、节点重命名和/或节点属性编辑等。
其中,根据修改后的树结构对所述制作结果进行修改具体可以包括:
根据该修改后的树结构确定改动的动作节点;
若该改动的动作节点为新添加的动作节点或节点属性被重新编辑的动作节点,则为该改动的动作节点选择组件和该组件需要执行的动作,根据确定的动作从动作集合中调用相应的动作命令,触使该组件执行所述动作命令,得到该改动的动作节点对应的处理后动作节点,根据该修改后的树结构在该制作结果中添加该改动的动作节点对应的处理后动作节点;
若该改动的动作节点为复制的动作节点,则获取被复制的动作节点所对应的处理后动作节点,作为被该改动的动作节点对应的处理后动作节点,根据该修改后的树结构在该制作结果中添加该改动的动作节点对应的处理后动作节点;
若该改动的动作节点为移动后的动作节点,则获取被移动的动作节点所对应的处理后动作节点,作为该改动的动作节点对应的处理后动作节点,根据该修改后的树结构在该制作结果中添加该改动的动作节点对应的处理后动作节点;
若该改动的动作节点为被剪切的动作节点或被删除的动作节点或被移走的动作节点,则根据该修改后的树结构在该制作结果中删除该被剪切的动作节点所对应的处理后动作节点或被删除的动作节点所对应的处理后动作节点或被移走的动作节点所对应的处理后动作节点;
若该改动的动作节点为被重命名的动作节点,则该修改后的树结构在该制作结果中对该被重命名的动作节点的节点名称进行修改。
以上各个部分的具体实施可参见前面的实施例,在此不再赘述。
由上可知,本实施例的终端采用获取需要制作的动画的树结构,该树结构包括多个动作节点;根据该树结构确定当前需要处理的动作节点,并为该当前需要处理的动作节点选择组件和该组件需要执行的动作,根据确定的动作从动作集合中调用相应的动作命令,然后触使该组件执行这些动作命令,得到处理后动作节点,并返回执行确定当前需要处理的动作节点的步骤,直至该树结构中的所有动作节点处理完毕,最后根据该树结构对所有处理后动作节点进行组装,便可得到制作结果,即得到所需要制作的动画。由于在该方案中,可以灵活地获取组件和该组件需要执行的动作,并触使该组件执行根据该动作调用的动作命令,以得到相应的处理后动作节点,然后再根据树结构对各个动作节点所对应的处理后动作节点进行组装,从而完成对动画的制作,而无需如现有技术般,按照时间轴逐帧进行制作,大大降低了制作难度,以及提高了制作效率,而且,由于在该方案中,主要是以动作节点为单位,因此,相对于现有以帧为单位而言,也便于后续修改和扩展,而且,数据量也较少。也就是说,该方案不仅实现简单、制作效率高,修改方便、以及扩展性较好,而且就制作同等的动画而言,相对于现有技术,本方案输出的数据文件也较小。
本领域普通技术人员可以理解上述实施例的各种方法中的全部或部分步骤是可以通过程序来指令相关的硬件来完成,该程序可以存储于一计算机可读存储介质中,存储介质可以包括:只读存储器(ROM,ReadOnlyMemory)、随机存取记忆体(RAM,RandomAccessMemory)、磁盘或光盘等。
以上对本发明实施例所提供的一种动画制作方法、装置和***进行了详细介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。

Claims (10)

1.一种动画制作方法,其特征在于,包括:
获取需要制作的动画的树结构,所述树结构包括多个动作节点;
根据所述树结构确定当前需要处理的动作节点,并为所述当前需要处理的动作节点选择组件和所述组件需要执行的动作;
根据所述组件需要执行的动作从动作集合中调用相应的动作命令;
触使所述组件执行所述动作命令,得到处理后动作节点,并返回执行确定当前需要处理的动作节点的步骤,直至所述树结构中的所有动作节点处理完毕;
根据所述树结构对所有处理后动作节点进行组装,得到制作结果;
所述根据所述树结构对所有处理后动作节点进行组装,得到制作结果,包括:
将所述处理后动作节点作为层,并按照所述树结构所指示的层次关系依次对各个层进行组合,得到制作结果。
2.根据权利要求1所述的方法,其特征在于,所述获取需要制作的动画的树结构之后,还包括:
对所述树结构进行修改,所述修改包括对树结构中的动作节点进行复制、剪切、粘贴、移动、删除、添加、节点重命名和/或节点属性编辑;
所述根据所述树结构确定当前需要处理的动作节点包括:根据修改后的树结构确定当前需要处理的动作节点;
所述根据所述树结构对所有处理后动作节点进行组装,得到制作结果包括:根据修改后的树结构对所有处理后动作节点进行组装,得到制作结果。
3.根据权利要求1或2所述的方法,其特征在于,所述根据所述树结构对所有处理后动作节点进行组装,得到制作结果之后,还包括:
对所述树结构进行修改,所述修改包括对树结构中的动作节点进行复制、剪切、粘贴、移动、删除、添加、节点重命名和/或节点属性编辑;
根据修改后的树结构对所述制作结果进行修改。
4.根据权利要求3所述的方法,其特征在于,所述根据修改后的树结构对所述制作结果进行修改,包括:
根据所述修改后的树结构确定改动的动作节点;
若所述改动的动作节点为新添加的动作节点或节点属性被重新编辑的动作节点,则为所述改动的动作节点选择组件和所述组件需要执行的动作,根据确定的动作从动作集合中调用相应的动作命令,触使所述组件执行所述动作命令,得到所述改动的动作节点对应的处理后动作节点,根据所述修改后的树结构在所述制作结果中添加所述改动的动作节点对应的处理后动作节点;
若所述改动的动作节点为复制的动作节点,则获取被复制的动作节点所对应的处理后动作节点,作为被所述改动的动作节点对应的处理后动作节点,根据所述修改后的树结构在所述制作结果中添加所述改动的动作节点对应的处理后动作节点;
若所述改动的动作节点为移动后的动作节点,则获取被移动的动作节点所对应的处理后动作节点,作为所述改动的动作节点对应的处理后动作节点,根据所述修改后的树结构在所述制作结果中添加所述改动的动作节点对应的处理后动作节点;
若所述改动的动作节点为被剪切的动作节点或被删除的动作节点或被移走的动作节点,则根据所述修改后的树结构在所述制作结果中删除所述被剪切的动作节点所对应的处理后动作节点或被删除的动作节点所对应的处理后动作节点或被移走的动作节点所对应的处理后动作节点;
若所述改动的动作节点为被重命名的动作节点,则所述修改后的树结构在所述制作结果中对所述被重命名的动作节点的节点名称进行修改。
5.根据权利要求1或2所述的方法,其特征在于,
所述动作包括基本动作和复合动作;
所述基本动作包括立即显现、立即消失、移动、缩放、旋转、渐显、渐隐、渐渐到、闪烁和/或延迟;
所述复合动作包括顺序播放、同时播放和/或重复。
6.一种动画制作装置,其特征在于,包括:
获取单元,用于获取需要制作的动画的树结构,所述树结构包括多个动作节点;
确定单元,用于根据所述树结构确定当前需要处理的动作节点,并为所述当前需要处理的动作节点选择组件和所述组件需要执行的动作;
调用单元,用于根据所述组件需要执行的动作从动作集合中调用相应的动作命令;
执行单元,用于触使所述组件执行所述动作命令,得到处理后动作节点,并触发确定单元执行确定当前需要处理的动作节点的操作,直至所述树结构中的所有动作节点处理完毕;
组装单元,用于根据所述树结构对所有处理后动作节点进行组装,得到制作结果;
所述组装单元,具体用于将所述处理后动作节点作为层,并按照所述树结构所指示的层次关系依次对各个层进行组合,得到制作结果。
7.根据权利要求6所述的动画制作装置,其特征在于,还包括修改单元;
修改单元,用于在获取需要制作的动画的树结构之后,对所述树结构进行修改,所述修改包括对树结构中的动作节点进行复制、剪切、粘贴、移动、删除、添加、节点重命名和/或节点属性编辑;
所述确定单元,具体用于根据修改后的树结构确定当前需要处理的动作节点;
所述组装单元,具体用于根据修改后的树结构对所有处理后动作节点进行组装,得到制作结果。
8.根据权利要求7所述的动画制作装置,其特征在于,
所述修改单元,还用于在得到制作结果之后,对所述树结构进行修改,所述修改包括对树结构中的动作节点进行复制、剪切、粘贴、移动、删除、添加、节点重命名和/或节点属性编辑,根据修改后的树结构对所述制作结果进行修改。
9.根据权利要求8所述的动画制作装置,其特征在于,所述修改单元,具体用于:
根据所述修改后的树结构确定改动的动作节点;
若所述改动的动作节点为新添加的动作节点或节点属性被重新编辑的动作节点,则为所述改动的动作节点选择组件和所述组件需要执行的动作,根据确定的动作从动作集合中调用相应的动作命令,触使所述组件执行所述动作命令,得到所述改动的动作节点对应的处理后动作节点,根据所述修改后的树结构在所述制作结果中添加所述改动的动作节点对应的处理后动作节点;
若所述改动的动作节点为复制的动作节点,则获取被复制的动作节点所对应的处理后动作节点,作为被所述改动的动作节点对应的处理后动作节点,根据所述修改后的树结构在所述制作结果中添加所述改动的动作节点对应的处理后动作节点;
若所述改动的动作节点为移动后的动作节点,则获取被移动的动作节点所对应的处理后动作节点,作为所述改动的动作节点对应的处理后动作节点,根据所述修改后的树结构在所述制作结果中添加所述改动的动作节点对应的处理后动作节点;
若所述改动的动作节点为被剪切的动作节点或被删除的动作节点或被移走的动作节点,则根据所述修改后的树结构在所述制作结果中删除所述被剪切的动作节点所对应的处理后动作节点或被删除的动作节点所对应的处理后动作节点或被移走的动作节点所对应的处理后动作节点;
若所述改动的动作节点为被重命名的动作节点,则所述修改后的树结构在所述制作结果中对所述被重命名的动作节点的节点名称进行修改。
10.一种计算机***,其特征在于,包括权利要求6至9所述的任一种动画制作装置。
CN201410049103.7A 2014-02-12 2014-02-12 一种动画制作方法、装置和*** Active CN104142820B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201410049103.7A CN104142820B (zh) 2014-02-12 2014-02-12 一种动画制作方法、装置和***

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201410049103.7A CN104142820B (zh) 2014-02-12 2014-02-12 一种动画制作方法、装置和***

Publications (2)

Publication Number Publication Date
CN104142820A CN104142820A (zh) 2014-11-12
CN104142820B true CN104142820B (zh) 2016-03-16

Family

ID=51852004

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201410049103.7A Active CN104142820B (zh) 2014-02-12 2014-02-12 一种动画制作方法、装置和***

Country Status (1)

Country Link
CN (1) CN104142820B (zh)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105118079B (zh) * 2015-09-17 2018-08-07 网易(杭州)网络有限公司 动画位移拉伸方法、装置及运动控制方法、装置
CN106887030B (zh) 2016-06-17 2020-03-06 阿里巴巴集团控股有限公司 一种动画生成方法和装置
CN106775692B (zh) * 2016-12-06 2020-06-05 腾讯科技(深圳)有限公司 一种组件编辑方法以及电子设备
CN109318225A (zh) * 2017-08-01 2019-02-12 中达电子零组件(吴江)有限公司 用于控制码垛机器人的方法、装置及***
CN108109189A (zh) * 2017-12-05 2018-06-01 北京像素软件科技股份有限公司 动作共享方法及装置
CN108038160B (zh) * 2017-12-06 2019-03-08 央视动画有限公司 动态动画保存方法、动态动画调用方法及装置

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101980154A (zh) * 2010-11-02 2011-02-23 深圳市融创天下科技发展有限公司 一种界面控件树的创建和绘制的方法、***及移动终端
CN103345534A (zh) * 2013-07-26 2013-10-09 浙江中控技术股份有限公司 一种动态图处理方法及装置

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101980154A (zh) * 2010-11-02 2011-02-23 深圳市融创天下科技发展有限公司 一种界面控件树的创建和绘制的方法、***及移动终端
CN103345534A (zh) * 2013-07-26 2013-10-09 浙江中控技术股份有限公司 一种动态图处理方法及装置

Also Published As

Publication number Publication date
CN104142820A (zh) 2014-11-12

Similar Documents

Publication Publication Date Title
CN104142820B (zh) 一种动画制作方法、装置和***
CN105630298A (zh) 一种文件夹的管理方法和设备
CN103488403A (zh) 界面布局切换方法、装置和移动终端
CN104978115A (zh) 内容显示方法及装置
CN103530115B (zh) 一种应用程序显示方法、装置及终端设备
CN104298436A (zh) 一种快捷回复操作方法和终端
CN104598476A (zh) 消息聚合展示方法和消息展示方法及相关装置
CN104298558A (zh) 信息处理方法和装置
CN103309562A (zh) 桌面显示方法、装置和移动终端
CN103559731B (zh) 一种锁屏状态下歌词显示的方法及终端
CN104571787A (zh) 一种消息显示方法和通信终端
CN105183296A (zh) 交互界面显示方法及装置
CN103473092A (zh) 一种下载应用的处理方法、装置及终端设备
CN105022616A (zh) 一种生成网页页面的方法及装置
CN104281394A (zh) 智能选词的方法和装置
CN103390034A (zh) 图片展示的方法、装置、终端及服务器
CN105094809A (zh) 组合图片布局修改方法、装置以及终端设备
CN104252341A (zh) 应用程序的换肤方法、装置及应用程序的客户端设备
CN104375886A (zh) 信息处理方法、装置和电子设备
CN104869465A (zh) 视频播放控制方法和装置
CN104820541A (zh) 一种参考内容展示的方法及装置
CN103068016B (zh) 移动终端及其降低功耗的方法
CN106406924A (zh) 应用程序启动和退出画面的控制方法、装置及移动终端
CN104881844A (zh) 一种图片组合的方法、装置以及终端设备
CN103488392A (zh) 一种用于触摸屏的可编辑内容的编辑方法、装置和终端

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant