专利名称:一种动态控制动画运行过程的方法
技术领域:
本发明涉及通信技术领域,尤其涉及一种动态控制动画运行过程的方法。
技术背景利用KJAVA编程技术开发KJAVA应用软件目前己日渐成熟。 一些专业的 KJAVA软件厂商取得的较高的成就,也促进了行业的发展。同时,软件用户 对于使用的要求也在进一步提升,特别是对于多媒体和动画技术方面的要求最 为紧要。然而目前KJAVA程序在各种千差万别的硬件设备上拥有千差万別的执行 环境,使得KJAVA的动画技术的发展停滞不前,无法满足广大用户的需求。现有的缺点是1、 对于图片文件格式的支持不统一。除了对PNG图片格式的支持是行业 标准从而被强制需求之外,其它图片格式在有的设备上可以支持,而在有的设 备上却无法支持。如果要开发通用的, 一次编写到处运行的软件产品就必须只 使用PNG图片格式,而PNG格式并不支持动画;2、 即使设备支持某些动画格式如GIF格式,仍然无法满足制作需求。因 为无法在动画文件播;改时动态改变动画的运行轨迹和运行速度,无法新增一条 运行轨迹也无法删去一条运行轨迹,而这些都是制作KJAVA动画所必须要实 现的;3、 动画制作者(KJAVA程序员和动画师)每制作一场动画都必须进行大 量的重复劳动。目前的方法是由动画师将动画中所用到的所有场景绘制在同 一个文件中,由KJAVA程序员以一定的帧速率切割出其中的某一帧并绘制在 终端设备显示屏上。发明内容本发明要解决的技术问题是提供一种动态控制动画运行过程的方法。 为解决上述技术问题,本发明的目的是通过以下技术方案实现的。一种动态控制动画运行过程的方法,包括步骤a:制作每一帧动画图;b:制作动画运行所需的属性文件;c:根据属性文件配置动画运行参数;d:运行动画,接受参数修改。其中,步骤c具体包括读取属性配置文件;读取PNG图片文件;处理 图片,设置运行时参数。其中,所述属性文件的属性包括动画帧的切换速度、动画在终端显示屏 上的起始位置、PNG图片的存储信息、PNG图片的切割信息、动画运行的时 间长度和/或动画移动位置。一种动态控制动画运行过程的方法,包括步骤a:制作每一帧动画图;b:通过动画引擎提供的初始化函数配置动画运行参数;c:运行动画,通过动画引擎提供的函数动态修改动画运行参数。以上技术方案可以看出,本发明具有以下有益效果本发明通过KJAVA动画引擎采用JAVA类库的形式提示给KJAVA动画程 序员。引擎将提供给动画程序员相应的API,由动画设计人员填写相应的参数 定制自己需要的动画效果,并且可以根据程序逻辑的改变来动态改变动画的执 行效果,最终由引擎调用KJAVA绘图模块完成在终端屏幕上的图形绘制。从 而可以动态的对动画的运行过程进行控制。避免大量的重复劳动,提高效率, 节约成本。
图1为本发明中一张弹跳小球动画排列图; 图2为本发明中动画弹跳小球播;故示意图; 图3为本发明方法流程图。
具体实施方式
由于人的视觉神经具有视觉停留的特点,因此在用程序编制动画时,利用 程序中的线程以一定的时间间隔显示一连串的图片序列,当人眼对上一幅画面 的视觉停留还未消失之前程序线程立刻显示出下一幅画面即可使人产生动画 的感觉。为便于对本发明进一步理解,现结合附图及具体实施例对本发明进行详细 描述。首先制作每一帧动画图,并将所有图形以固定的宽度和高度按照动画播放 顺序从头到尾以横向或者纵向方式拼合排列在一起并最终保存为一个单一的 PNG图形文件(每一帧图的宽度和高度都是固定的)。拼合排列图片的方法如 图l所示,由四张不同的图片拼合成一张PNG图形弹跳的小球ball.png。制作动画运行所需的属性文件,该属性文件规定了动画运行所需的各项属 性和指标,这些属性项包括动画帧的切换速度、动画在终端显示屏上的起始 位置、PNG图片的存储信息、PNG图片将被切割成多少帧,如何切割、动画 运行的时间长度、如果动画需要移动位置,位置如何移动。属性文件中的各 项属性的编写将采用XML标准,属性文件可以用任何文本编辑器进行编辑并 最终保存为后缀名为.ani的文件存储在动画工程的资源目录中。当动画引擎运行时,首先读取指定的动画属性文件,然后读取PNG文件, 按照属性文件中约定的长宽比例对此PNG图进行分割,从而使一张PNG图形 被分割成一个按照属性文件约定好切割帧数量的一套动画帧序列,每一帧即是 一个动画场景。动画引擎启动程序线程运行并从动画帧序列的第 一帧开始按顺 序在显示终端上绘制出该帧,同时以属性文件中约定的时间间隔切换到动画帧 序列的下一帧,直到所有动画帧都切换显示完成。只要切换帧的时间间隔在人体视觉停留的有效时间内即可表现出动画效果。如图2所示, 一个png图片在 终端设备上被切割成四桢显示,每次时间只显示其中一帧,切换时间到则显示 下一帧。也可以不使用属性文件而直接从引擎提供的初始化函数中直接对动画的 各个属性进行设置,同时动画运行后程序人员可以利用引擎提供的各项设置函 数对属性进行修改。当动画运行结束后,动画引擎将此事件通知调动者以便进 一步处理。请参阅图3所示,本发明方法流程图,包括步骤301:制作每一帧动画图;步骤302:制作动画运行所需的属性文件;步骤303:当动画引擎运行时,读取属性配置文件;步骤304:读取PNG图片文件;步骤305:处理图片,设置运行时参数;步骤306:显示动画,接受参数修改;结束动画,通知结束。实施例1:属性配制文件的编写方法属性配制文件是以.ani为后缀用来存储动画 运行时的各项属性参数的文件,属性配制文件采用XML文件格式进行编写,每 项参数以一对标签来表示。属性配制文件可使用文本编辑软件对其进行编写、 修改和保存。以下是常用的控制动画的属性标签data: ani文件的根标签,代表文件的开始与结束;be印Time:动画帧的切换速度。它决定了视觉停留时间的长短,它的调整 类似于对电影播放中快镜头与慢镜头的;startX与startY:动画帧在终端显示屏上的相对位置。它确定了动画序 列中的第一帧在终端显示设备上的位置以坐标点(X:Y)表示,显示设备的坐标 系以显示设备的最左上角为坐标原点,向右表示Y轴增长,向下则表示X轴增长;img:动画PNG图片的存储位置; timeLenght:动画运4亍的时间长度; imgClipNum: PNG图片将被切割成多少帧; clipType: PNG图片的切割方向;movePath:如果动画需要移动位置movePath表示了动画的移动详细情 况,它由一个或多个path标签组成;path:它代表动画的一条移动路径。path包括三项子标签,它们是x和 y代表移动目的地,time代表耗费在这条路径上的时间;下面是编写.ani文件的一个实例〈data><img〉test. png<img/〉〈imgClipNum〉2〈imgClipNum/〉<t imelenghOl 1000<t imeLenght/>〈i sLoop〉1< i sLoop/〉〈beepTime>100<beepTime/〉〈needMove〉l<needMove/>〈startX>50〈startX/><startY〉100〈startY/>〈movePath><path><x>200<x/><y〉100〈y/>〈time〉5000〈time/〉〈path/〉 〈path>
〈x>120<x/> 〈y〉200〈y/〉 〈time〉5000〈time/〉 〈path/〉 <movePath/> 〈data/〉
以上对本发明所提供的一种动态控制动画运行过程的方法进行了详细介
例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的 一般技术人员,依据本发明的思想,在具体实施方式
及应用范围上均会有改变 之处,综上所述,本说明书内容不应理解为对本发明的限制。
权利要求
1、一种动态控制动画运行过程的方法,其特征在于,包括步骤a制作每一帧动画图;b制作动画运行所需的属性文件;c根据属性文件配置动画运行参数;d运行动画,接受参数修改。
2、 根据权利要求1所述的动态控制动画运行过程的方法,其特征在于, 步骤c具体包括读取属性配置文件;读取PNG图片文件;处理图片,设置 运行时参数。
3、 根据权利要求1或2所述的动态控制动画运行过程的方法,其特征在 于,所述属性文件的属性包括动画帧的切换速度、动画在终端显示屏上的起 始位置、PNG图片的存储信息、PNG图片的切割信息、动画运行的时间长度 和/或动画移动4立置。
4、 一种动态控制动画运行过程的方法,其特征在于,包括步骤 a:制作每一帧动画图;b:通过动画引擎提供的初始化函数配置动画运行参数;c:运行动画,通过动画引擎提供的函数动态修改动画运行参数。
全文摘要
本发明公开了一种动态控制动画运行过程的方法,包括步骤a制作每一帧动画图;b制作动画运行所需的属性文件;c根据属性文件配置动画运行参数;d运行动画,接受参数修改。本发明通过KJAVA动画引擎采用JAVA类库的形式提示给KJAVA动画程序员。引擎将提供给动画程序员相应的API,由动画设计人员填写相应的参数定制自己需要的动画效果,并且可以根据程序逻辑的改变来动态改变动画的执行效果,最终由引擎调用KJAVA绘图模块完成在终端屏幕上的图形绘制。从而可以动态的对动画的运行过程进行控制。避免大量的重复劳动,提高效率,节约成本。
文档编号G06T15/70GK101266693SQ20081006640
公开日2008年9月17日 申请日期2008年3月31日 优先权日2008年3月31日
发明者王志荣, 略 魏 申请人:康佳集团股份有限公司