网页游戏开发技术.docx
网页游戏开发技术刘丽(兰州职业技术学院电子与信息工程系,甘肃 兰州 730070) 摘要:目前网页游戏已成为网络游戏的主流产品。而网页游戏所使用的开发技术也成为研究的热点。基于RIA平台的网页游戏软件。使用了当今流行的FLEX开发技术。其游戏的动画使用FLASH制作,通过AetionScript实现调用;画面层的管理,由AetionScript提供的功能来实现;消息数据以AMF格式封装,客户端与服务器的信息交互则采用线程通信技术。在对目前网页游戏常用开发技术进行综合比较的基础上。使用FLEX技术开发的网页游戏能够极大地提高用户体验。关键字:RIA1.网页游戏 网页游戏又叫无端网游。简称Web游戏。其特点是不需要象传统游戏那样。需要下载客户端软件,而仅利用浏览器平台运行游戏。Flash技术的出现促进了网页游戏的流行,特别是丰富互联网应用技术-RIA技术,为网游提供了丰富的表现手段。网页游戏具有如下特点:1) 瘦客户端2) 可同时进行IM聊天3) 电脑配置要求低4) “绿色”游戏,不需要对电脑添加任何信息5) 支持多平台Windows,Linux,Mac等网页游戏分为两种:低端网页游戏和高端网页游戏。低端网页游戏:由网页语言PHP/ASP/JSP/.net/Javaseript/Vbscript等软件开发。界面比较原始,游戏时与玩家的交互需通过浏览器刷屏实现。高端网页游戏:由Flash、Flex和Java等软件开发,游戏可在无刷屏的情况下实现玩家与游戏交互,能够实现客户端网络游戏的画面,支持多媒体。2.网页游戏的开发技术及比较2.1开发技术 ASP技术 Active Server Page(ASP)意为“动态服务器页面”。ASP是微软公司开发用来代替CGI脚本程序的编程工具,常用于设计动态网站。ASP脚本集成于HTML中,无需编译可直接解释执行、独立于浏览器(能解释HTML码的浏览器即可浏览ASP网页)、保护源码(ASP脚本在服务器上执行,传到浏览器端的只是ASP执行结果所生成的常规HTML代码)。 PHP技术 Hypertext Preprocessor(PHP)意为“超级文本预处理语言”。PHP是一种在服务器端执行的嵌入HTML文档的脚本语言,风格类似C语言,应用广泛。PHP与CGI或Perl相比,能更快速执行动态网页。PHP是将程序嵌入到HTML文档中去执行,跨平台性强,程序开发快,执行效率高,可编译以达到加密和优化代码,支持几乎所有流行的数据库以及操作系统。 Ajax技术 Asynchronous Javascript and xml(Ajax)意为“异步JavaScript和XML”。Ajax是一种创建交互式网页应用的网页开发技术,它不是一个新的编程语言,而是一个编程技术。Ajax的最大优点就是能在不刷新整个页面的提前下更新数据,使得Web应用程序更为迅捷地响应用户的交互需求。 Flex技术 Flex是Adobe公司最新的服务器端产品。该技术提供了一个新的、基于标准的语言和编程模型,其编程模型支持常用的设计模式,能够使用企业创建许多有吸引力的、交互的快速应用,增强了用户对网页的体验。传统网页游戏开发的局限是表现层受到一定的约束,而Flex技术能轻松地解决这一技术难题。例如网游Small World就是基于Flex技术开发的。 JSP技术 Java Server Pages(JSP)是一种动态网页技术标准,它可在传统的网页HTML文件(*.htm,*.html)中插入Java程序段和JSP标记,其生成内容的逻辑被封装在标识和JavaBeans组件中,所有的脚本在服务端运行。可重用的组件(JavaBeans或者Enterprise JavaBeansTM组件)能够执行应用程序所要求的更为复杂的处理。由于Java在移植性、扩展性、多线程方面的特点使它成为目前许多网页游戏的开发语言。由Java技术开发的高端网页游戏,能处理各类与服务器的交互和复杂图形,开发大型网络游戏。例如:目前国内游戏倾城就是一款基于Java语言开发的游戏。a) 开发技术比较技术特点Asp/HtmlPHPFlexJSP开发语言Asp/Vbsript/JscriptPhpActionScriptJava编译否否是是运行效率慢一般一般快维护性差一般好好数据传递方法Response.RedirectSessionHttp ContextSessionCookiesCookiesRemoteObjectJavaBean(set,get)SessionGetWebServiceHttpContextPost网站开发小型中小型大型大型开源否是是是特点脚本语言简单数据库连接控制Flash播放内容的生成和显示进行分离支持ActiveX服务器组件面向对象编程表现层界面更友好强调可重用的组件采用标识简化页面开发后缀.asp/.html.php.swf.jsp