CN102289834A - 一种微动画编辑器及其编辑方法 - Google Patents
一种微动画编辑器及其编辑方法 Download PDFInfo
- Publication number
- CN102289834A CN102289834A CN2011102533613A CN201110253361A CN102289834A CN 102289834 A CN102289834 A CN 102289834A CN 2011102533613 A CN2011102533613 A CN 2011102533613A CN 201110253361 A CN201110253361 A CN 201110253361A CN 102289834 A CN102289834 A CN 102289834A
- Authority
- CN
- China
- Prior art keywords
- data model
- fine motion
- drawn
- attribute
- label
- 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.)
- Granted
Links
Images
Landscapes
- Processing Or Creating Images (AREA)
Abstract
本发明涉及一种微动画编辑器及其编辑方法,其中微动画编辑器包括第一转换模块,用于调用一数据模型中各对象的属性变量并通过属性框显示出来,以及在数据模型与属性框之间进行数据同步,其中数据模型创建微动画中各对象用到的所有常量和变量;第二转换模块,用于将数据模型转换为树形结构模块中的树形结构,并且在其之间进行数据同步;第三转换模块,用于将数据模型中的各对象转换为画布中的图像;序列化模块,用于将数据模型转换为XML配置文件,并对其存储;解析模块,用于解析XML配置文件,将解析出的各标签的属性值赋给数据模型中与各标签对应的对象的属性变量。本发明简单、方便地对微动画产品中各对象元素进行配置。
Description
技术领域
本发明涉及动画制作,尤其涉及一种微动画编辑器及其编辑方法。
背景技术
在网页上我们经常看到绚丽多彩、精美漂亮的Flash、MTV、游戏等动画,这些动画大部分的编辑工作都是使用特定的工具软件进行制作和编辑,比如Adobe flash辅助软件等。虽然这些工具软件已经开发的愈加成熟,但这些软件编辑出来的动画产品模型却不能有效地反映每个动画中各元素的属性及对应的动作关系,尤其是对于微动画产品。
动画是经由创作者的安排,使原本不具生命的东西像获得生命一般的活动,所以动画是让整幅图片都活动起来。而所谓的微动画,区别于大型游戏中的大动作的动画产品,而是在动画中的某个局部位置进行动作的动画产品。当开发人员使用现有的制作软件对微动画进行制作时,所制作出的动画产品不能有效显示局部元素的属性及其对应的动作,从而导致后期编辑人员对其进行编辑时还要重复进行工作,使开发人员与编辑人员的工作穿插比较大,容易因为理解问题产生大的分歧,增加沟通成本。
发明内容
为了解决上述问题,本发明提供一种微动画编辑器及其编辑方法,该微动画编辑器能够简单、方便地对微动画产品中各对象元素进行配置,使得微动画产品的编辑规范化,有利于设计人员和编辑人员理解及开发人员开发。
根据本发明的一个方案,本发明提供了一种微动画编辑器,微动画通过树形结构模块以树形结构显示微动画中各对象的层次关系;通过画布来显示微动画的图像及其编辑过程(例如通过鼠标的拖拉动作,或者通过键盘中的方向键对画布中选中的元素位置进行调整);以及通过属性框对所述微动画中各对象的属性进行编辑。所述微动画编辑器包括:
第一转换模块,用于调用数据模型中各对象的属性变量,并将所调用的属性变量通过属性框显示出来,以及在数据模型与在属性框之间进行数据同步,其中所述数据模型用于创建所述微动画中各对象用到的所有常量和变量;
第二转换模块,用于将所述配置的数据模型转换为树形结构模块中的树形结构,并且在数据模型和树形结构模块之间进行数据同步;
第三转换模块,用于将所述配置的数据模型中的各对象转换为画布中的图像;
序列化模块,用于将所述数据模型转换为XML配置文件,并对其存储;
解析模块,用于解析所述XML配置文件,将解析出的各标签的属性值赋给数据模型中与各标签对应的对象的属性变量,以生成相应的数据模型。
根据本发明的一个实施例,所述微动画编辑器还包括工具模块,用来对所述XML配置文件进行上传或下载。
根据本发明的一个实施例,所述微动画编辑器还包括配置模块,用于对树形结构中的各对象进行添加或删除。
根据本发明的一个实施例,所述第三转换模块还用于在所述配置的数据模型与画布之间进行数据同步。
根据本发明的一个实施例,所述微动画的各对象包括游戏、场景、精灵、界面文字、按钮以及精灵动作其中之一或其组合。
根据本发明的一个实施例,所述序列化模块通过使数据模型中各对象之间的继承关系与所述XML配置文件中各标签之间的继承关系相一致的方法将所述数据模型转换为XML配置文件。
根据本发明的另一个方案,本发明还提供一种微动画编辑方法,包括下述步骤:
S1:将所述数据模型转换为树形结构模块中的树形结构,并且在数据模型和树形结构模块之间进行数据同步,其中所述数据模型构建了包含有微动画中各对象用到的所有常量和变量;
S2:调用数据模型中各对象的属性变量,并将所调用的属性变量通过属性框显示出来,通过属性框对微动画中各对象的属性进行编辑;
S3:对在数据模型中各对象的属性变量与在属性框中该对象的相应属性值进行数据同步;
S4:将所述数据模型中的各对象转换为画布中的图像;
S5:将经过与属性框、画布以及树形结构同步之后的数据模型转换为XML配置文件,并对其存储;
S6:对微动画进行二次编辑时,解析所述微动画的XML配置文件,将解析出的各标签的属性值赋给数据模型中与各标签对应的对象的属性变量,以生成所述相应的数据模型,然后再进行步骤S1-S5。
本发明提供的微动画编辑器通过数据模型、树形结构、属性框以及画布之间的同步,有效地反映出微动画产品中的各元素的属性及其对应的动作关系,能够精确定位各元素的坐标,能够对各元素的动作进行个性化配置,还能够对元素复杂动作进行配置。
附图说明
图1为根据本发明的一个实施例的微动画产品中各元素对象的层次结构示意图;
图2为根据本发明的实施例的微动画编辑器的一种示例性界面示意图;
图3为根据图2中所示出的微动画编辑器的示例性界面通过画布对图像进行编辑的示意图;
图4为根据本发明的一个实施例的微动画编辑器的结构框图;
图5为根据本发明的另一个实施例的微动画编辑器的结构框图;
图6为根据本发明的再一个实施例的微动画编辑器的结构框图;
图7为根据本发明的一个实施例的编辑微动画的流程框图。
具体实施方式
下面将参照附图对本发明的优选实施例进行阐释。
在详细描述本发明的微动画编辑器之前,将先对微动画产品的整体结构作一下详细说明。
图1为根据本发明的一个实施例的微动画产品中各元素对象的层次结构示意图。
在一个微动画产品中,游戏元素作为微动画产品的最外层结构,用于定义整个产品所使用的硬件屏幕、原点位置及同服务器的通信地址、首页配置文件地址等信息,一个游戏可以由若干个场景来构成。场景为游戏中一个属性,在场景中构建了该微动画产品所需要的场景背景图片、背景音乐以及独白等,每个场景通常主要由由精灵、界面文字以及按钮等构成。当然,可以理解到,一个游戏也可由单个场景来完成,这时场景可为微动画产品的最外层结构,如图1所示。
精灵为场景中的主体对象,例如场景中的小兔子、小猫,对于微动画产品,场景中的精灵的动作幅度并不是很大,因此针对每个精灵,其动作会被分成默认动作、点击动作、热区动作以及调用其他精灵的动作等。默认动作为微动画产品中精灵默认在该场景中的动作,例如当打开一森林场景时,小兔子在场景中奔跑的动作。区别于默认动作,点击动作则需要人工对其精灵图像进行点击,而这个点击动作的操作区域一般为精灵图像区域的任意位置,例如,如果小兔子的跳跃动作被预设为点击动作,则点击小兔子的任意部位都可使小兔子进行跳跃。热区动作与点击动作一样,也需要人工进行点击,但是点击的部位只能限定于精灵的局部区域,因而,热区动作与点击动作是精灵为任选其一的动作。默认动作、点击动作以及热区动作里面都包含各自的动作组,每个动作组里面有一个或多个动作,这些动作例如为移动到、移动至、缩放到、缩放至、摇摆、旋转、贝塞尔曲线、跳跃、循环播放等等。
场景中还具有界面文字集合,界面文字集合为场景里面的一个集合属性,其显示了场景里面的所需要的各种文字。场景中还需要各种按钮,比如上下翻页按钮等,各种按钮组成按钮集合。
根据如上所述的微动画产品可知,微动画产品中需要构建并配置表征这些各元素对象(精灵,界面文字,按钮,精灵动作等等)的属性,因此,在微动画的编辑中,如何简单、方便地构建并配置各元素的属性是重要的。
如图2所示,本发明的微动画编辑器在显示界面上可以通过树形结构来显示微动画的上述各元素对象的层次关系,通过画布来显示各元素对象的图像及其编辑状态,还可通过一属性框来对树形结构中的各对象的属性进行编辑。因此,通过本发明的微动画编辑器可以直接对微动画进行个性化配置,并且通过可视化界面来对编辑情况进行直观了解。
图4是根据本发明的一个实施例的微动画编辑器的结构框图。
如图4所示,为了可以实现上文描述的微动画编辑功能,根据本发明的一个实施例,本发明所提供的微动画编辑器包括:
第一转换模块,用于调用一数据模型中各对象的属性变量,并将所调用的属性变量通过属性框显示出来,以及数据模型中各对象的属性变量与在属性框中该对象的相应属性值之间进行数据同步,其中所述数据模型创建了所述微动画中各对象用到的所有常量和变量;
第二转换模块,用于将所述数据模型转换为树形结构,并且在数据模型和树形结构之间进行数据同步;
第三转换模块,用于将所述数据模型中的各对象转换为画布中的图像;
序列化模块,用于将所述数据模型转换为XML配置文件,并对其存储;
解析模块,用于解析所述XML配置文件,将解析出的各标签的属性值赋给数据模型中与各标签对应的对象的属性变量,以使对XML配置文件进行再次编辑。
下面将结合具体实施例详细描述上述微动画编辑器的各模块的功能。
在本发明中,无论是第一转换模块、第二转换模块或第三转换模块都涉及到了数据模型,因此,首先描述了本发明所用到的数据模型。
在本发明的实施例中,数据模型构建了微动画产品各元素对象所涉及的所有常量和变量,例如,创建各对象的属性常量,初始化各对象变量等。由于数据模型适用于微动画产品的各元素对象,因此这些常量和变量在系统中具有初始的默认值或者为空值。
下面为数据模型中关于场景层次的数据模型的构建示例(1):
上述示例中的数据模型构建了场景中所涉及的常量和变量,并且对所涉及的变量进行初始化赋值,例如,初始化的场景属性变量backgroundPic(背景图片)和backgroundSound(背景声音)为空值。
由上述示例可以理解到本发明的数据模型是将微动画产品中可能涉及到所有层次的对象及其属性都通过数据结构的方式描述出来,数据模型作为本发明基本的核心以供其它模块后续的属性调用、配置以及显示。
数据模型中既构建了微动画产品的层次结构,也配置了微动画产品所涉及对象的数量以及属性,因此,对微动画产品的编辑即体现在对数据模型的变量配置上。
在对微动画产品的某个对象进行属性编辑时,第一转换模块调用该对象在数据模型中所涉及的属性变量,通过属性框在界面上显示出来,以便可以通过属性框对这些属性变量进行编辑。图2中的属性框示出了第一转换模块所调用的精灵对象所涉及的属性,例如精灵名称、精灵图片、精灵坐标、精灵大小等等,在属性框中可以对这些精灵对象的各属性进行赋值。赋值之后的精灵属性还可通过第一转换模块将这些属性值返回给数据模型,也即为适用于所有微动画产品的数据模型进行个性化配置,从而生成针对某个微动画产品的数据模型。也可理解到,第一转换模块在调用数据模型的属性变量时,也可将数据模型中的变化更新的属性变量值同步给属性框,从属性框中直观显示属性值的更新,因此,第一转换模块的主要功能实现了属性框的编辑操作与数据模型的数据同步,无论是在数据模型中对象的属性变量值发生了变化,还是属性框中的属性值得到更新,都可以在另外一方中同步体现或显示出来。
在编辑操作上,在编辑人员对某个对象的属性框中的属性值进行了修改后,其相应的数据模型也进行了同样更新,从而同样的变化也同步在下面所描述的画布中的图像。
数据模型可以通过第二转换模型以树形结构在显示界面上显示出来。数据模型中构建了微动画产品的各层级结构,因此通过第二转换模型所转换的树形结构直观地显示了微动画产品的各层级结构。一个微动画play的树形结构的层次结构如图2和3所示,树形结构中的第一层为游戏,游戏包括第二层的多个场景,第二层的场景又可包括第三层的精灵集合、界面文字集合、按钮集合等,第三层的精灵集合又可包括第四层的多个精灵,第四层的精灵可包括第五层的点击动作、默认动作、热区动作等,第五层的默认动作又可包括第六层的动作集合,如此层层嵌套下去,从而将数据模型中的层次结构通过树形结构来展示出来。
第二转换模块还用于在数据模型与界面上的树形结构之间同步数据,以使在数据模型或树形结构之间任一方发生变化时将其变化的数据在另一方中体现出来。例如,对某个微动画产品的数据模型中的场景变量数组进行修改,增加了一个场景,通过第二转换模块,树形结构中就会增加一个场景;同样地,如果界面上的树形结构删除了一个精灵,通过第二转换模块,该树形结构对应的数据模型中的相应精灵数组就会减少一个数组成员。
由于树形结构各对象的属性值与数据模型的属性变量值同步,数据模型中的属性变量值又与属性框的属性值同步,因此,在对树形结构中的某个对象进行点击操作时,就会在界面上显示出其相应的属性框,从而可以对树形结构中的某对象进行属性编辑操作。
进一步地,针对某个微动画产品所配置的数据模型可通过第三转换模块将其涉及的对象通过画布显示出来。例如,图3中的画布显示了某个场景的背景以及场景中的精灵对象,如兔子、啄木鸟、松鼠等。根据本发明的另一个实施例,第三转换模块还可用于在画布和配置的数据模型之间同步数据,例如,通过第三转换模块,可以将鼠标的拖拉动作,或者键盘中的方向键对画布中选中的元素位置进行调整的动作数据同时同步到数据模型的相应变量中。例如,如果数据模型中修改了关于精灵松鼠的“移动到”动作的目的地址的属性值,则在画布中会显示松鼠所移动的目的地蒙版,表明松鼠最终移动的位置。
由此,通过第一转换模块、第二转换模块以及第三转换模块将以数据模型为核心将数据模型、树形结构、属性框以及画布之间的数据同步起来,也即,在这四者之间任一方的数据进行了更新或对其进行了操作,都会在其它三方之间产生对应的更新。
这里需要说明的是,在本发明的微动画编辑器中,可以通过计算机输入设备对树形结构、属性框以及画布进行操作,操作不限于对树形结构中各对象的添加、删除,对属性框属性值的编辑以及对画布中对象的移动等操作。也可理解到,计算机输入设备与树形结构、属性框以及画布等上述操作可以通过相关的现有的功能模块来实现,因此这里对这些实现上述操作的模块并不作详细描述。
还需要理解到的是,本发明的属性框的创建方式、画布形式都可采用现有技术中的常用的方式。
在完成针对某个微动画产品所配置的数据模型之后,本发明的微动画编辑器还提供了序列化模块,用来将所配置的数据模型转换成XML格式的配置文件,并将其存储下来。
序列化模块按照数据模型与XML配置文件的继承关系将针对某个微动画产品所配置的数据模型转换成XML配置文件,并进行存储,以进行后续的调用。所生成的XML配置文件中的各个属性或标签对应于微动画产品的数据结构的各对象。XML配置文件中各标签的继承关系也一致于该数据模型中各对象之间的继承关系。
例如,针对上述示例(1)中的数据结构,经过序列化模块所生成的相应的XML配置文件如下:
为了更易理解上述XML配置文件,下面详细介绍XML配置文件中各标签及其属性。其中XML配置文件中各个标签的设置也遵循上述微动画产品组织结构的元素层次。
1、<play>标签
<play>标签可以是XML配置文件中最外层大标签。<play>标签的属性可以包括:name、width、height、configFilepath、picPath、musicPath、sceneHome、url和originType。
属性含义:name——微动画名称;width——微动画屏幕的宽度;height——微动画屏幕的高度;configFilepath——场景配置文件文件夹名;picPath——图片保存文件夹名;musicPath——音乐保存文件夹名;sceneHome——首页场景名称;url——网络资源下载路径;originType——微动画屏幕的原点位置;<play>标签可以包括一个或多个子标签<scene>,<scene>为场景标签,属性包含name,该属性的含义是指场景名称,即存储的针对每个场景的XML配置文件的文件名。
2、<scene>标签
<play>标签可以作为最外层大标签,设定微动画应用软件需要的系统条件。也可以将针对单个微动画场景中各元素的属性进行设置的<scene>标签作为最外层大标签。该<scene>标签不同于上述<play>标签的子标签<scene>。在XML配置文件中允许有名称相同的标签,名称相同的标签可以有不同的属性。
每个场景都有自己的场景图片、场景声音、场景音乐、翻页方式、进入时间、停留时间等。这些属性可以进行个性化配置,以满足不同场景的展示效果。
<scene>标签的属性可以包括:id、delay、name、prev、next、backgroundPic、backgroundSound、music、tranTime、tranModePre和tranModeNext。
属性含义:id——场景序号;delay——场景停留时间;name——场景名称;prev——上一场景名称;next——下一场景名称;backgroundPic——背景图片;backgroundSound——背景声音;music——背景音乐;tranTime——场景切换执行时间;tranModePre——向上一场景切换的方式;tranModeNext——向下一场景切换的方式。
3、<sprites>标签
每个场景中可以有一个或多个精灵,每个精灵都可以有位置、精灵图片、精灵大小等属性,这些属性可以进行个性化配置。此外,每个精灵还可以包含动作类的子标签,从而使得精灵动作也可以根据需要进行配置以完成相应的效果。<sprite>标签是<sprites>标签的子标签。<sprites>标签是<scene>标签的子标签,表示一个精灵集合。<sprites>标签可以包括多个<sprite>标签。<sprite>标签的属性可以包括:name、imagePath、position、scale、zIndex、tag和opacity。
属性含义:name——精灵名称;imagePath——精灵图片名称;position——精灵坐标;scale——精灵图片相对原始图片的大小;zIndex——精灵显示索引;tag——精灵标签;opacity——精灵透明度。
下面介绍<sprite>标签中包含的子标签——动作配置标签。动作配置标签可以包括四种并列的子标签:默认动作标签<actions>;点击动作标签<touch>;热区集合标签<miniTouchSet>;调用其他精灵动作标签<touchTrigger>。
3.1、<touchTrigger>标签
<touchTrigger>标签可以包括属性:actionSprite和actionName。
属性含义:actionSprite——调用的动作精灵名;actionName——调用的动作名。
3.2、<miniTouchSet>标签
<miniTouchSet>标签可以包括属性:rect。
属性含义:
rect——第一个花括号内的坐标表示与精灵中心点位置的相对位置x坐标和y坐标,第二个花括号内的坐标表示热区区域的宽和高。
4、动作组标签<group>
<actions>、<miniTouchSet>及<touch>标签下面都可以包括动作组来完成相应动作的配置。
<group>标签可以包括属性:type、repeatCount、actionName、touchScreenlazyTime。
属性含义:type——动作组类型,分为sequence(顺序执行)和spawn(同时执行)两种;repeatCount——动作组重复执行的次数;actionName——组动作名称,默认为default,如被其他精灵调用则修改为相应的名称(可以只是作为<touch>标签的子标签时<group>中才配置该属性,如果作为非<touch>标签的子标签时,<group>标签中的actionName可以为默认值);touchScreenlazyTime——场景加载后,默认动作等待运行时间(只有在默认动作中设定才起作用,如果不是默认动作,则touchScreenlazyTime取值为0)。
下面将分别介绍<group>标签包含的各种类型的动作子标签的属性及含义。
4.1、moveto/moveby类型的<action>标签
moveto/moveby类型的<action>标签可以包括属性:type、time、duration、targetPosition、repeatCount和reverse。
属性含义:type——动作类型;time——动作执行总时间;duration——动作执行时间;targetPosition——动作之后的目标位置(moveby类型的<action>标签中指相对位置);repeatCount——动作重复执行的次数;reverse——是否反向执行(只在moveby类型的<action>标签中设置此属性)。
4.2、scaleto/scaleby类型的<action>标签
scaleto/scaleby类型的<action>标签可以包括属性:type、time、duration、scale、repeatCount和reverse。
属性含义:type——动作类型;time——动作执行总时间;duration——动作执行时间;scale——放大/缩小的比例,1为不缩放;repeatCount——动作重复执行的次数;reverse——是否反向执行(只在scaleby类型的<action>标签中设置该属性)。
4.3、wag类型的<action>标签
wag类型的<action>标签可以包括属性:type、time、leftDuration、leftAngle、rightDuration、rightAngle和repeatCount。
属性含义:type——动作类型;time——动作执行总时间;leftDuration——向左摇摆的时间;leftAngle——向左摇摆的角度,一般应该填负数;rightDuration——向右摇摆的时间;rightAngle——向右摇摆的角度(与左摆角度成相反关系,即一个为正,一个为负);repeatCount——动作重复执行的次数。
4.4、whirl类型的<action>标签
whirl类型的<action>标签可以包括属性:type、time、duration和repeatCount。
属性含义:type——动作类型;time——动作执行总时间;duration——动作执行时间;repeatCount——动作重复执行的次数。
4.5、blink类型的<action>标签
blink类型的<action>标签可以包括属性:type、time、duration和repeatCount。
属性含义:type——动作类型;time——动作执行总时间;duration——动作执行时间;repeatCount——动作重复执行的次数。
4.6、jumpby类型的<action>标签
jumpby类型的<action>标签可以包括属性:type、time、duration、targetPosition、height、jumps和repeatCount。
属性含义:type——动作类型;time——动作执行总时间;duration——动作执行时间;targetPosition——目标位置(相对位置);height——每次跳跃的高度;jumps——到达目标点,所需跳跃的次数;repeatCount——动作重复执行的次数。
4.7、贝赛尔曲线(bezierby)类型的<action>标签
bezierby类型的<action>标签可以包括属性:type、time、duration、targetPosition、controlPoint1、controlPoint2和repeatCount。
属性含义:type——动作类型;time——动作执行总时间;duration——动作执行时间;targetPosition——动作后的目标位置(相对位置);controlPoint1——控制点1的坐标(相对位置);controlPoint2——控制点2的坐标(相对位置);repeatCount——动作重复执行的次数。
4.8、cycle类型的<action>标签
cycle类型的<action>标签可以包括属性:type、time、delay和repeatCount。
属性含义:type——动作类型;time——动作执行总时间;delay——图片播放的总时间;repeatCount——动作重复执行的次数。
4.9、effect类型的<action>标签
effect类型的<action>标签可以包括属性:type、time、music、repeatCount、labelName和isMusic。
属性含义:
type——动作类型;music——音乐名称;labelName——配合音乐显示的界面文字名称;isMusic——是否为音乐(Y表示音乐,N表示音效)。
4.10、event类型的<action>标签
event类型的<action>标签可以包括属性:type、time和tag。
属性含义:type——动作类型;time——动作执行的时间;tag——事件执行动作类型,例如,“100”表示向前一页翻页模式;“101”表示向后翻页模式;“102”表示向主页翻页模式。
event类型的<action>标签的属性配置的例子如下:
<action type=″event″time=″10″tag=″101″/>
5、<menus>标签
每个场景中都可以有按钮(menu),每个按钮里面又可以有一组按钮项。按钮项的排列顺序由按钮的基本属性来确定,每个按钮项会对应有自己的处理事件等基本属性。这些属性都可以进行个性化配置,以满足不同场景对按钮需要完成的效果的配置。
<menu>标签是<menus>标签的子标签。<menu>标签可以包括属性:zIndex、tag、fontSize、position 和showStyle。
属性含义:
zIndex——显示索引,数字越大越靠上显示;tag——标签,调用按钮时使用,不同的按钮要有不同的标签值;fontSize——如果按钮选用的是文字的话,设置按钮中的字体的大小;position——按钮位于场景中的坐标,即按钮中心点的位置;showStyle——按钮项的排列方式,即一个按钮中的各个按钮项的排列方式:horizontally(水平排列)或者vertically(垂直排列)。
<item>标签即按钮项标签,是<menu>标签的子标签。<item>标签可以包括属性:normalImage、selectedImage、disableImage、isEnable、target、selector和tag。
属性含义:
normalImage——按钮项显示的默认图片;selectedImage——按钮项选择后显示的图片;disableImage——按钮项不可用时显示的图片;isEnable——按钮项是否可用;target——默认值为self;selector——预留操作字段;tag——menu按钮的按钮项的标签值,调用时使用,不同的按钮项要有不同的tag值,用于触发不同的事件。
6、<labels>标签
每个场景都可能有默认显示的界面文字,或者某些精灵发声时需要对应显示相应的文字。这些文字有字体、字号、颜色、位置、对齐方式等相关的基本属性。这些属性都可以进行个性化配置,以满足不同的场景的界面文字需要完成的效果。
<label>标签是<labels>标签的子标签。<label>标签可以包括属性:type、name、position、color、fontSize、font、alignment、demension、opacity、tag、zIndex和content。
属性含义:
type——文字界面类型,可以包括普通text和LRC两种类型;name——文字界面名称,默认为default;position——文字界面坐标位置,文字界面中心点的坐标;color——文字界面中文字的颜色;fontSize——文字界面中文字的字号;font——文字界面中文字的字体;alignment——文字界面中文字的对齐方式:居中对齐方式、左对齐方式、右对齐方式;demension——文字界面区域范围;opacity——文字界面中文字的透明度;tag——文字界面的标签;zIndex——文字界面在场景中的显示索引;content——文字界面中显示的内容。
上文中描述了XML配置文件中的各标签及其属性,可以明显看出其对应数据模型的各标签的含义。经过序列化模块生成的XML配置文件可以根据需求适用在不同操作系统中对该XML配置文件的微动画产品进行查看。但是在微动画编辑中,一个微动画产品并不是一次就可完成编辑工作,而是需要根据需求对微动画产品进行反复编辑修改,因此,为了对已经生成XML配置文件的微动画产品进行二次编辑,本发明的微动画编辑器还包括解析模块,用于解析所生成的XML配置文件,将解析出的各标签的属性值赋给数据模型中与各标签对应的对象的变量,从而生成相应于XML配置文件的数据模型。
因此,在编辑人员对某个XML配置文件进行二次编辑时,通过解析模块将XML配置文件再生成相应的数据模型,然后再基于与该XML配置文件相应的数据模型进行编辑。
根据本发明的另一个实施例,如图5所示,本发明的微动画编辑器还可包括工具模块,工具模块具有上传或下载XML配置文件等功能。如果在生成一个微动画产品过程中,需要将所生成的XML配置文件都存放在远端服务器上,则需要工具模块来进行XML配置文件的上传或下载。进一步地,一个微动画产品中涉及到大量的XML配置文件,则所述工具模块还用于XML配置文件的打包上传、下载等功能。
根据本发明的再一个实施例,如图6所示,本发明的微动画编辑器还可包括配置模块,用于对树形结构中各对象的添加和删除,以使可以在树形结构中进行微动画数据模型的配置。
本发明提供的微动画编辑器通过数据模型、树形结构、属性框以及画布之间的同步,有效地反映出微动画产品中的各元素的属性及其对应的动作关系,能够精确定位各元素的坐标,能够对各元素的动作进行量化配置,还能够对元素复杂动作进行配置。
为此,本发明还提供一种微动画编辑方法,所述方法包括:
S1:将一数据模型转换为树形结构模块中的树形结构,并且在数据模型和树形结构模块之间进行数据同步,其中所述数据模型构建了包含有微动画中各对象用到的所有常量和变量;
S2:调用数据模型中各对象的属性变量,并将所调用的属性变量通过属性框显示出来,所述属性框用来对微动画中各对象的属性进行编辑;
S3:对在数据模型中各对象的属性变量与在属性框中该对象的相应属性值进行数据同步;
S4:将所述数据模型中的各对象转换为画布中的图像;
S5:将经过与所述属性框、所述树形结构同步之后的数据模型转换为XML配置文件,并对其存储;
所述微动画编辑方法在对微动画进行二次编辑时还包括:解析所述微动画的XML配置文件,将解析出的各标签的属性值赋给数据模型中与各标签对应的对象的属性变量,以生成所述相应的数据模型,然后再进行步骤S1-S5。
根据本发明的一个实施例,所述步骤S4中还包括在所述数据模型与所述画布之间进行数据同步的步骤,从而所述步骤S5中还包括下述步骤:将经过与所述属性框、所述画布以及所述树形结构同步之后的数据模型转换为XML配置文件,并对其存储。
根据本发明的一个实施例,在所述步骤S5中,通过使数据模型中各对象之间的继承关系与所述XML配置文件中各标签之间的继承关系相一致的方法将所述数据模型转换为XML配置文件。
根据本发明的一个实施例,在所述步骤S1、S3或S4之后,还包括对所述树形结构中的各对象进行添加或删除的步骤。
上述步骤S1-S4中的顺序部不限于上文中描述的顺序,而是可以各种顺序来进行。例如,步骤S2-S3与S4之间的顺序可以进行交换,因而本发明的微动画编辑方法可以步骤S1-S4-S2-S3-S5-S6的顺序实施。本领域普通技术人员可以理解到数据模型与树形结构模块、画布以及属性框之间的数据同步可以是任意顺序,只要能够实现本发明即可。
本发明提供的微动画编辑器中各模块及微动画编辑方法中的各步骤,可以由具有数据处理能力的一个或多个处理设备,例如一个或多个计算机运行计算机可执行的指令来实现。存储介质中可以存储各种用于执行本申请提供的微动画编辑方法的各个步骤的指令。
本申请的微动画编辑器可以由运行计算机可执行指令的一个或多个处理设备实现。微动画编辑器中的模块可以为该处理设备运行计算机可执行指令时具有相应功能的设备组件。
虽然已参照典型实施例描述了本发明,但应当理解,所用的术语是说明和示例性、而非限制性的术语。由于本发明能够以多种具体形式实施而不脱离发明的精神或实质,所以应当理解,上述实施例不限于任何前述的细节,而应在随附权利要求所限定的精神和范围内广泛地解释,因此落入权利要求或其等效范围内的全部变化和改型都应为随附权利要求所涵盖。
Claims (10)
1.一种微动画编辑器,其特征在于,微动画通过树形结构模块以树形结构显示微动画中各对象的层次关系,通过画布来显示微动画的图像及其编辑过程,以及通过属性框对所述微动画中各对象的属性进行编辑,所述编辑器包括:
第一转换模块,用于调用一数据模型中各对象的属性变量,并将所调用的属性变量通过属性框显示出来,以及用于在数据模型与属性框之间进行数据同步,其中所述数据模型用于创建所述微动画中各对象用到的所有常量和变量;
第二转换模块,用于将所述数据模型转换为树形结构模块中的树形结构,并且在数据模型和树形结构模块之间进行数据同步;
第三转换模块,用于将所述数据模型中的各对象转换为画布中的图像;
序列化模块,用于将所述数据模型转换为XML配置文件,并对其存储;
解析模块,用于解析所述XML配置文件,将解析出的各标签的属性值赋给数据模型中与各标签对应的对象的属性变量,以生成相应的数据模型。
2.根据权利要求1所述的微动画编辑器,其特征在于,所述微动画编辑器还包括工具模块,用于对所述XML配置文件进行上传或下载。
3.根据权利要求1所述的微动画编辑器,其特征在于,所述微动画编辑器还包括配置模块,用于对树形结构中的各对象进行添加或删除。
4.根据权利要求1所述的微动画编辑器,其特征在于,所述第三转换模块还用于在所述数据模型与画布之间进行数据同步。
5.根据权利要求1-4任一项所述的微动画编辑器,其特征在于,所述微动画的各对象包括游戏、场景、精灵、界面文字、按钮以及精灵动作其中之一或其组合。
6.根据权利要求1-4任一项所述的微动画编辑器,其特征在于,所述序列化模块通过使数据模型中各对象之间的继承关系与所述XML配置文件中各标签之间的继承关系相一致的方法将所述数据模型转换为XML配置文件。
7.一种微动画编辑方法,其特征在于,所述方法包括下述步骤:
S1:将一数据模型转换为树形结构模块中的树形结构,并且在数据模型和树形结构模块之间进行数据同步,其中所述数据模型构建了包含有微动画中各对象用到的所有常量和变量;
S2:调用数据模型中各对象的属性变量,并将所调用的属性变量通过属性框显示出来,所述属性框用来对微动画中各对象的属性进行编辑;
S3:对在数据模型中各对象的属性变量与在属性框中该对象的相应属性值进行数据同步;
S4:将所述数据模型中的各对象转换为画布中的图像;
S5:将经过与所述属性框、所述树形结构同步之后的数据模型转换为XML配置文件,并对其存储;
S6:在对微动画进行二次编辑时,解析所述微动画的XML配置文件,将解析出的各标签的属性值赋给数据模型中与各标签对应的对象的属性变量,以生成所述相应的数据模型,然后再进行步骤S1-S5。
8.根据权利要求7所述的微动画编辑方法,其特征在于,所述步骤S4中还包括在所述数据模型与所述画布之间进行数据同步的步骤;
所述步骤S5还包括将将经过与所述属性框、所述画布以及所述树形结构同步之后的数据模型转换为XML配置文件,并对其存储。
9.根据权利要求7或8所述的微动画编辑方法,其特征在于,在所述步骤S5中,通过使数据模型中各对象之间的继承关系与所述XML配置文件中各标签之间的继承关系相一致的方法将所述数据模型转换为XML配置文件。
10.根据权利要求7或8所述的微动画编辑方法,其特征在于,在所述步骤S1、S3或S4之后,还包括对所述树形结构中的各对象进行添加或删除的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN 201110253361 CN102289834B (zh) | 2011-08-30 | 2011-08-30 | 一种微动画编辑器及其编辑方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN 201110253361 CN102289834B (zh) | 2011-08-30 | 2011-08-30 | 一种微动画编辑器及其编辑方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN102289834A true CN102289834A (zh) | 2011-12-21 |
CN102289834B CN102289834B (zh) | 2013-06-12 |
Family
ID=45336220
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN 201110253361 Expired - Fee Related CN102289834B (zh) | 2011-08-30 | 2011-08-30 | 一种微动画编辑器及其编辑方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN102289834B (zh) |
Cited By (20)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103607434A (zh) * | 2013-11-04 | 2014-02-26 | 四川长虹电器股份有限公司 | 网络通信数据的交互方法 |
CN104123742A (zh) * | 2014-07-21 | 2014-10-29 | 徐才 | 一种将静态漫画图片转化为二维动画的方法和播放器 |
CN104346170A (zh) * | 2014-10-15 | 2015-02-11 | 浪潮(北京)电子信息产业有限公司 | 一种基于画布Canvas的拓扑图生成方法及装置 |
CN104517307A (zh) * | 2013-09-29 | 2015-04-15 | 北京新媒传信科技有限公司 | 一种动画制作方法和装置 |
CN105069104A (zh) * | 2015-05-22 | 2015-11-18 | 福建中科亚创通讯科技有限责任公司 | 一种动态漫画的生成方法与系统 |
CN105786893A (zh) * | 2014-12-24 | 2016-07-20 | 北京国际系统控制有限公司 | 一种基于xml的动态图片显示方法及系统 |
CN106215420A (zh) * | 2016-07-11 | 2016-12-14 | 北京英雄互娱科技股份有限公司 | 用于创建游戏场景的方法和设备 |
CN106294612A (zh) * | 2016-08-01 | 2017-01-04 | 厦门幻世网络科技有限公司 | 一种信息处理方法和设备 |
CN107665137A (zh) * | 2016-07-29 | 2018-02-06 | 北京北方华创微电子装备有限公司 | 用于界面配置的方法及设备 |
CN107862729A (zh) * | 2017-08-24 | 2018-03-30 | 平安普惠企业管理有限公司 | 层级动画生成方法、终端及可读存储介质 |
CN108920440A (zh) * | 2018-06-26 | 2018-11-30 | 苏州蜗牛数字科技股份有限公司 | 一种配置文件的编辑方法、装置及存储介质 |
CN109529345A (zh) * | 2018-11-21 | 2019-03-29 | 北京像素软件科技股份有限公司 | 游戏事件实施方法及装置 |
CN111124386A (zh) * | 2019-12-23 | 2020-05-08 | 上海米哈游天命科技有限公司 | 基于Unity的动画事件处理方法、装置、设备和存储介质 |
CN111596983A (zh) * | 2020-04-23 | 2020-08-28 | 西安震有信通科技有限公司 | 一种基于动画组件的动画显示方法、装置及介质 |
CN111862699A (zh) * | 2020-07-08 | 2020-10-30 | 天津洪恩完美未来教育科技有限公司 | 可视化编辑教学课程的方法和装置、存储介质和电子装置 |
CN111897615A (zh) * | 2020-08-06 | 2020-11-06 | 福建天晴在线互动科技有限公司 | 一种在界面中实现动画效果编辑的方法及其系统 |
CN112150585A (zh) * | 2019-06-11 | 2020-12-29 | 腾讯科技(深圳)有限公司 | 动画数据编码、解码方法、装置、存储介质和计算机设备 |
CN112748839A (zh) * | 2020-02-17 | 2021-05-04 | 腾讯科技(深圳)有限公司 | 图片处理方法、装置、计算机可读存储介质和计算机设备 |
CN113018867A (zh) * | 2021-03-31 | 2021-06-25 | 苏州沁游网络科技有限公司 | 一种特效文件的生成、播放方法、电子设备及存储介质 |
CN113516737A (zh) * | 2020-03-27 | 2021-10-19 | 北京小米松果电子有限公司 | 动画转换方法、装置及智能设备 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20040111676A1 (en) * | 2002-12-05 | 2004-06-10 | Samsung Electronics Co., Ltd. | Method and system for generating input file using meta language regarding graphic data compression |
CN1534476A (zh) * | 2003-03-27 | 2004-10-06 | 矢量图形的标记语言和对象模型 | |
CN1858728A (zh) * | 2006-02-23 | 2006-11-08 | 珠海金山软件股份有限公司 | 一种在svg中加入svg动画数据的方法 |
JP2007079707A (ja) * | 2005-09-12 | 2007-03-29 | Sony Corp | 再生装置および再生方法、プログラム、並びに、プログラム格納媒体 |
CN101017488A (zh) * | 2006-02-10 | 2007-08-15 | 珠海金山软件股份有限公司 | 一种svg演示放映器及进行演示放映的方法 |
-
2011
- 2011-08-30 CN CN 201110253361 patent/CN102289834B/zh not_active Expired - Fee Related
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20040111676A1 (en) * | 2002-12-05 | 2004-06-10 | Samsung Electronics Co., Ltd. | Method and system for generating input file using meta language regarding graphic data compression |
CN1534476A (zh) * | 2003-03-27 | 2004-10-06 | 矢量图形的标记语言和对象模型 | |
JP2007079707A (ja) * | 2005-09-12 | 2007-03-29 | Sony Corp | 再生装置および再生方法、プログラム、並びに、プログラム格納媒体 |
CN101017488A (zh) * | 2006-02-10 | 2007-08-15 | 珠海金山软件股份有限公司 | 一种svg演示放映器及进行演示放映的方法 |
CN1858728A (zh) * | 2006-02-23 | 2006-11-08 | 珠海金山软件股份有限公司 | 一种在svg中加入svg动画数据的方法 |
Non-Patent Citations (1)
Title |
---|
刘绍凯: "浅析计算机动画技术的发展", 《电脑知识与技术》 * |
Cited By (26)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104517307A (zh) * | 2013-09-29 | 2015-04-15 | 北京新媒传信科技有限公司 | 一种动画制作方法和装置 |
CN103607434A (zh) * | 2013-11-04 | 2014-02-26 | 四川长虹电器股份有限公司 | 网络通信数据的交互方法 |
CN104123742A (zh) * | 2014-07-21 | 2014-10-29 | 徐才 | 一种将静态漫画图片转化为二维动画的方法和播放器 |
CN104346170A (zh) * | 2014-10-15 | 2015-02-11 | 浪潮(北京)电子信息产业有限公司 | 一种基于画布Canvas的拓扑图生成方法及装置 |
CN105786893A (zh) * | 2014-12-24 | 2016-07-20 | 北京国际系统控制有限公司 | 一种基于xml的动态图片显示方法及系统 |
CN105069104B (zh) * | 2015-05-22 | 2018-10-23 | 福建中科亚创动漫科技股份有限公司 | 一种动态漫画的生成方法与系统 |
CN105069104A (zh) * | 2015-05-22 | 2015-11-18 | 福建中科亚创通讯科技有限责任公司 | 一种动态漫画的生成方法与系统 |
CN106215420A (zh) * | 2016-07-11 | 2016-12-14 | 北京英雄互娱科技股份有限公司 | 用于创建游戏场景的方法和设备 |
CN106215420B (zh) * | 2016-07-11 | 2019-12-06 | 畅游云端(北京)科技有限公司 | 用于创建游戏场景的方法和设备 |
CN107665137A (zh) * | 2016-07-29 | 2018-02-06 | 北京北方华创微电子装备有限公司 | 用于界面配置的方法及设备 |
CN106294612A (zh) * | 2016-08-01 | 2017-01-04 | 厦门幻世网络科技有限公司 | 一种信息处理方法和设备 |
CN107862729A (zh) * | 2017-08-24 | 2018-03-30 | 平安普惠企业管理有限公司 | 层级动画生成方法、终端及可读存储介质 |
CN107862729B (zh) * | 2017-08-24 | 2021-07-02 | 平安普惠企业管理有限公司 | 层级动画生成方法、终端及可读存储介质 |
CN108920440A (zh) * | 2018-06-26 | 2018-11-30 | 苏州蜗牛数字科技股份有限公司 | 一种配置文件的编辑方法、装置及存储介质 |
CN109529345A (zh) * | 2018-11-21 | 2019-03-29 | 北京像素软件科技股份有限公司 | 游戏事件实施方法及装置 |
CN112150585A (zh) * | 2019-06-11 | 2020-12-29 | 腾讯科技(深圳)有限公司 | 动画数据编码、解码方法、装置、存储介质和计算机设备 |
CN112150585B (zh) * | 2019-06-11 | 2024-10-15 | 腾讯科技(深圳)有限公司 | 动画数据编码、解码方法、装置、存储介质和计算机设备 |
CN111124386A (zh) * | 2019-12-23 | 2020-05-08 | 上海米哈游天命科技有限公司 | 基于Unity的动画事件处理方法、装置、设备和存储介质 |
CN111124386B (zh) * | 2019-12-23 | 2023-08-29 | 上海米哈游天命科技有限公司 | 基于Unity的动画事件处理方法、装置、设备和存储介质 |
CN112748839A (zh) * | 2020-02-17 | 2021-05-04 | 腾讯科技(深圳)有限公司 | 图片处理方法、装置、计算机可读存储介质和计算机设备 |
CN113516737A (zh) * | 2020-03-27 | 2021-10-19 | 北京小米松果电子有限公司 | 动画转换方法、装置及智能设备 |
CN111596983A (zh) * | 2020-04-23 | 2020-08-28 | 西安震有信通科技有限公司 | 一种基于动画组件的动画显示方法、装置及介质 |
CN111862699A (zh) * | 2020-07-08 | 2020-10-30 | 天津洪恩完美未来教育科技有限公司 | 可视化编辑教学课程的方法和装置、存储介质和电子装置 |
CN111897615A (zh) * | 2020-08-06 | 2020-11-06 | 福建天晴在线互动科技有限公司 | 一种在界面中实现动画效果编辑的方法及其系统 |
CN113018867A (zh) * | 2021-03-31 | 2021-06-25 | 苏州沁游网络科技有限公司 | 一种特效文件的生成、播放方法、电子设备及存储介质 |
CN113018867B (zh) * | 2021-03-31 | 2024-07-30 | 苏州沁游网络科技有限公司 | 一种特效文件的生成、播放方法、电子设备及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN102289834B (zh) | 2013-06-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN102289834B (zh) | 一种微动画编辑器及其编辑方法 | |
Paterno et al. | One model, many interfaces | |
CN100530083C (zh) | 用于创建应用程序的系统及方法 | |
US8918758B2 (en) | Systems and methods for storing object and action data during media content development | |
US20080303827A1 (en) | Methods and Systems for Animating Displayed Representations of Data Items | |
CN109074246A (zh) | 自动确定布局约束的系统和方法 | |
Smith et al. | Android recipes: a problem-solution approach | |
JPH08505970A (ja) | 国際データ処理システム | |
US20100153839A1 (en) | System and method for creating web-based application templates | |
CN102495735A (zh) | web 端UI组件应用框架系统 | |
US7636093B1 (en) | Parameterized motion paths | |
CN102289835A (zh) | 微动画效果查看方法及装置 | |
CN108108194A (zh) | 用户界面编辑方法以及用户界面编辑器 | |
Weaver et al. | Pro JavaFX 2: A Definitive Guide to Rich Clients with Java Technology | |
Leete | Microsoft Expression Blend Bible | |
Nolan et al. | Interactive and animated scalable vector graphics and R data displays | |
KR20180135654A (ko) | 프로그램의 직관적 제작방법 | |
Dessart et al. | Animated transitions between user interface views | |
US20120117496A1 (en) | Declarative and multi-mode wizard framework | |
Magni | Delphi GUI Programming with FireMonkey: Unleash the full potential of the FMX framework to build exciting cross-platform apps with Embarcadero Delphi | |
JP2004318260A (ja) | プログラム生成装置およびプログラム生成方法およびプログラムおよび記録媒体 | |
Liu et al. | The Diversity Layout of E-commerce Applications Based on Android | |
Solis | Illustrated WPF | |
Vanderdonckt | Animated transitions for empowering interactive information systems | |
Weaver et al. | Pro JavaFX 2 |
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 | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20130612 Termination date: 20150830 |
|
EXPY | Termination of patent right or utility model |