`
blessdyb
  • 浏览: 236567 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

HTML5 WebGame开源工具之impactjs

 
阅读更多

 

     随着浏览器(PC/Mobile)功能的不断增强,特别是近几年来HTML5系列技术,CSS3及JS引擎的快速发展,使用传统的Web前端开发技术来开发网页已经成为了一个新的趋势。就我个人个遇到的几个框架及近期别人推荐的进行一些分析。主要针对使用HTML+CSS+JavaScript技术来开发游戏的技术做一分类,其它第三方语言实现的中间件平台只在最后简要介绍。

          HTML Web Games的游戏开发,目前主要有以下三类方式:

  • 纯DOM+CSS的传统方式实现游戏
  • Canvas/WebGL & CSS3 实现游戏
  • SVG方式开发游戏

当然,介于这三类之间的混合方式也有人已经在尝试,类似于目前比较火的Hybird Native Web App的理念,毕竟,只要能快速,高效解决问题的技术才是好技术。

        由于HTML5技术这两年的迅速普及,大多数入门的游戏开发入门者,主要接受的是使用Canvas技术来开发游戏。但对于使用纯DOM+CSS的传统技术组合开发游戏与Canvas开发游戏二者性能上的比较,很多资深开发者们,不停地做着性能测试,来支持自己的观点。主要是基于以下考虑:canvas提供的API太基础了,游戏开发者如果使用canvas,就意味着放弃了CSS这个浏览器“亲生的”样式工具。于是接着就涌现出了很多基于canvas的库,来辅助开发者快速开发游戏。但这些canvas库的封装性能来渲染图像的性能与使用DOM+CSS进行图片渲染的性能的PK目前还未有定论。就个人的测试,小游戏开发方面性能差别可以忽略。前端界有一个大拿做了一个js动画库,基于同一套代码生成基于canvas,webgl,css 各自渲染的效果,很不错(http://labs.hyperandroid.com/static/caat/)。

       下面对于目前比较流行的一些游戏工具库进行介绍。

      ImpactJS是目前最强大的一个js 2D游戏开发平台,当然是商业版的(http://impactjs.com),(国内有一个山寨者做了一个http://www.kilofox.net/, 直接拿人家的源码来卖,太TMD不要脸了)。不管是新手还是资深的开发者,使用这个库都可以快速开发出来游戏。作者很nice,半年前我以研究者的身份买了一份进行了测试,基本上照着示例不到十分钟就做出来了一个带简单AI的小游戏.

 

    从平台本身的角度,这款框架有以下特性:

  • 良好的跨平台性,目前作者发布了测试版的iOSImpact,通过 OpenGL 直接将JavaScript 源代码的执行结果渲染到屏幕上。这完全跳过了 iPhone 的手机 Safari,避免了这个浏览器固有的一些问题。iOSImpact完成之后,期待AndroidImpact出来,哈哈。
  • 目前市面上最好的Web版2D关卡编辑器Weltmeister,快速地可以对游戏进行界地图编辑
  • 强大的游戏调试菜单,很像我们调试JS时使用的firebug, 快速地看到每一个游戏实体的更新,渲染FPS等。
  • 作者的更新很迅速,可以在github上查看到他非常勤奋地在推进这个框架,论坛中的开发者们也很活跃。目前有一个专门收集使用impactjs的游戏网站http://www.pointofimpactjs.com/
  • 第三方工具的支持,如与Appmobi这家强大的移动游戏开放平台商的合作。Appmobi提供了专门的impactjs版的SDK供开发者开发游戏。与打包工具phonegap等的结合,与著名物理引擎Box2D的结合等。

 

查看ImpactJS本身的代码架构,可以看到,它包括了制作一款游戏的各个方面:

  • 核心的模块定义,动态加载,扩展了原生JS的类似于underscore.js的工具类库,系统整体FPS控制等,资源预加载。
  • 逻辑处理 包括游戏场景控制器,活动对象控制,多层地图控制,计时器及输入检测
  • 声音资源的处理(前景声音,背景声音),在HTML5相关的浏览器厂商还在为标准争论的时候,这是我目前已知的解决声音播放的比较好的一款JS游戏库
  • 特效处理 基本所有的游戏库都会有这方面的处理,不过好像在这块ImpactJS做得还不够好。

四月的时候,Jesse Freeman 出了一本《Introducing HTML5 Game Development》的书,全程引导开发者用 Impact 创建游戏。它涵盖了从建立工作环境到游戏打包发布的所有内容。横向对比而言,ImpactJS算是目前相当不错的一款基于canvas的游戏引擎。

 

分享到:
评论
1 楼 Trinea 2013-01-24  
请问你博客百度的广告怎么加的,不会是手动每天文章添加js吧

相关推荐

    WebGame制作辅助工具

    1. **HTML5与JavaScript基础**:大部分WebGame是基于HTML5技术构建的,它提供了Canvas画布用于动态渲染游戏画面,而JavaScript则作为主要的编程语言,负责游戏逻辑和用户交互。了解这两种技术的基础知识是制作...

    webgame(最终幻想)源码

    ASP.NET WebGame通常指的是使用微软的ASP.NET框架开发的Web游戏,而C#是该框架的主要编程语言。这可能意味着在项目的某些部分,如后端服务或特定功能模块,可能会看到C#的影子,或者开发者可能参考了ASP.NET的一些...

    最终幻想webgame(access)

    《最终幻想webgame(access)》是一款基于网页的在线游戏,其源码可供学习和研究。这款游戏使用了big5编码,这是一种繁体中文字符编码,主要用于处理台湾、香港等地的中文文本。通过分析这款网页游戏的源码,我们...

    webgame开发简明教程

    ### Webgame开发简明教程知识点总结 #### 一、Webgame概述 ...Webgame作为一种独特的游戏形式,在技术实现和玩法设计上都有其独特之处。未来随着技术的发展和玩家需求的变化,Webgame也将不断进化和发展。

    侠域网页游戏WebGame源代码

    【WebGame】是指运行在Web浏览器上的游戏,它们通常由HTML、CSS和JavaScript构建前端界面,后端则由PHP、Java、Python等服务端语言支持。侠域网页游戏的源代码可能包含了HTML用于页面结构,CSS用于样式设计,...

    webgame开发简明教程(经典)

    ### Webgame开发简明教程知识点概述 #### 一、Webgame简介与开发环境搭建 - **Webgame定义**:Webgame是一种基于Web浏览器的游戏形式,玩家无需安装客户端软件即可通过互联网进行游戏。 - **开发环境**: - 后端...

    webgame游戏引擎

    ### Webgame游戏引擎知识点解析 #### 一、Webgame引擎概览 在当前的游戏开发领域中,Webgame作为一种可以通过浏览器直接运行的游戏类型,受到了越来越多玩家的喜爱。为了更好地满足这一需求,许多开发者开始深入...

    js(HTML RPG WEBGAME,纯网页游戏,完整版

    HTML5是现代网页开发的核心技术之一,它提供了更强大的多媒体支持、离线存储功能以及对图形和动画处理的优化。在这款游戏中,HTML5的Canvas元素被用来绘制游戏场景和角色,使得游戏画面流畅且细腻。同时,利用Web ...

    FXGAS webgame development framework-开源

    FXGAS是一个专门针对Web游戏开发的开源框架,旨在提供一套完整的工具和库,帮助开发者高效地构建和管理网络互动游戏。这个框架的核心优势在于它为游戏资产的存储和网络同步提供了有效支持,使得游戏开发过程更为便捷...

    一个js的webgame引擎

    3. Canvas API:HTML5的Canvas元素允许动态绘制图形,是创建游戏场景的常见选择。该引擎可能封装了Canvas的API,如绘制图形、动画帧更新、碰撞检测等功能,使得开发者无需深入理解底层细节即可使用。 4. 时间管理和...

    webgame asp javascript在线游戏源代码

    【标题】"Webgame ASP JavaScript在线游戏源代码"揭示了这是一个使用ASP(Active Server Pages)技术和JavaScript编程语言构建的在线游戏平台的源码资源。ASP是微软开发的一种服务器端脚本环境,常用于动态网页的...

    webgame_模拟城市

    【标题解析】:“webgame_模拟城市”这个标题暗示了我们正在讨论的是一款基于Web的模拟城市游戏。"webgame"是指在网页上运行的游戏,而“模拟城市”则表明这款游戏是模仿现实城市建设和管理的。 【描述分析】:...

    HTML5游戏《口袋妖怪》源码

    HTML5游戏《口袋妖怪》源码是一个基于HTML5技术开发的网页版游戏,它复刻了经典的《口袋妖怪》系列,让玩家在浏览器上就能体验到捕捉、训练和战斗的乐趣。这款游戏利用HTML5的Canvas元素进行图形绘制,通过...

    webgame 部落争霸 php

    PHP是一种广泛使用的开源脚本语言,尤其适用于Web开发,可嵌入到HTML中。在《Webgame部落争霸》中,PHP负责处理服务器端的逻辑,如用户认证、游戏数据交互、数据库操作等。开发者通过PHP与数据库进行交互,存储和...

    webgame 在线棒球赛

    "网页游戏"(Webgame)是指在网页浏览器中运行的游戏,通常依赖于JavaScript、HTML5、CSS3等Web技术。"Webgame 在线棒球赛"就是这样的一个例子,它利用这些技术实现游戏的图形展示、用户交互和网络通信。 "源码...

    WebGame简易辅助工具V0.1含源码

    WebGame简易辅助工具V0.1 ============================== 目前主要调试应用于剑侠情缘 http://www.51wan.com/jx/ 1、拥有自动购物功能(消耗品),但得开着本程序。 2、本程序CPU...

    PHP5网页游戏开发入门教程(webgame+design)

    通过以上知识点,读者应该能够对PHP5网页游戏开发有一个初步的认识,并开始自己的开发之旅。这份教程侧重于从零开始,逐步构建起一个webgame的基础框架,不仅包括了编程技术方面的知识,还涵盖了游戏设计的多个方面...

    webgame网页游戏斗地主源码

    5. **后端开发**:后端服务器处理游戏逻辑、用户认证、数据存储等任务。比如,PHP或Node.js可以创建API接口,接收前端的请求,执行游戏规则计算,并将结果返回给前端。 6. **数据库设计**:游戏需要存储用户信息、...

    WebGame游戏里的人物移动AS源代码+注释【菜鸟级】

    在本文中,我们将深入探讨WebGame游戏开发中的一个重要部分——人物移动。WebGame是一种基于Web浏览器的游戏,通常使用Flash技术来实现丰富的图形界面和交互性。在这个特定的资源包中,我们关注的是ActionScript(AS...

    webgame三国源码

    1. **HTML5和JavaScript**: 由于webgame主要在浏览器环境中运行,HTML5和JavaScript是构建此类游戏的核心技术。HTML5提供了更强大的多媒体支持和离线存储功能,而JavaScript则负责处理游戏逻辑、用户交互和动画效果...

Global site tag (gtag.js) - Google Analytics