CN103377039B - 一种网页游戏开发、解析方法、一种编辑器以及解析装置 - Google Patents
一种网页游戏开发、解析方法、一种编辑器以及解析装置 Download PDFInfo
- Publication number
- CN103377039B CN103377039B CN201210107777.9A CN201210107777A CN103377039B CN 103377039 B CN103377039 B CN 103377039B CN 201210107777 A CN201210107777 A CN 201210107777A CN 103377039 B CN103377039 B CN 103377039B
- Authority
- CN
- China
- Prior art keywords
- game
- layer
- editing machine
- self
- section
- 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
Links
Landscapes
- Stored Programmes (AREA)
Abstract
本发明公开了一种网页游戏开发、解析方法、一种编辑器以及解析装置,属于计算机领域。所述方法包括:编辑器将第一用户输入的界面元素保存在所述编辑器自定义的对象中,并将所述自定义对象打包得到界面资源包;生成具有将所述自定义的对象转换为所述自定义的对象对应的DOM对象功能的界面代码;保存所述界面资源包、所述界面代码以及所述网页游戏的逻辑代码,得到所述网页游戏。本发明通过将网页游戏的界面元素保存在自定义的对象中,并进行打包得到界面资源包,可以使得界面元素与逻辑代码分离开来,便于管理,且能够减少开发复杂度,开发效率高。
Description
技术领域
本发明涉及计算机领域,特别涉及一种网页游戏开发、解析方法、一种编辑器以及解析装置。
背景技术
网页游戏(Webgame)又称Web游戏,无端网游,简称页游。是基于Web浏览器的网络在线多人互动游戏,无需下载客户端,只需打开IE网页,即可进入游戏。目前,对于网页游戏的界面的开发主要使用CSS(Cascading Stylesheet,层叠样式表)3+HTML(HypertextMarkup Language,超文本标记语言)DOM(Document Object Model,文本对象模型)的方法。
在制作网页游戏的界面时,通过JavaScript调用CSS的属性,可以有效地对页面的布局、字体、颜色、背景和其它效果实现更加精确的控制,CSS3是CSS技术的升级版本。在完成网页游戏的界面后,再由开发人员根据预先为该网页游戏设置的逻辑编写逻辑代码,以使得该网页游戏可以按照预定的逻辑运行,最终得到网页游戏。
HTML DOM则是专门适用与HTML最佳化HTML/XHTML(eXtensible HyperTextMarkup Language,可扩展超文本置标语言)的文档对象模型,可以将HTMLDOM理解为网页的API(Application Programming Interface,应用程序编程接口)。它将网页中的各个元素都看作一个个对象,从而使网页中的元素也可以被计算机语言获取或者编辑。例如Javascript就可以利用HTMLDOM动态的修改网页。
在实现本发明的过程中,发明人发现现有技术至少存在以下问题:
在通过现有技术开发网页游戏时,网页游戏的界面元素管理困难,例如标签元素的创建需关注到资源来源、位置摆放、元素移动、元素隐藏等特性,且需要代码开发人员的使用代码调用CSS属性才能设置界面元素的各种效果,美工人员不能独自完成游戏界面的开发,导致网页游戏的开发复杂,效率低。
发明内容
为了解决现有技术的问题,本发明实施例提供了一种网页游戏开发、解析方法、一种编辑器以及解析装置。所述技术方案如下:
一种网页游戏开发方法,所述方法包括:
编辑器将第一用户输入的界面元素保存在所述编辑器自定义的对象中,并将所述自定义对象打包得到界面资源包;
生成具有将所述自定义的对象转换为所述自定义的对象对应的DOM对象功能的界面代码;
保存所述界面资源包、所述界面代码以及所述网页游戏的逻辑代码,得到所述网页游戏。
进一步地,所述保存所述界面资源包、所述界面代码以及所述网页游戏的逻辑代码之前,所述方法还包括:
接收第二用户根据所述界面元素为所述网页游戏定义的逻辑代码。
进一步地,所述编辑器将第一用户输入的界面元素保存在所述编辑器自定义的对象中,具体包括:
所述编辑器将每一个界面元素作为一个切片保存在所述编辑器自定义的切片对象中;
其中,所述切片对象中的切片与所述界面元素一一对应,且所述切片对象中保存有每一个切片的属性信息,所述属性信息至少包括所述切片的标识、坐标、透明度、旋转角度、翻转方向以及所述切片的下一个切片的标识。
进一步地,所述编辑器将每一个界面元素作为一个切片保存在所述编辑器自定义的切片对象中之前,所述方法还包括:
当接收到所述第一用户发出的创建层的指令时,创建所述界面元素所对应的层,所述层包括精灵或切片;
将所述层的标识以及所述层包括的精灵或切片的标识记录在所述编辑器自定义的层对象中;
其中,所述层对象用于指示所述层包括的精灵或切片,所述界面元素对应的层包括地图层和精灵层,所述地图层用于显示静态的界面元素,所述精灵层用于显示动态的界面元素。
进一步地,所述创建所述界面元素所对应的层之前,所述方法还包括:
当接收到所述第一用户发出的创建游戏场景的指令时,创建游戏场景,所述游戏场景包括层;
将所述游戏场景的标识以及所述游戏场景包括的层的标识记录在所述编辑器自定义的场景对象中;
其中,所述场景对象用于指示所述游戏场景所包括的层。
进一步地,当所述层对象中记录有所述层包括的精灵的标识时,所述方法还包括:
当接收到所述第一用户发出的创建精灵的指令时,创建精灵,所述精灵包括动作;并将所述精灵的标识以及所述精灵包括的动作的标识记录在所述编辑器自定义的精灵对象中,所述精灵对象用于指示所述精灵层所包括的动作;
当接收到所述第一用户发出的创建动作的指令时,创建动作,所述动作包括帧;并将所述动作的标识以及所述动作包括的帧的标识记录在所述编辑器自定义的动作对象中,所述动作对象用于指示所述动作所包括的帧;
当接收到所述第一用户发出的创建帧的指令时,创建帧,所述帧包括切片;并将所述帧的标识以及所述帧包括的切片的标识记录在所述编辑器自定义的帧对象中,所述帧对象用于指示所述帧包括的切片。
进一步地,在所述创建游戏场景之前,所述方法还包括:
当接收到所述第一用户发出的创建游戏工程的指令时,创建游戏工程,所述游戏工程包括游戏场景;
将所述游戏工程的标识以及所述游戏工程包括的游戏场景的标识记录在所述编辑器自定义的工程对象中,所述工程对象用于指示所述网页游戏所包括的游戏场景。
进一步地,所述保存所述界面资源包、所述界面代码和所述逻辑代码之后,还包括:
生成所述网页游戏的资源列表,并在所述资源列表中记录所述界面资源包、所述界面代码和所述逻辑代码的地址。
一种网页游戏解析方法,所述方法包括:
下载所述网页游戏的界面资源包、界面代码、逻辑代码;
通过所述界面代码将所述界面资源包中的自定义对象转换为所述自定义对象对应的DOM对象,得到HTML所支持的代码;
解析所述代码得到所述网页游戏的界面。
进一步地,下载所述网页游戏的界面资源包、界面代码、逻辑代码,具体包括:
获取所述网页游戏的资源列表,所述资源列表中记录有所述界面资源包、所述界面代码和所述逻辑代码的地址;
根据所述地址下载所述界面资源包、所述界面代码和所述逻辑代码。
一种编辑器,所述编辑器包括:
第一保存模块,用于将第一用户输入的界面元素保存在所述编辑器自定义的对象中;
打包模块,用于将所述自定义对象打包得到界面资源包;
第一代码生成模块,用于生成具有将所述自定义的对象转换为所述自定义的对象对应的DOM对象功能的界面代码;
第二保存模块,用于保存所述界面资源包、所述界面代码以及所述网页游戏的逻辑代码,得到所述网页游戏。
进一步地,所述编辑器还包括:
接收模块,用于在所述第二保存模块保存所述界面资源包、所述界面代码以及所述网页游戏的逻辑代码之前,接收第二用户根据所述界面元素为所述网页游戏定义的逻辑代码。
进一步地,所述第一保存模块,具体包括:
切片保存单元,用于每一个界面元素作为一个切片保存在所述编辑器自定义的切片对象中;
其中,所述切片对象中的切片与所述界面元素一一对应,且所述切片对象中保存有每一个切片的属性信息,所述属性信息至少包括所述切片的标识、坐标、透明度、旋转角度、翻转方向以及所述切片的下一个切片的标识。
进一步地,所述第一保存模块还包括:
层保存单元,用于在所述切片保存单元将每一个界面元素作为一个切片保存在所述编辑器自定义的切片对象中之前,当接收到所述第一用户发出的创建层的指令时,创建所述界面元素所对应的层,所述层包括精灵或切片,将所述层的标识以及所述层包括的精灵或切片的标识记录在所述编辑器自定义的层对象中;
其中,所述层对象用于指示所述层包括的精灵或切片,所述界面元素对应的层包括地图层和精灵层,所述地图层用于显示静态的界面元素,所述精灵层用于显示动态的界面元素。
进一步地,所述第一保存模块还包括:
场景保存单元,用于在所述层保存单元创建所述界面元素所对应的层之前,当接收到所述第一用户发出的创建游戏场景的指令时,创建游戏场景,所述游戏场景包括层,将所述游戏场景的标识以及所述游戏场景包括的层的标识记录在所述编辑器自定义的场景对象中;
其中,所述场景对象用于指示所述游戏场景所包括的层。
进一步地,当所述层对象中记录有所述层包括的精灵的标识时,所述第一保存模块还包括:
精灵保存单元,用于当接收到所述第一用户发出的创建精灵的指令时,创建精灵,所述精灵包括动作,并将所述精灵的标识以及所述精灵包括的动作的标识记录在所述编辑器自定义的精灵对象中,所述精灵对象用于指示所述精灵层所包括的动作;
动作保存单元,用于当接收到所述第一用户发出的创建动作的指令时,创建动作,所述动作包括帧,并将所述动作的标识以及所述动作包括的帧的标识记录在所述编辑器自定义的动作对象中,所述动作对象用于指示所述动作所包括的帧;
帧保存单元,用于当接收到所述第一用户发出的创建帧的指令时,创建帧,所述帧包括切片,并将所述帧的标识以及所述帧包括的切片的标识记录在所述编辑器自定义的帧对象中,所述帧对象用于指示所述帧包括的切片。
进一步地,所述第一保存模块还包括:
工程保存单元,用于在所述场景保存单元创建游戏场景之前,当接收到所述第一用户发出的创建游戏工程的指令时,创建游戏工程,所述游戏工程包括游戏场景,并将所述游戏工程的标识以及所述游戏工程包括的游戏场景的标识记录在所述编辑器自定义的工程对象中,所述工程对象用于指示所述网页游戏所包括的游戏场景。
进一步地,所述编辑器还包括:
列表生成模块,用于在所述第二保存模块保存所述界面资源包、所述界面代码和所述逻辑代码之后,生成所述网页游戏的资源列表,并在所述资源列表中记录所述界面资源包、所述界面代码和所述逻辑代码的地址。
一种解析装置,所述装置包括:
下载模块,用于下载网页游戏的界面资源包、界面代码、逻辑代码;
转换模块,用于通过所述界面代码将所述界面资源包中的自定义对象转换为所述自定义对象对应的DOM对象,得到HTML所支持的代码;
解析模块,用于解析所述代码得到所述网页游戏的界面。
进一步地,所述下载模块,具体包括:
第一下载单元,用于获取所述网页游戏的资源列表,所述资源列表中记录有所述界面资源包、所述界面代码和所述逻辑代码的地址;
第二下载单元,用于根据所述地址下载所述界面资源包、所述界面代码和所述逻辑代码。本发明实施例提供的技术方案带来的有益效果是:
本发明的有益效果是:本发明通过将网页游戏的界面元素保存在自定义的对象中,并进行打包得到界面资源包,可以使得界面元素与逻辑代码分离开来,便于管理,且能够减少开发复杂度,开发效率高。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明实施例一提供的一种网页游戏开发方法的流程图;
图2是本发明实施例二提供的一种网页游戏开发方法的流程图;
图3是本发明实施例二提供的将自定义的对象转换为DOM对象的方法的流程图;
图4是本发明实施例三提供的一种网页游戏的解析方法的流程图;
图5是本发明实施例四提供的一种编辑器的结构示意图;
图6是本发明实施例四提供的一种编辑器的第二种结构示意图;
图7是本发明实施例四提供的一种编辑器中的第一保存模块的结构示意图;
图8是本发明实施例四提供的一种编辑器中的第一保存模块的第二种结构示意图;
图9是本发明实施例四提供的一种编辑器中的第一保存模块的第三种结构示意图;
图10是本发明实施例四提供的一种编辑器中的第一保存模块的第四种结构示意图;
图11是本发明实施例四提供的一种编辑器的第三种结构示意图;
图12是本发明实施例五提供的一种解析装置的结构示意图;
图13是本发明实施例五提供的一种解析装置中的下载模块的结构示意图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明实施方式作进一步地详细描述。
实施例一
如图1所示,本实施例提供了一种网页游戏开发方法,包括如下步骤:
101、编辑器将第一用户输入的界面元素保存在编辑器自定义的对象中,并将自定义对象打包得到界面资源包;
102、生成具有将自定义对象转换为自定义对象对应的DOM对象功能的界面代码;
103、保存界面资源包、界面代码以及网页游戏的逻辑代码,得到网页游戏。
本实施例提供了一种网页游戏开发方法,通过将网页游戏的界面元素保存在自定义的对象中,并进行打包得到界面资源包,可以使得界面元素与逻辑代码分离开来,便于管理,且能够减少开发复杂度,开发效率高。
实施例二
本发明实施例提供了一种网页游戏开发方法,是在实施例1的基础之上进行的进一步详化,需要说明的是,在本实施例中,下述方法中完成的各个操作具体为开发人员通过自定义的编辑器进行实现,开发人员可包括第一用户和第二用户。
在本实施例中,第一用户具体的可以为美工人员,第二用户具体的可以为代码开发人员。
参见图2,一种网页游戏开发方法,包括如下步骤:
201、编辑器接收第一用户输入的界面元素,并保存在自定义的对象中;
其中,界面元素包括网页游戏的界面中出现的文字、图片,还可以包括矩形框。
矩形框用于表示在游戏进行时,界面中需要重绘的部分。在游戏进行时,游戏界面的每次刷新均需要重绘画面,为了计算机的减少计算量,并不是每次将画面全部进行重绘,而只是将需要更新的部分进行重绘,具体重绘的部分以矩形框为单位。本实施例中的“矩形框”,用以向游戏画面绘制时使用的“脏矩形”算法提供重绘对象。
在本实施例中,所提供的编辑器自定义的对象,至少可包括以下对象中的任一种:工程对象(Editor Project)、场景对象(Editor Scene)、层对象(Editor Map)、精灵对象(Editor Sprite)、动作对象(EditorAction)、帧对象(EditorFrame)和切片对象(EditorClip)。
通过上述自定义的对象,即可完成第一用户对游戏界面的开发,如图3所示,详细如下:
201-1、当接收到第一用户发出的创建游戏功能的指令时,创建游戏工程,并将该游戏工程的标识以及该游戏工程包括的游戏场景的标识记录在Editor Project中;
其中,游戏工程包括游戏场景,游戏工程还可以进一步地包括当前网页游戏的代码和资源包。
Editor Project用以指示当前网页游戏所包括的游戏场景。例如,第一用户可为当前网页游戏设定包括多个游戏场景,并为每个游戏场景设定对应的场景标识,并将这些场景标识记录在Editor Project中,并与该游戏工程建立包含关系。
201-2、当接收到第一用户发出的创建游戏场景的指令时,创建游戏场景,并将游戏场景的标识以及该游戏场景所包括的层记录在Editor Scene中;
其中,游戏场景由层组成,且包括至少一个层,Editor Scene用于指示每个游戏场景所包括的层。例如,可为每个层设定层标识,并将这些层标识记录在Editor Scene中,并使层标识与其所属的游戏场景相对应。
201-3、当接收到第一用户发出的创建层的指令时,创建层,并将该层的标识以及该层包括的精灵或切片的标识记录在Editor Map中;
在本实施例中,可将层划分为两种:地图层和精灵层。地图层,用于显示游戏界面中静态的界面元素,例如背景;精灵层,用于显示动态的界面元素,即在游戏界面中会随着游戏过程不断变化的界面元素,例如由用户控制的游戏人物或动画。
进一步地,本实施例所提供的编辑器中,每一个界面元素通过一个切片进行表示,切片可以为文字、图片或矩形框。
由于地图层用于显示静态元素,因此地图层由切片构成,而精灵层用于显示动态元素,因此精灵层由精灵构成。精灵在图像处理中为现有概念,这里不再赘述。
Editor Map用于指示每个层中包括的精灵或切片;例如,可以为每个精灵或切片分配对应的精灵标识和切片标识,并记录在Editor Map中,且使每个层的层标识与其包括的精灵的精灵标识或切片的切片标识相对应。
201-4、判断上述层的类型,如果为地图层,执行步骤201-8,如果为精灵层,执行步骤201-5;
201-5、当接收到第一用户发出的创建精灵的指令时,为精灵层创建精灵,并将精灵的标识以及该精灵包括的动作的标识记录在Editor Sprite中;
需要说明的是,精灵层由精灵构成,例如,当前精灵层同时包括两个会动的人物,则每个人物可以被表示为一个精灵,精灵由至少一个动作构成,动作至少由两个帧构成,帧至少由一个切片构成。
其中,Editor Sprite用于指示每个精灵所包括的动作;例如,可以为精灵的每个动作分配标识,并将这些动作的标识记录在Editor Sprite中,且每个精灵与其所包括的动作的标识相对应。
201-6、当接收到第一用户发出的创建帧的指令时,为精灵创建动作,并将动作的标识以及该动作包括的的帧的标识记录在Editor Action中;
其中,每个动作至少由两个帧组成,Editor Action用于指示每个动作所包括的帧;例如,可为每个帧分配标识,在EditorAction中存储动作的帧标识以及该动作所包括的帧的标识。
201-7、当接收到第一用户发出的创建帧的指令时,为动作创建帧,并帧的标识以及该帧所包括的切片的标识记录在Editor Frame中;
其中,每个帧至少由一个切片组成,EditorFrame用于指示每个帧所包括的切片;例如,可以为每个切片分配标识,在Editor Frame中存储帧的标识以及该帧所包括的切片的标识。
201-8、根据用户输入的界面元素创建切片,并记录在Editor Clip中。
其中,Editor Clip用于存储每个切片所对应的界面元素,包括文字、图片和矩形框,并且存储每个切片的属性信息,属性信息至少包括该切片的标识、坐标、透明度、旋转角度、翻转方向以及该切片的下一个切片的标识。
需要说明的是,基于本实施例上述所提供的方法,第一用户可以随时调整界面元素,例如对其位置进行调整,并可即时预览,能够达到动态开放界面的效果。
202、将上述得到的自定义的对象进行打包,得到界面资源包;
在本实施例中,通过将网页游戏的界面元素保存在自定义的对象中,并打包形成统一的界面资源包,可以做到资源输出统一化,较现有技术中的图片单张存储具有管理便捷的优点。并且,在后期用户打开游戏时,对于游戏的界面,只需下载一次界面资源包即可,不需要单张图片的下载,可减少下载次数,减少与服务器的交互次数,以减少服务器负担。
进一步地,步骤201和202中的开发工作,直接交由第一用户即可完成,美工完成游戏的界面开发后,打包得到界面资源包,可直接交由第二用户进行逻辑代码的开发,不再需要第二用户的介入,减少了开发复杂度。
203、编辑器接收第二用户根据界面元素为网页游戏定义的逻辑代码;
进一步地,在本步骤之前还可以包括:
第一用户在得到界面资源包后,发送给第二用户,第二用户将界面资源包使用编辑器打开,并将界面资源包进行解析得到界面元素。
其中,编辑器解析界面资源包的过程与步骤201中的过程为逆过程,这里不再赘述。
本步骤具体的为,编辑器在得到界面元素后,根据自定义的对象与DOM对象的对应关系将界面资源包中的自定义的对象解析成对应的DOM对象,第二用户根据DOM对象的标识写相应的点击事件逻辑即可。
其中,第二用户根据预先为该网页游戏设置的逻辑编写逻辑代码,以使得该网页游戏可以按照预定的逻辑运行,与现有技术相同,这里不再赘述。
需要说明的是,在本发明中,规定编辑器中自定义的对象与DOM对象存在如下对应关系:
Editor Project→Dom Project
Editor Scene→Dom Scene
Editor Map→Dom Map
Editor Sprite→Dom Sprite
Editor Action→Dom Action
Editor Frame→Dom Frame
Editor Clip→Dom Clip。
204、生成具有将自定义的对象转换为自定义的对象对应的DOM对象功能的界面代码;
需要说明的是,用户在客户端通过网页打开网页游戏,因此,该网页游戏必须支持HTML,浏览器才能够正常解析以显示该网页游戏。
而在本发明中,网页游戏的界面元素均通过步骤201中所述的自定义的对象进行保存,浏览器不能够进行正常的解析。因此,需要向客户端发送具有将自定义的对象转换为自定义的对象对应的DOM对象功能的界面代码,使得客户端浏览器可以根据界面代码将自定义的对象转换为自定义的对象对应的DOM对象,以得到HTML所支持的代码,例如JavaScript,以进行解析。
因此,本步骤具体的为,将自定义的对象与DOM对象的对应关系写入界面代码,使得客户端的浏览器可根据界面代码中的自定义的对象与DOM对象的对应关系将自定义的对象转换为DOM对象。
205、生成所述网页游戏的资源列表;
其中,资源列表中记录界面资源包、界面代码和逻辑代码的地址。
206、配置所述网页游戏的网络连接,完成网页游戏的开发。
本实施例提供了一种网页游戏的开发方法,本方法通过将网页游戏的界面元素保存在自定义的对象中,并进行打包得到界面资源包,可以使得界面元素与逻辑代码分离开来,便于管理,且能够减少开发复杂度,开发效率高。
实施例三
本实施例提供了一种网页游戏的解析方法,在通过实施例3中所示的方法完成上述网页游戏的开发后,用户即可通过浏览器访问该网页游戏。
如图4所示,一种网页游戏的解析方法,包括如下步骤:
301、访问网页游戏的网址,获取网页游戏的资源列表;
其中,资源列表中记录有网页游戏的界面资源包、界面代码和逻辑代码的地址。
302、根据上述资料列表中的地址下载界面资源包、界面代码和逻辑代码;
203、通过界面代码将界面资源包中的自定义对象转换为该自定义对象对应的DOM对象,得到HTML所支持的代码;
在本实施例中,HTML所支持的代码可以为JavaScript。
304、解析上述代码得到所述网页游戏的界面。
进一步地,在得到网页游戏的界面后,用户(例如玩家)即可通过对界面的控制,触发逻辑代码所规定的逻辑,开始进行游戏。
本实施例提供了一种网页游戏的解析方法,通过下载界面代码,并根据界面代码将自定义的对象转换为DOM对象,以进行解析,可以减少资源下载次数,减少客户端与服务器的交互次数,减少了服务器的负担。
实施例四
如图5所示,本实施例提供了一种编辑器,该编辑器包括:
第一保存模块401,用于将第一用户输入的界面元素保存在编辑器自定义的对象中;
打包模块402,用于将自定义对象打包得到界面资源包;
第一代码生成模块403,用于生成具有将自定义的对象转换为自定义的对象对应的DOM对象功能的界面代码;
第二保存模块404,用于保存界面资源包、界面代码以及网页游戏的逻辑代码,得到网页游戏。
进一步地,如图6所示,该编辑器还包括:
接收模块405,用于在第二保存模块404保存界面资源包、界面代码以及网页游戏的逻辑代码之前,接收第二用户根据界面元素为网页游戏定义的逻辑代码。
进一步地,第一保存模块401,具体包括:
切片保存单元4011,用于每一个界面元素作为一个切片保存在编辑器自定义的切片对象中;
其中,切片对象中的切片与界面元素一一对应,且切片对象中保存有每一个切片的属性信息,属性信息至少包括切片的标识、坐标、透明度、旋转角度、翻转方向以及切片的下一个切片的标识。
进一步地,如图7所示,第一保存模块401还包括:
层保存单元4012,用于在切片保存单元4011将每一个界面元素作为一个切片保存在编辑器自定义的切片对象中之前,当接收到第一用户发出的创建层的指令时,创建界面元素所对应的层,上述层包括精灵或切片,并将层的标识以及层包括的精灵或切片的标识记录在编辑器自定义的层对象中;
其中,层对象用于指示层包括的精灵或切片,界面元素对应的层包括地图层和精灵层,地图层用于显示静态的界面元素,精灵层用于显示动态的界面元素。
进一步地,如图8所示,第一保存模块401还包括:
场景保存单元4013,用于在层保存单元4012创建界面元素所对应的层之前,当接收到第一用户发出的创建游戏场景的指令时,创建游戏场景,该游戏场景包括层,并将游戏场景的标识以及游戏场景包括的层的标识记录在编辑器自定义的场景对象中;
其中,场景对象用于指示游戏场景所包括的层。
进一步地,如图9所示,当层对象中记录有层包括的精灵的标识时,第一保存模块401还包括:
精灵保存单元4014,用于当接收到第一用户发出的创建精灵的指令时,创建精灵,该精灵包括动作,并将精灵的标识以及精灵包括的动作的标识记录在编辑器自定义的精灵对象中,精灵对象用于指示精灵层所包括的动作;
动作保存单元4015,用于当接收到第一用户发出的创建动作的指令时,创建动作,该动作包括帧,并将动作的标识以及动作包括的帧的标识记录在编辑器自定义的动作对象中,动作对象用于指示动作所包括的帧;
帧保存单元4016,用于当接收到第一用户发出的创建帧的指令时,创建帧,该帧包括切片,并将帧的标识以及帧包括的切片的标识记录在编辑器自定义的帧对象中,帧对象用于指示帧包括的切片。
进一步地,如图10所示,第一保存模块401还包括:
工程保存单元4017,用于在场景保存单元4013创建游戏场景之前,当接收到第一用户发出的创建游戏工程的指令时,创建游戏工程,该游戏工程包括游戏场景,并将游戏工程的标识以及游戏工程包括的游戏场景的标识记录在编辑器自定义的工程对象中,工程对象用于指示网页游戏所包括的游戏场景。
进一步地,如图11所示,上述编辑器还包括:
列表生成模块406,用于在第二保存模块404保存界面资源包、界面代码和逻辑代码之后,生成网页游戏的资源列表,并在资源列表中记录界面资源包、界面代码和逻辑代码的地址。
本实施例提供了一种编辑器,该编辑器可通过将网页游戏的界面元素保存在自定义的对象中,并进行打包得到界面资源包,可以使得界面元素与逻辑代码分离开来,便于管理,且能够减少开发复杂度,开发效率高。
实施例五
如图12所示,本实施例提供了一种解析装置,具体可以为网页浏览器,该装置包括:
下载模块501,用于下载网页游戏的界面资源包、界面代码、逻辑代码;
转换模块502,用于通过界面代码将界面资源包中的自定义对象转换为自定义对象对应的DOM对象,得到HTML所支持的代码;
解析模块503,用于解析代码得到网页游戏的界面。
进一步地,如图13所示,下载模块501,具体包括:
第一下载单元5011,用于获取网页游戏的资源列表,资源列表中记录有界面资源包、界面代码和逻辑代码的地址;
第二下载单元5012,用于根据地址下载界面资源包、界面代码和逻辑代码。
本实施例提供了一种解析装置,该装置通过下载界面代码,并根据界面代码将自定义的对象转换为DOM对象,以进行解析,可以减少资源下载次数,减少用户客户端与服务器的交互次数,减少了服务器的负担。
本领域普通技术人员可以理解实现上述实施例的全部或部分步骤可以通过硬件来完成,也可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等。
以上所述仅为本发明的较佳实施例,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (14)
1.一种网页游戏开发方法,其特征在于,所述方法包括:
编辑器将第一用户输入的界面元素保存在所述编辑器自定义的对象中,并将所述自定义对象打包得到界面资源包;
生成具有将所述自定义的对象转换为所述自定义的对象对应的文本对象模型DOM对象功能的界面代码;
保存所述界面资源包、所述界面代码以及网页游戏的逻辑代码,得到所述网页游戏;
其中,所述编辑器将第一用户输入的界面元素保存在所述编辑器自定义的对象中,还包括:
当接收到所述第一用户发出的创建层的指令时,创建所述界面元素所对应的层,所述层包括精灵或切片,所述精灵用于构成精灵层,所述精灵层用于显示动态元素;
将所述层的标识以及所述层包括的精灵或切片的标识记录在所述编辑器自定义的层对象中;
其中,所述层对象用于指示所述层包括的精灵或切片,所述界面元素对应的层包括地图层和精灵层,所述地图层用于显示静态的界面元素。
2.根据权利要求1所述的方法,其特征在于,所述保存所述界面资源包、所述界面代码以及所述网页游戏的逻辑代码之前,所述方法还包括:
接收第二用户根据所述界面元素为所述网页游戏定义的逻辑代码。
3.根据权利要求1所述的方法,其特征在于,所述编辑器将第一用户输入的界面元素保存在所述编辑器自定义的对象中,具体包括:
所述编辑器将每一个界面元素作为一个切片保存在所述编辑器自定义的切片对象中;
其中,所述切片对象中的切片与所述界面元素一一对应,且所述切片对象中保存有每一个切片的属性信息,所述属性信息至少包括所述切片的标识、坐标、透明度、旋转角度、翻转方向以及所述切片的下一个切片的标识。
4.根据权利要求1所述的方法,其特征在于,所述创建所述界面元素所对应的层之前,所述方法还包括:
当接收到所述第一用户发出的创建游戏场景的指令时,创建游戏场景,所述游戏场景包括层;
将所述游戏场景的标识以及所述游戏场景包括的层的标识记录在所述编辑器自定义的场景对象中;
其中,所述场景对象用于指示所述游戏场景所包括的层。
5.根据权利要求1所述的方法,其特征在于,当所述层对象中记录有所述层包括的精灵的标识时,所述方法还包括:
当接收到所述第一用户发出的创建精灵的指令时,创建精灵,所述精灵包括动作;并将所述精灵的标识以及所述精灵包括的动作的标识记录在所述编辑器自定义的精灵对象中,所述精灵对象用于指示所述精灵层所包括的动作;
当接收到所述第一用户发出的创建动作的指令时,创建动作,所述动作包括帧;并将所述动作的标识以及所述动作包括的帧的标识记录在所述编辑器自定义的动作对象中,所述动作对象用于指示所述动作所包括的帧;
当接收到所述第一用户发出的创建帧的指令时,创建帧,所述帧包括切片;并将所述帧的标识以及所述帧包括的切片的标识记录在所述编辑器自定义的帧对象中,所述帧对象用于指示所述帧包括的切片。
6.根据权利要求4所述的方法,其特征在于,在所述创建游戏场景之前,所述方法还包括:
当接收到所述第一用户发出的创建游戏工程的指令时,创建游戏工程,所述游戏工程包括游戏场景;
将所述游戏工程的标识以及所述游戏工程包括的游戏场景的标识记录在所述编辑器自定义的工程对象中,所述工程对象用于指示所述网页游戏所包括的游戏场景。
7.根据权利要求1所述的方法,其特征在于,所述保存所述界面资源包、所述界面代码和所述逻辑代码之后,还包括:
生成所述网页游戏的资源列表,并在所述资源列表中记录所述界面资源包、所述界面代码和所述逻辑代码的地址。
8.一种编辑器,其特征在于,所述编辑器包括:
第一保存模块,用于将第一用户输入的界面元素保存在所述编辑器自定义的对象中;
打包模块,用于将所述自定义对象打包得到界面资源包;
第一代码生成模块,用于生成具有将所述自定义的对象转换为所述自定义的对象对应的文本对象模型DOM对象功能的界面代码;
第二保存模块,用于保存所述界面资源包、所述界面代码以及网页游戏的逻辑代码,得到所述网页游戏;
其中,所述第一保存模块还包括:
层保存单元,用于当接收到所述第一用户发出的创建层的指令时,创建所述界面元素所对应的层,所述层包括精灵或切片,将所述层的标识以及所述层包括的精灵或切片的标识记录在所述编辑器自定义的层对象中,所述精灵用于构成精灵层,所述精灵层用于显示动态元素;
其中,所述层对象用于指示所述层包括的精灵或切片,所述界面元素对应的层包括地图层和精灵层,所述地图层用于显示静态的界面元素。
9.根据权利要求8所述的编辑器,其特征在于,所述编辑器还包括:
接收模块,用于在所述第二保存模块保存所述界面资源包、所述界面代码以及所述网页游戏的逻辑代码之前,接收第二用户根据所述界面元素为所述网页游戏定义的逻辑代码。
10.根据权利要求8所述的编辑器,其特征在于,所述第一保存模块,具体包括:
切片保存单元,用于每一个界面元素作为一个切片保存在所述编辑器自定义的切片对象中;
其中,所述切片对象中的切片与所述界面元素一一对应,且所述切片对象中保存有每一个切片的属性信息,所述属性信息至少包括所述切片的标识、坐标、透明度、旋转角度、翻转方向以及所述切片的下一个切片的标识。
11.根据权利要求8所述的编辑器,其特征在于,所述第一保存模块还包括:
场景保存单元,用于在所述层保存单元创建所述界面元素所对应的层之前,当接收到所述第一用户发出的创建游戏场景的指令时,创建游戏场景,所述游戏场景包括层,将所述游戏场景的标识以及所述游戏场景包括的层的标识记录在所述编辑器自定义的场景对象中;
其中,所述场景对象用于指示所述游戏场景所包括的层。
12.根据权利要求8所述的编辑器,其特征在于,当所述层对象中记录有所述层包括的精灵的标识时,所述第一保存模块还包括:
精灵保存单元,用于当接收到所述第一用户发出的创建精灵的指令时,创建精灵,所述精灵包括动作,并将所述精灵的标识以及所述精灵包括的动作的标识记录在所述编辑器自定义的精灵对象中,所述精灵对象用于指示所述精灵层所包括的动作;
动作保存单元,用于当接收到所述第一用户发出的创建动作的指令时,创建动作,所述动作包括帧,并将所述动作的标识以及所述动作包括的帧的标识记录在所述编辑器自定义的动作对象中,所述动作对象用于指示所述动作所包括的帧;
帧保存单元,用于当接收到所述第一用户发出的创建帧的指令时,创建帧,所述帧包括切片,并将所述帧的标识以及所述帧包括的切片的标识记录在所述编辑器自定义的帧对象中,所述帧对象用于指示所述帧包括的切片。
13.根据权利要求11所述的编辑器,其特征在于,所述第一保存模块还包括:
工程保存单元,用于在所述场景保存单元创建游戏场景之前,当接收到所述第一用户发出的创建游戏工程的指令时,创建游戏工程,所述游戏工程包括游戏场景,并将所述游戏工程的标识以及所述游戏工程包括的游戏场景的标识记录在所述编辑器自定义的工程对象中,所述工程对象用于指示所述网页游戏所包括的游戏场景。
14.根据权利要求8所述的编辑器,其特征在于,所述编辑器还包括:
列表生成模块,用于在所述第二保存模块保存所述界面资源包、所述界面代码和所述逻辑代码之后,生成所述网页游戏的资源列表,并在所述资源列表中记录所述界面资源包、所述界面代码和所述逻辑代码的地址。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201210107777.9A CN103377039B (zh) | 2012-04-13 | 2012-04-13 | 一种网页游戏开发、解析方法、一种编辑器以及解析装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201210107777.9A CN103377039B (zh) | 2012-04-13 | 2012-04-13 | 一种网页游戏开发、解析方法、一种编辑器以及解析装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN103377039A CN103377039A (zh) | 2013-10-30 |
CN103377039B true CN103377039B (zh) | 2017-04-05 |
Family
ID=49462206
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201210107777.9A Active CN103377039B (zh) | 2012-04-13 | 2012-04-13 | 一种网页游戏开发、解析方法、一种编辑器以及解析装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN103377039B (zh) |
Families Citing this family (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104360840A (zh) * | 2014-10-20 | 2015-02-18 | 广州精攻网络科技有限公司 | 一种基于html5的游戏开发方法及装置 |
CN105844694B (zh) * | 2015-08-24 | 2019-04-26 | 鲸彩在线科技(大连)有限公司 | 一种游戏数据生成、上传方法及装置 |
CN109078324B (zh) * | 2015-08-24 | 2022-05-03 | 鲸彩在线科技(大连)有限公司 | 一种游戏数据下载、重构方法及装置 |
CN105955731B (zh) * | 2016-04-26 | 2019-05-14 | 深圳市编玩边学教育科技有限公司 | 一种***快速编写方法和*** |
CN106126254B (zh) * | 2016-06-29 | 2019-09-10 | 珠海金山网络游戏科技有限公司 | 一种关联的平视界面游戏编辑***与方法 |
CN109189377A (zh) * | 2018-08-29 | 2019-01-11 | 合肥寰石信息技术有限公司 | 一种QuickDevelop智能化引擎开发平台 |
CN111158750B (zh) * | 2019-12-26 | 2023-09-26 | 北京金山安全软件有限公司 | 一种基于Unity的游戏安装包的打包方法及装置 |
CN112965716B (zh) * | 2021-02-01 | 2022-05-03 | 海南两心科技有限公司 | 页面处理方法、装置、电子设备及可读存储介质 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101149742A (zh) * | 2007-10-31 | 2008-03-26 | 江阴市神州科技有限公司 | 基于图形与图象模式下的多态复合链接技术 |
CN101196811A (zh) * | 2007-12-07 | 2008-06-11 | 炬才微电子(深圳)有限公司 | 嵌入式软件的开发方法 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9311425B2 (en) * | 2009-03-31 | 2016-04-12 | Qualcomm Incorporated | Rendering a page using a previously stored DOM associated with a different page |
-
2012
- 2012-04-13 CN CN201210107777.9A patent/CN103377039B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101149742A (zh) * | 2007-10-31 | 2008-03-26 | 江阴市神州科技有限公司 | 基于图形与图象模式下的多态复合链接技术 |
CN101196811A (zh) * | 2007-12-07 | 2008-06-11 | 炬才微电子(深圳)有限公司 | 嵌入式软件的开发方法 |
Also Published As
Publication number | Publication date |
---|---|
CN103377039A (zh) | 2013-10-30 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN103377039B (zh) | 一种网页游戏开发、解析方法、一种编辑器以及解析装置 | |
CN102073502B (zh) | 一种利用web原生布局进行页面渲染的方法及装置 | |
CN102955854B (zh) | 一种基于html5协议的网页展现方法及装置 | |
US11216253B2 (en) | Application prototyping tool | |
CN102902781B (zh) | 网页页面装修推送方法及装置 | |
CN105045645B (zh) | 网页加载方法、装置及*** | |
US20090204886A1 (en) | Asynchronously rendering dynamically created content across multiple network domains | |
CN110020307A (zh) | 一种客户端视图的绘制方法和装置 | |
CN108874389A (zh) | 前端页面开发框架 | |
CN104035753A (zh) | 一种双WebView展示定制页面的方法及*** | |
CN105574049A (zh) | 移动应用的页面处理方法、装置和*** | |
CN104375808B (zh) | 界面显示方法及装置 | |
CN102360296A (zh) | 一种基于web的在线表单开发工具 | |
CN105094786A (zh) | 基于JavaScript定制页面的方法及*** | |
CN105373520A (zh) | 设置控件样式属性的方法和装置 | |
CN110532495A (zh) | 一种网页信息的展示方法及装置 | |
CN106354355A (zh) | 用户界面布局方法、装置及*** | |
CN102663050B (zh) | 电子书数据处理方法与装置 | |
CN106886398A (zh) | 一种层叠样式表的提取方法和设备 | |
CN107479873A (zh) | 一种app页面模块化开发方法、电子设备及存储介质 | |
CN106886530A (zh) | 一种动态数据分别编辑更新方法及*** | |
CN113536179A (zh) | 页面的生成方法、装置、电子设备和存储介质 | |
KR101797573B1 (ko) | 웹 기반의 스프레드시트 서비스 제공 장치 및 방법 | |
CN107644152A (zh) | 超媒体电子书出版*** | |
CN105224552A (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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |