CN101963899A - 一种逻辑动漫平台系统 - Google Patents
一种逻辑动漫平台系统 Download PDFInfo
- Publication number
- CN101963899A CN101963899A CN2009100633075A CN200910063307A CN101963899A CN 101963899 A CN101963899 A CN 101963899A CN 2009100633075 A CN2009100633075 A CN 2009100633075A CN 200910063307 A CN200910063307 A CN 200910063307A CN 101963899 A CN101963899 A CN 101963899A
- Authority
- CN
- China
- Prior art keywords
- logic
- animation
- player
- file
- editing machine
- 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.)
- Pending
Links
Images
Landscapes
- Processing Or Creating Images (AREA)
Abstract
一种逻辑动漫平台系统,包括制作器部分和播放器部分。制作器部分包括编辑器、编译器和打包器,编辑器用于先将收集添加的素材作为元件导入,然后对元件进行加工编辑,封装成元件对象;编译器用于将元件对象编译成向量;打包器用于把向量打包成工程主索引文件,然后根据工程主索引文件联系编辑器所提供元件对象,整理成逻辑动漫工程文件。播放器部分包括解释器和播放器,解释器用于根据工程主索引文件解释出元件对象及相应事件动作和逻辑关系的函数;播放器用于根据解释结果还原元件对象及相应事件动作和逻辑关系,从而运行播放逻辑动漫。本发明的逻辑动漫平台系统提供逻辑动漫制作功能,可以用于制作逻辑动画、益智游戏或动态课件。
Description
技术领域
本发明属于计算机动画技术领域,特别是涉及一种逻辑动漫平台系统。
背景技术
计算机动画根据其驱动方式不同,可以分为时序动画和逻辑动画。在发展初期,计算机动画借鉴了许多传统手工动画的思路和技法,使用了关键帧和中间画技术,这类计算机动画播放以时间为顺序作为特征,所以称为时序动画。基于计算机计算速度快、存储量大的优势,时序动画比传统动画容易进行编辑,并能根据关键帧自动生成中间画,大大提高了动画制作的效率。但是,时序动画需要事先绘制一系列关键帧,并且不支持交互性操作,特别是中间画是由插值计算近似得到的,只能描述现象,不能准确反映事物的逻辑关系。
逻辑动画是建立在动态几何基础上的一种动画表现形式,它通过捕捉关键点(或对象)的位置变动或参数变动(可称为事件动作)以及根据逻辑关系(包括几何关系、代数关系以及一般事件之间的逻辑关系等,考察逻辑关系时还要关注主要关系的执行者)来控制画面上的对象的运动。在逻辑动画中,不需要事先设计关键帧,计算机会按照一定的数理逻辑关系动态生成中间画面,这些中间画面能精确地反映对象的变化过程。逻辑动画保持了传统动画的趣味性,同时弥补了时序动画的不足,特别是其中间画面具有的精确表现力,使之具有很高的教育价值。并且,逻辑动画具有交互性强的优点,用户容易用拖动元件对象或设置对象参数的办法改变动画的风格和演示过程。
但是,目前所有的动漫制作工具(如Flash,Authorware)都是为开发时序动画而设计的,还没有用于制作逻辑动画的专用工具出现。
发明内容
本发明目的在于实现用于制作逻辑动画的工具,提供一种逻辑动漫平台系统。
本发明的技术方案包括制作器部分和播放器部分,
所述制作器部分包括编辑器、编译器和打包器,所述编辑器,编辑器用于先将收集添加的素材作为元件导入,然后对元件进行加工编辑,将所得编辑后的元件及其附加的事件动作和逻辑关系封装成元件对象,然后输送到编译器;
所述编译器,用于将元件对象编译成向量,然后传递给打包器;
所述打包器,用于把向量打包成工程主索引文件,所述工程主索引文件提供实现事件动作和逻辑关系的函数调用接口;然后根据工程主索引文件联系编辑器所提供元件对象,整理成逻辑动漫工程文件;
所述播放器部分包括解释器和播放器,
所述解释器,用于根据打包器所提供逻辑动漫工程文件中的工程主索引文件解释出元件对象及相应事件动作和逻辑关系的函数,并输出解释结果到播放器;所述播放器,用于根据解释结果还原元件对象及相应事件动作和逻辑关系,从而运行播放逻辑动漫。
而且,所述编辑器内嵌有逻辑动漫脚本语言,用于对元件的事件动作和逻辑关系提供支持;所述编译器支持对逻辑动漫脚本语言进行编译;所述解释器支持对逻辑动漫脚本语言进行解释。
而且,所述编辑器内置逻辑模板集合,用于支持编辑元件的逻辑关系。
而且,所述逻辑动漫工程文件为逻辑动画或益智游戏或动态课件。
而且,所述制作器部份设置转换器,编辑器的当前编辑内容输入转换器,转换器将当前编辑内容转换输出为不具有交互性的表现形式。
而且,所述不具有交互性的表现形式,是图片或者动画或者视频文件。
而且,所述工程主索引文件采用xml文件格式。
本发明实现的逻辑动漫平台系统提供逻辑动漫制作功能,可以用于制作逻辑动画或益智游戏或动态课件。所提供平台可以成为大中学生制作动漫和益智游戏的工具,也可以为教师制作动态趣味课件提供便利。
附图说明
图1为本发明的系统结构图。
具体实施方式
参见图1,本发明的逻辑动漫平台系统包括制作器部分和播放器部分。制作器部分用于制作编辑逻辑动漫;播放器部分用于播放逻辑动漫。
制作器部分包括编辑器、编译器和打包器:所述编辑器,编辑器用于先将收集添加的素材作为元件导入,然后对元件进行加工编辑,将所得编辑后的元件及其附加的事件动作和逻辑关系封装成元件对象,然后输送到编译器;所述编译器,用于将元件对象编译成向量,然后传递给打包器;所述打包器,用于把向量打包成工程主索引文件,所述工程主索引文件提供实现事件动作和逻辑关系的函数调用接口;然后根据工程主索引文件联系编辑器所提供元件对象,整理成逻辑动漫工程文件。根据用途不同,逻辑动漫工程文件可以为普通逻辑动画或益智游戏或动态课件。为了便于用户预览,本发明还提供进一步技术方案:所述制作器部份设置转换器,编辑器的当前编辑内容输入转换器,转换器将当前编辑内容转换输出为不具有交互性的表现形式。所述不具有交互性的表现形式,可以是图片或者动画或者视频文件等,对制作过程中的页面图像布局或动画过程提取截图或片段,有利于用户制作过程中预览,或与其它用户交流讨论。
播放器部分包括解释器和播放器:解释器,用于根据打包器所提供逻辑动漫工程文件中的工程主索引文件解释出元件对象及相应事件动作和逻辑关系的函数,并输出解释结果到播放器;播放器,用于根据解释结果还原元件对象及相应事件动作和逻辑关系,从而运行播放逻辑动漫。
具体实施时,可以由本领域技术人员采用计算机软件技术实现逻辑动漫平台系统各部分。可将制作器部分和播放器部分分成两个独立的计算机可执行文件向用户提供。动画、游戏或课件的制作者可以只利用制作器部分,也可以利用制作器部分制作完毕后用播放器部分检查制作好的逻辑动漫。动画、游戏或课件的最终使用者则可以直接通过播放器部分播放逻辑动漫。建议编程环境采用Windows Visual Studio 2008平台,使用Visual C++.NET语言,调用MFC类库。MFC的文档/视图结构(Document/View Architecture)是MVC(Model-View-Controller)模式的一种变体,它将数据响应和视图区分开来。它主要包含四种对象:文档,视图、视图框架窗口和文档模板。由于逻辑动漫平台需要处理大量的图形图像,使用GDI+是一个很好的选择。它是与.NET Framework中的图形设备接口进行交互的入口,是一组C++类,位于一个名为Gdiplus.dll的类库中,Gdiplus.dll是Microsoft Windows XP和Windows Server2003操作系统中的一个内置组件。
逻辑动漫平台系统各部分都可以采用类实现,用户在计算机上使用逻辑动漫平台系统时界面上显示的东西,都是相关类生成的对象在显示。例如可以建立制作器类模型,包括编辑器类、编译器类、打包器类和转换器类。以下提供实施时的实现建议,但不限于这种实现方式:
逻辑动漫平台系统中的制作器部分采用类似常见软件开发平台的框架结构程序,左边部分是一个资源管理器,显示的是项目信息;右边的空白区是项目工作区,用以处理图形图像、事件动作及脚本语言编程。
制作器部分主体程序由编辑器框架类(CMainFrame)实现,它负责显示和管理窗口,维护窗口左侧的资源管理器,可以对资源进行添加、修改和删除。应用程序通过文档管理来使用文档/视图结构,编辑器文档类(CMainDoc)管理工程文件的所有数据,可以新建工程,打开工程和保存工程文件,工程文件的数据存放在工程文件类对象中。在框架类中可以进行添加、删除对象的操作,以及通过对话框对各种对象进行导入、编辑和修改操作,最后都将会通过文档类存储到工程文件类的对象中。在制作器部分提供的制作平台中,所有的对象都只存储在工程文件类的对象里,由工程文件类的对象对属于资源的对象分配id,或同时由用户手工取名name。其他任何类中使用对象都是通过对象的id或name进行存取的,对象的id或name在工程文件中都是惟一的。与文档类对应的是编辑器视图类(CMainView)。视图窗口定义了视图对用户输入的响应方式,它封装了底层机制的对象、文档、视图。视图类一般用于显示数据,这里可以用于管理菜单,比如用菜单添加对象或者删除对象等。
使用逻辑动漫平台进行动漫、游戏、课件的制作,称为一项工程,其相关资料信息作为一个工程对象来保存。这个工程对象的信息在项目视图区以目录树的形式显示。对工程进行全局属性的管理由应用程序类(CLapApp)负责,它继承自MFC类库中的CWinApp。用于,例如:动画和游戏运行时的窗口显示方式、显示尺寸、分辨率、常用功能(退出、帮助、保存游戏等)按键、设置常量、作者、版本信息等。
与制作器部分相对应的是播放器部分,为了使制作好的工程文件能够顺利播放,需要开发配套的播放器。在播放器中内置与制作平台中制作器部分相对应的函数。播放器的播放器视图类(CLapplayerView)用于实现场景的绘制,并结合解释器实现对象的事件动作响应和逻辑关系反应。播放器视图类(CLapplayerView)检测到消息之后,执行相应的消息处理函数,并调用解释器。解释器在消息列表中进行查找匹配,如果找到有需要处理的相应消息,则读取该事件所对应的动作代码,并解释执行。例如播放器视图类(CLapplayerView)检测到用户要求播放逻辑动漫工程文件的消息,调用解释器,解释器判断消息后读入逻辑动漫工程文件中的事件序列后,再按序列顺序进行解释出元件对象及相应事件动作和逻辑关系,供播放器还原播放。
以下结合实施例和附图说明本发明技术方案原理,以便实施参考:
实施例中,编辑器的功能是支持逻辑动画制作,包括支持导入图片、动画、声音、背景等已有素材,绘制矢量图形以提供新素材,设置事件动作,编写脚本,组织场景等。在软件呈现中,元件是制作器里的一个大节点项,与对象并列,在对象之前。把素材导入后就成了元件。要把元件封装成可以在工作区直接拖动使用的对象,面向对象设定事件动作,可以通过接收用户所选择或输入事件的参数,令元件可实现执行相应的动作。用户编写脚本在逻辑关系基础上完成,逻辑动漫的动画过程,是由于逻辑关系在起作用。为了便于用户制作动态课件,实施例中事先将中小学涉及到的数学、物理、化学等初等学科的知识点,涉及的逻辑关系如牛顿定律、凸透镜成像、置换-还原反应、氧化反应、生物中的光合作用,构成逻辑模板集合内置入编辑器,便于支持编辑元件的逻辑关系。逻辑模板相当于内置的组件或是函数,以元件为主体,完成对一个逻辑关系的描述。逻辑关系以元件为载体,元件就是具有独特性质或规律的个体,比如,小球、弹簧秤等。逻辑模板就是这样一个或多个元件的集合。这些元件联动,可以完成一个逻辑推理过程,并引起图像发生变化或运动。研究和开发常用的元件,并用实物图像来表示其形象,赋予其相应的逻辑关系。为了在多学科应用,需要构造多学科元件库。把中小学涉及到的数学、物理、化学等初等学科的知识点涉及的对象抽象化为元件,并赋予一定的逻辑规律,用计算机技术实现,构造相应的逻辑模型,供逻辑推理使用。用户能在此基础上按照自己的需求扩充和制作,缩短开发时间。逻辑模板是逻辑关系的统一体,把元件和逻辑关系封装成模板,可以供用户直接使用,提高了开发效率。可以为逻辑模板几何提供开放式接口,用户可以直接根据需要扩充模板,形成自己的专用模板。
逻辑模板可采用智能Agent技术实现,智能Agent是信息世界的软件实体,具有智能的程序。其智能化的程度可以从简单的预定义规则到复杂的自学习人工智能推理机。它是自动推理的主体,由事件或时间驱动。实际的内在逻辑由智能Agent完成。即对象有一个控制开关选项:当选择开启自动检测时,表示此对象是一个智能Agent,逻辑是内嵌在对象本身里,它周期性地检测与周围其它对象的关系,考虑与其它物体的互动,具有自动推理功能,能够主动或是被动发生什么样的行为,推理依据逻辑关系(比如平抛运动,凸透镜成像等)。为假,则表示是一个普通的对象,不执行内在逻辑,只接受外界赋予的单一动作,如平移,旋转等,不考虑环境的影响。每个对象可以被加入模板。
例如凸透镜成像的逻辑模板:其中包含一个凸透镜和一个物体(比如是蜡烛或砝码)。其中已经设定,凸透镜是智能Agent,蜡烛或砝码是普通的实验对象。凸透镜可以对有效区域内的对象进行探测,符合成像规律的在其另一侧生成一个翻转的对象,并根据规律进行放大或是缩小。凸透镜的焦距是本身的一个特性。检测在该透镜的可成像物体区域内,是否有可以成像的物体,有则根据凸透镜成像规律1/f=1/u+1/v进行相关的距离运算,并生成新的图像,根据成像特点进行初步处理。如果成像已存在,则只进行平移和变形。焦距是其特征参数。通过操作,使物体距离凸透镜的有远近不同的变化,逻辑动画会呈现不同运动现象:物距大于两倍焦距,物比像大;物距等于两倍焦距,像和物等大;物距在一倍焦距到两倍焦距之间,像比物大;物距等于一倍焦距,不成像;物距小于一倍焦距,只成虚像。
又如物理学中的斜坡实验。设斜坡为智能Agent,滑块是普通的实验对象。斜面为热区,并且可设高度,倾斜角度,摩擦系数等参数。该智能Agent可以被拖动,自由调节参数。斜面的高度与角度均可调,它是一个几何图形三角形。处在热区即斜面上的物体,由于重力加速度的原因,比如小球会以初速度(可设置默认为0)沿着斜面下滑。高度、角度与摩擦系数均为斜面的特征参数。
由于编辑器内置逻辑模板集合,因此开发起课件来也特别简单,快捷,特别适合于教师使用。
本发明实施例的编辑器还可支持制作编辑时序动画,由编辑器支持编辑时间线,具体实施参考现有时序动画的制作平台即可。提供制作编辑时序动画的功能,可以方便习惯时序动画制作的用户,也可以将时序动画和逻辑动画结合制造出综合两者内容的逻辑动漫。时序动画有两种最主要的实现手段,一种是补间动画,另一种是引导层动画。在开始创建项目工程时的操作和后面的创建逻辑动漫的操作是类似的。
一个逻辑动漫工程文件可以包含一个或多个场景,其中有一个场景为主场景。场景中包含时间线对象,该对象用于记录该场景中在各图层中创建的所有的关键帧的索引,便于播放器按照该索引进行顺序播放。场景中还包含一个或多个图层,一个图层中包含一个或多个时刻点(帧),而时刻点(帧)中又包含有一个或多个元件对象,元件对象可以是图形、图片、动画、控件或声音中的任意一种,一个对象可以响应一个或多个事件,每个事件又包含一个或多个动作。时刻点(帧)中除了包含对象外,还可以包含有脚本,当播放到此帧时解释执行所设置的脚本;另外还可以包含其他场景(剪辑),这里只记录所包含的场景(剪辑)的ID即可。另外一个图层中还可以包含帧之间的关系,即帧与帧之间的变化关系类型,如补间动画。如果使用本发明提供平台设计游戏时,只需要创建关键时刻点(帧)即可,如果有多个场景,就创建多个时刻点(帧),唯一需要增加的是在每个时刻点(帧)中加入“某对象在某时刻停止”的脚本命令,需要进行场景转换时,添加并执行“屏蔽前一场景显示另一个场景n(n为场景的ID)”的脚本命令即可。而将这样的工程文件进行扩充,即添加其他图层,即可实现动画与游戏的结合。如果只用来创建单纯的动画工程时,不用去操作对象的事件和动作即可。在本发明所提供平台上,原始的矢量图形、图片、声音及视频剪辑等先被作为元件导入,然后再次封装成场景中的对象,用户可以对这些对象进行动作属性的设置,以满足对动画中动作的多样性的需求。
利用时间线可以实现页面中添加动画的功能,制作者可通过时间线来设定层的运动路径和所要使用的行为,从而实现动画。时间线由2部分组成,一部分为普通通道,用户可以通过在这个普通通道上排列关键帧来控制动画的运行;另一部分是逻辑轴,主要是用来插放行为。普通通道上的关键帧有2种制作方法:一种是直接添加关键帧法,用户先在通道上添加若干关键帧,再通过对各个关键帧的移动来设计层的运动路线,可以是直线也可以是曲线;另一种是实时记录法,是系统通过记录制层被拖动的路线,自动生成关键帧形成运动路线。
运动补间动画是FLASH里常用的效果。运动补间动画中使用的对象是元件、成组后的矢量图、可编辑文本或其他导入的元件对象。利用运动补间,可以使上述对象产生位置、大小或旋转的动画,对于导入的元件还可以产生颜色的变化,如淡入、淡出的动画效果。运动补间在每层中只能用于一个对象,如果需要在同一个文件中实现多个不同对象的运动,可以使用多个层来实现多个对象的运动补间。实现方法是,在一个关键帧上放置一个对象,然后在另一个关键帧改变这个对象的大小、颜色、位置、透明度等,根据二者之间的帧的值创建的动画。而且这里默认补间动画的方式是线性插值,就是在每个时间段都将对象移动精确相等的距离。
在场景中还可以制作引导层动画。引导层动画至少应该设置一个引导层和一个被引导层两个图层,并且引导层在上,被引导层在下。被引导层可以有多个,那就是多层引导动画了。被引导层上的对象,可以按照引导层上指定的路径运动。
利用引导线可以创建自然流畅的动画效果,适用于图形元件、影片剪辑元件等。引导层上的内容不会随文件一起导出,不会显示在发布的播放文件中。实施例引入一个引导线类(CStroke),它的实例是编辑器框架类(CMainFrame)的成员变量,专门保存用户在某一个时刻的关建帧,在场景中绘制的引导线,其中有一个成员变量就是用来保存引导线上点的数组,而且默认引导动画的方式是线性插值,就是在每个小的时间段都将对象移动相等的距离。
编译器主要是对工程文件中的脚本代码部分进行编译,首先读入要编译的脚本语言代码,进行词法分析,然后对其进行语法分析,得到语法树,然后对这些结果进行加工生成中间代码,最终将元件对象以向量形式传递给打包器。
打包器打包出工程主索引文件,供播放器使用。工程主索引文件是利用制作器制作逻辑动漫工程时保存和打开的主要文件,用于提供实现事件动作和逻辑关系的函数调用接口。建议工程主索引文件使用XML文件来实现,XML有专门的解析器用来读写,而且格式较为清晰,可读性较好。一个逻辑动漫工程文件可以存放于一个以工程名命名的目录下,该目录包含一个以工程名命名的工程主索引文件,以及资源目录。资源目录用于存放逻辑动漫工程中使用到的元件对象,可以分图形、图片、动画、控件或声音子目录进行分类存放。
转换器用于导出通用格式的图片文件,动画文件或者视频文件。实施时可以将这些导出功能设计成静态的函数,可以直接用在需要导出功能的界面中。
解释器读入中间代码后,可以为程序变量分配空间,赋初始值,并存放于数据列表中;将读入的事件序列,即将要处理的事件都读入到事件列表中,以便解释器解释执行对象事件的相应脚本代码。然后就只需等待播放器视图类检测到消息之后,执行相应的消息处理函数,并调用解释器。解释器在消息列表进行查找匹配,如果找到确有需要处理的相应消息,则读取该事件所对应的动作代码,并解释执行。解释执行时若遇到算术表达式的计算,解释器直接计算其结果,并修改相应变量的值;遇到条件跳转,则对条件进行判断,如果条件为真则顺序执行条件判断后的语句,否则跳到跳转点,然后顺序执行;遇到循环语句,则需要循环解释执行循环体内的代码,并修改循环变量,判断循环是否结束,如果在循环体中还有循环语句,则需要进行循环语句处理函数的递归调用,其使用的变量值,需要使用堆栈进行保存;遇到函数调用,则将函数调用转换成相应对象的相应函数来处理,这样可以直接操作对象,将产生的结果反映到对象上。
播放器除了绘制场景中的对象之外,还循环检测是否有事件发生,尤其是控件事件,比如单击按钮,以便随时调用相应的处理函数,响应事件。其他事件如鼠标事件,键盘事件等,需要由播放器视图类(PlayerView)获取后,并检测是否有对象需要接收该对象,如果有则执行相应事件的处理函数,处理函数调用解释器,利用解释器解释执行预先设定好的对象动作脚本。
为了便于实施参考,本发明提供利用实施例所实现平台进行制作逻辑动漫的过程如下:
(1)把需要的元件导入。具体来说,在增加元件时,可以在资源管理器中的某一类型的父节点项上右击,选择添加新的元件,此时根据添加元件的类型,创建新元件时,并为新元件分派惟一的id,并打开相应的元件创建或导入对话框,进行新对象的编辑或文件的导入。另外,可以在某一对象子节点上右击,选择删除元件,可以删除该元件。元件库的资源元件主要存储在资源目录文件夹下,又分类别为若干个子文件夹,分别对应图片库,文本库、声音库、视频库、控件库等。
(2)把元件包装成为元件对象。将元件库的元件由普通元件相应地变成封装的类之后,具有属性和动作,可以对各个类进行脚本编程,自定义动作,从资源区拖到工作区后就变成一个个具体的对象,可以响应相应的事件动作。与元件库对应的是对象库,其中包含的类的对象是元件库中所涉及到的元件。其中,元件对象类:该元件对象类是一个虚类,供以下子类进行继承,这些类是用于描述基本元件对象的:矢量对象类、矢量动画对象类、图片对象类、动画对象类、背景对象类、其他对象类。
(3)创建场景,放置对象,脚本编程。所有的对象可以在一个或多个作图空间显示,这些作图空间称为场景,场景之间可以进行切换。可以创建一个或多个场景,编写相应的脚本,使之发生联系,通过手工操作或是时间线驱动,形成动画效果。
以制作俄罗斯方块游戏为例,步骤如下:
第一步:绘制矢量图形对象
根据需要向平台中添加几个颜色不同的方块,每一个方块作为一个独立的矢量图形对象,这样在以后绘制游戏界面的时候可以随机的选择不同颜色的方块来显示,增加游戏的美观性。
第二步:添加音乐
一般游戏中都会添加一些音效来增加游戏的可玩性。比如在俄罗斯方块游戏中可以在平移,旋转下落图形,或者消去某一行时加上一些声音效果,会使游戏增色不少。因此在这个例子中也添加一些声音文件,在用户做出操作时,进行播放。
第三步:添加背景
背景在一个游戏场景可以创设一种情境,因此背景的选择要与游戏,以及当前场景相关,也就是说要选择合适的背景文件。在这个例子中,也可以加入一个场景文件,来增加游戏的趣味性。
第四步:添加脚本
脚本是用来驱动整个游戏及实现游戏逻辑的最重要的组成部分,也可以说游戏的成败与可玩性取决于游戏脚本的好坏。在这个俄罗斯方块游戏的例子中,主要靠脚本来完成方块的移动,旋转,消除和绘制。因此在这个例子中要添加处理玩家按键消息的一些处理脚本,如按左键向左移动下落图形,按右键向右移动下落图形,按向上键旋转图形,按向下键加速图形下落,在处理这些事件的脚本中主要是将游戏主界面数组和变化后的下落图形数组进行“叠加”的运算,计算出按键之后的当前游戏界面数组。此外还要添加初始化数组,检测是否可以消行的脚本,消行后的处理脚本,以及每次根据运算后得到的游戏界面数组进行方块的绘制的脚本。
第五步:添加对象动作
对对象进行动作序列的设计,也是比较重要的一个步骤,要做到处理方法合理。在这里的俄罗斯方块游戏的例子中,可利用数组实现方法,数组元素对应的方格内有方块的用1表示,没有方块的用0表示。因此基本上不需要对方块对象进行操作,所以主要是为特殊的对象添加事件,以及与事件相关的动作。如:
游戏开始事件:运行初始化脚本
设置时钟1
左键按钮事件:运行向左平移处理脚本
播放平移声音
右键按钮事件:运行向右平移处理脚本
播放平移声音
上键按钮事件:运行旋转图形处理脚本
播放旋转声音
下键按扭事件:运行加速下落处理脚本
播放下落声音
时钟1事件:运行下移图形处理脚本
设置时钟1
游戏步进事件:运行绘制图形处理脚本
运行检测消行处理脚本
播放消行声音
运行消行后处理脚本
第六步:添加场景
添加场景主要是进行游戏场景的布置,一个游戏中至少需要一个场景。一般步骤为添加背景,布置场景中的不需要移动的(一直显示的)对象,比如在这个例子可以利用其中的某个矢量图形对象围成一个边框。
第七步:打包编译
在制作器部分中的最后一步就是打包和编译,将游戏工程文件打包成最后的可以播放的打包文件。
第八步:运行游戏
游戏制作完成后,需要播放器部分运行一下制作好的游戏,一方面可以检测效果,另一方面可以进行测试,如果没有问题,就可以发布游戏了。
Claims (6)
1.一种逻辑动漫平台系统,其特征在于;包括制作器部分和播放器部分,
所述制作器部分包括编辑器、编译器和打包器,所述编辑器,编辑器用于先将收集添加的素材作为元件导入,然后对元件进行加工编辑,将所得编辑后的元件及其附加的事件动作和逻辑关系封装成元件对象,然后输送到编译器;
所述编译器,用于将元件对象编译成向量,然后传递给打包器;
所述打包器,用于把向量打包成工程主索引文件,所述工程主索引文件提供实现事件动作和逻辑关系的函数调用接口;然后根据工程主索引文件联系编辑器所提供元件对象,整理成逻辑动漫工程文件;
所述播放器部分包括解释器和播放器,
所述解释器,用于根据打包器所提供逻辑动漫工程文件中的工程主索引文件解释出元件对象及相应事件动作和逻辑关系的函数,并输出解释结果到播放器;所述播放器,用于根据解释结果还原元件对象及相应事件动作和逻辑关系,从而运行播放逻辑动漫。
2.如权利要求1所述逻辑动漫平台系统,其特征在于:所述编辑器内置逻辑模板集合,用于支持编辑元件的逻辑关系。
3.如权利要求1或2所述逻辑动漫平台系统,其特征在于:所述逻辑动漫工程文件为逻辑动画或益智游戏或动态课件。
4.如权利要求1或2所述逻辑动漫平台系统,其特征在于:所述制作器部份设置转换器,编辑器的当前编辑内容输入转换器,转换器将当前编辑内容转换输出为不具有交互性的表现形式。
5.如权利要求4所述逻辑动漫平台系统,其特征在于:所述不具有交互性的表现形式,是图片或者动画或者视频文件。
6.如权利要求1或2所述逻辑动漫平台系统,其特征在于:所述工程主索引文件采用xml文件格式。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2009100633075A CN101963899A (zh) | 2009-07-24 | 2009-07-24 | 一种逻辑动漫平台系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2009100633075A CN101963899A (zh) | 2009-07-24 | 2009-07-24 | 一种逻辑动漫平台系统 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN101963899A true CN101963899A (zh) | 2011-02-02 |
Family
ID=43516783
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2009100633075A Pending CN101963899A (zh) | 2009-07-24 | 2009-07-24 | 一种逻辑动漫平台系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN101963899A (zh) |
Cited By (17)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102254335A (zh) * | 2011-07-01 | 2011-11-23 | 厦门吉比特网络技术股份有限公司 | 游戏人物编辑系统和方法 |
CN102522016A (zh) * | 2011-12-23 | 2012-06-27 | 刘焯琛 | 一种用于视频教学的智能交互系统 |
CN102880283A (zh) * | 2011-07-14 | 2013-01-16 | 师源 | 将三维与二维数据相融合的交互式多媒体制作及播放系统 |
CN103677852A (zh) * | 2013-12-30 | 2014-03-26 | 山东舜德数据管理软件工程有限公司 | 一种可扩充的类自然语言公式编辑器的设计方法 |
CN104407893A (zh) * | 2014-11-25 | 2015-03-11 | 广州酷狗计算机科技有限公司 | 展示动画的方法及装置 |
CN104573334A (zh) * | 2014-12-24 | 2015-04-29 | 珠海金山网络游戏科技有限公司 | 一种利用标签事件触发特效和音效的播放系统和方法 |
CN104967893A (zh) * | 2014-07-10 | 2015-10-07 | 腾讯科技(北京)有限公司 | 便携电子设备的视频生成方法和装置 |
CN105955731A (zh) * | 2016-04-26 | 2016-09-21 | 深圳市编玩边学教育科技有限公司 | 一种手机游戏快速编写方法和系统 |
CN105976659A (zh) * | 2016-05-05 | 2016-09-28 | 成都世纪智慧科技有限公司 | 一种基于互联网的信息安全在线开放实训平台 |
CN102880283B (zh) * | 2011-07-14 | 2016-12-14 | 师源 | 将三维与二维数据相融合的交互式多媒体制作及播放系统 |
CN106257414A (zh) * | 2015-06-19 | 2016-12-28 | 拓维信息系统股份有限公司 | 一种手机数字动漫创作系统 |
CN107451239A (zh) * | 2017-07-26 | 2017-12-08 | 深圳Tcl新技术有限公司 | Linux终端及其文件索引方法、计算机可读存储介质 |
CN107862729A (zh) * | 2017-08-24 | 2018-03-30 | 平安普惠企业管理有限公司 | 层级动画生成方法、终端及可读存储介质 |
CN110233975A (zh) * | 2018-06-30 | 2019-09-13 | 唐华成 | 一种电子课件制作方法和播放系统 |
CN111429341A (zh) * | 2020-03-27 | 2020-07-17 | 咪咕文化科技有限公司 | 一种视频处理方法、设备及计算机可读存储介质 |
CN112637520A (zh) * | 2020-12-23 | 2021-04-09 | 新华智云科技有限公司 | 一种动态视频编辑方法及其系统 |
CN113434197A (zh) * | 2021-06-30 | 2021-09-24 | 完美世界征奇(上海)多媒体科技有限公司 | 资源发布方法、装置、计算机设备及计算机可读存储介质 |
-
2009
- 2009-07-24 CN CN2009100633075A patent/CN101963899A/zh active Pending
Cited By (24)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102254335B (zh) * | 2011-07-01 | 2013-01-02 | 厦门吉比特网络技术股份有限公司 | 游戏人物编辑系统和方法 |
CN102254335A (zh) * | 2011-07-01 | 2011-11-23 | 厦门吉比特网络技术股份有限公司 | 游戏人物编辑系统和方法 |
CN102880283B (zh) * | 2011-07-14 | 2016-12-14 | 师源 | 将三维与二维数据相融合的交互式多媒体制作及播放系统 |
CN102880283A (zh) * | 2011-07-14 | 2013-01-16 | 师源 | 将三维与二维数据相融合的交互式多媒体制作及播放系统 |
CN102522016A (zh) * | 2011-12-23 | 2012-06-27 | 刘焯琛 | 一种用于视频教学的智能交互系统 |
CN103677852A (zh) * | 2013-12-30 | 2014-03-26 | 山东舜德数据管理软件工程有限公司 | 一种可扩充的类自然语言公式编辑器的设计方法 |
CN104967893A (zh) * | 2014-07-10 | 2015-10-07 | 腾讯科技(北京)有限公司 | 便携电子设备的视频生成方法和装置 |
CN104967893B (zh) * | 2014-07-10 | 2019-03-29 | 腾讯科技(北京)有限公司 | 便携电子设备的视频生成方法和装置 |
CN104407893A (zh) * | 2014-11-25 | 2015-03-11 | 广州酷狗计算机科技有限公司 | 展示动画的方法及装置 |
CN104407893B (zh) * | 2014-11-25 | 2017-11-03 | 广州酷狗计算机科技有限公司 | 展示动画的方法及装置 |
CN104573334A (zh) * | 2014-12-24 | 2015-04-29 | 珠海金山网络游戏科技有限公司 | 一种利用标签事件触发特效和音效的播放系统和方法 |
CN106257414A (zh) * | 2015-06-19 | 2016-12-28 | 拓维信息系统股份有限公司 | 一种手机数字动漫创作系统 |
CN105955731B (zh) * | 2016-04-26 | 2019-05-14 | 深圳市编玩边学教育科技有限公司 | 一种手机游戏快速编写方法和系统 |
CN105955731A (zh) * | 2016-04-26 | 2016-09-21 | 深圳市编玩边学教育科技有限公司 | 一种手机游戏快速编写方法和系统 |
CN105976659A (zh) * | 2016-05-05 | 2016-09-28 | 成都世纪智慧科技有限公司 | 一种基于互联网的信息安全在线开放实训平台 |
CN107451239A (zh) * | 2017-07-26 | 2017-12-08 | 深圳Tcl新技术有限公司 | Linux终端及其文件索引方法、计算机可读存储介质 |
CN107862729B (zh) * | 2017-08-24 | 2021-07-02 | 平安普惠企业管理有限公司 | 层级动画生成方法、终端及可读存储介质 |
CN107862729A (zh) * | 2017-08-24 | 2018-03-30 | 平安普惠企业管理有限公司 | 层级动画生成方法、终端及可读存储介质 |
CN110233975A (zh) * | 2018-06-30 | 2019-09-13 | 唐华成 | 一种电子课件制作方法和播放系统 |
CN111429341A (zh) * | 2020-03-27 | 2020-07-17 | 咪咕文化科技有限公司 | 一种视频处理方法、设备及计算机可读存储介质 |
CN111429341B (zh) * | 2020-03-27 | 2023-08-18 | 咪咕文化科技有限公司 | 一种视频处理方法、设备及计算机可读存储介质 |
CN112637520A (zh) * | 2020-12-23 | 2021-04-09 | 新华智云科技有限公司 | 一种动态视频编辑方法及其系统 |
CN112637520B (zh) * | 2020-12-23 | 2022-06-21 | 新华智云科技有限公司 | 一种动态视频编辑方法及其系统 |
CN113434197A (zh) * | 2021-06-30 | 2021-09-24 | 完美世界征奇(上海)多媒体科技有限公司 | 资源发布方法、装置、计算机设备及计算机可读存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101963899A (zh) | 一种逻辑动漫平台系统 | |
CN103197929B (zh) | 一种面向儿童的图形化编程系统和方法 | |
US7636093B1 (en) | Parameterized motion paths | |
Dabit | React Native in action | |
Satheesh | Unreal Engine 4 Game Development Essentials | |
Weaver et al. | Pro JavaFX 2: A Definitive Guide to Rich Clients with Java Technology | |
Leete | Microsoft Expression Blend Bible | |
Dessart et al. | Animated transitions between user interface views | |
Paul et al. | React Native for Mobile Development | |
Ungar et al. | Self | |
Blackwell | Palimpsest: A layered language for exploratory image processing | |
Moock | ActionScript for Flash MX: the definitive guide | |
Downie | Field—a new environment for making digital art | |
Grinev | Mastering JavaFX 10: Build advanced and visually stunning Java applications | |
Anderson et al. | Essential JavaFX | |
KR20140105044A (ko) | 인터랙티브한 편집기능이 구비된 멀티 미디어 컨텐츠 저작 시스템 및 그 방법 | |
Weil | Learn WPF MVVM-XAML, C# and the MVVM pattern | |
Doug Lowe | JavaFX for dummies | |
Tadres | Extending Unity with Editor Scripting | |
Ristimäki | Expanding Flutter Framework: generative art with alternative tools | |
Willman | Working with Qt Quick | |
Shroff et al. | Instant multi-tier web applications without tears | |
Weaver et al. | Pro JavaFX 2 | |
Williams | Microsoft expression blend unleashed | |
Brusca | Making It Professional |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C02 | Deemed withdrawal of patent application after publication (patent law 2001) | ||
WD01 | Invention patent application deemed withdrawn after publication |
Application publication date: 20110202 |