`
guoyiqi
  • 浏览: 1009682 次
社区版块
存档分类
最新评论

javascript 游戏引擎

    博客分类:
  • ajax
阅读更多

从网上找到的几个js engine, 记录如下:

1. silbygamelib 一个老牌的引擎,已经停止更新了http://www.sean.co.uk/a/webdesign/javascript_gamelib/javascript_gamelib.shtm
2. GMP http://freshmeat.net/projects/gmp-javascript-game-engine
3. http://jsge.athlabs.com/
4. http://www.effectgames.com/effect/ 看起来像是面向商业的
5. http://www.renderengine.com/index.php 一个活跃中的引擎
6. http://gamequery.onaluf.org/ 但是cpu占用很高,估计是代码设计问题
7. http://sourceforge.net/projects/clanfx/
8. http://ldk.codeplex.com/
9. http://www.codeproject.com/KB/scripting/TomsHallsJavascriptGame.aspx
10. http://mccormick.cx/projects/jsGameSoup/

 

 

作者用4年的时间开发的一款JS游戏引擎。网站中有Demo,超级马里奥、星战的游戏。
详情请点击:http://www.effectgames.com/effect/
游戏demo的开发教程:
http://www.effectgames.com/effect/#Article/tutorials/Platformer_Tutorial

 

Joesph Huckaby创造了一个基于JS的游戏渲染引擎,你可以在Effectgames.com 网站上看到很多很有趣的实例。

 

点击查看入门手册:http://www.effectgames.com/effect/#_section_1

 

如何编写游戏的代码:http://www.effectgames.com/effect/#_section_6

 

Joesph的JavaScript/DHTML库- Effect Engine,它提供了所有显示的图形动画,需要的声音&音乐,控制鼠标和键盘等。用户可以在他们自己的浏览器上玩游戏,不需要添加任何插件或扩展。你还可以使用JavaScript和我们提供的“Effect Engine”,level编辑器和一些开发者套件。它支持所有主流的操作系统和浏览器。

 

研发小组还建立了一个在线工具,便于开发人员编写和设计网络游戏,包括管理图形和音频,创造游戏的级别,使用非破坏性过滤器控制实时的图形(缩放,旋转等)。

 

开发人员可以在自己本地的Mac或pc上建立游戏,不需要上传任何代码,一旦准备就绪,开发人员可以使用Google Closure 自动完成代码,并获得唯一的网址,可以将代码嵌入到自己的网站,博客,或任何地方与大家分享此游戏。

 

 

 

原文作者:Jacob Seidelin

如果对JavaScript感兴趣,建议点开文中提到的所有链接,实际试验一下效果,但需要注意的是,一定要使用Firefox 3.1或者其他浏览器的最新版本,如果使用Firefox记得打开tracemonkey,否则有的效果会很慢的,也不要同时打开两个实验窗口,有可能会造成浏览器死机。还有,相当一部分链接需要翻*墙。

以下是对原文的翻译

对于JavaScript来说,2008是伟大的一年,因为有很多牛人加入到了JavaScript、Canvas元素和Web的开发中来。浏览器 供应商也在互相竞争,试图在JavaScript的性能方面超越对手,而最大的受益者当然是开发者和最终用户,因为现在可以开发出一些非常棒的东西,而这 些东西在以前简直就是不可想象的。下面是一个列表,都是我在整个2008年中关注过,基于JavaScript开发的产品。

游戏

对于JavaScript游戏来说,2008年是非常重要的一年。基于DHTML和Canvas的游戏,在某些方面已经撼动了Flash的霸主地位。很多以前经典的电视游戏已经被通过这种方式移植了,比如:超级玛丽吃豆人Breakout小蜜蜂炸*弹人T&C Surf Designs等。

另外还有些人,按照自己的想法,对一些传统的游戏进行了扩展,演变出一些新的小游戏,比如:Matt Hackett开发的 Spacius、Mark Wilcox开发的 Invaders from Mars、VertigoProject开发的 RedLine Racing 和这个俄罗斯方块的变种版本 Tetris game

我们也找到一些角色扮演类游戏,比如 Tombs of Asciiroth ,而Andrew Wooldridge开发的 CanvasQuest 显得更加图形化些,它的Prototype引擎是构建在Pierre Chassaing开发的 ProtoRPG 基础上的,虽然这些游戏现在还在测试中,而且现在的演示版看起来比较粗糙,但我们有理由相信,有一天他们会完善出一个非常棒的版本出来。

在2008年,也有几个面向JavaScript/DHTML游戏开发的类库面世,其中最抢眼的莫过于 GameJS(旁边的截图就是基于这个类库开发的游戏Jetris)和 GameQuery 了,后者是著名的JavaScript类库jQuery的一个扩展。

最后,我们还要留意一个伟大的游戏 DEFENDER of the favicon ,这个伟大可不是指尺寸哟。Mathieu 'p01' Henri把上个实际八十年代推出的Defender游戏压缩到了浏览器的favicon图标中,就是那个16*16的png图像,听到这个感觉怎样?神奇么?

 

演示

现在大部分的浏览器(开发这些浏览器的公司没有叫微软的,IE还不支持)已经支持了Canvas元素。这就意味着当我们以后要在浏览器中创建动态的图片时,将会有更多的选择。当然也会有更多的人,会乐此不疲的展示他们创建动态图片这项疯狂的技术,呵呵。其中有些人创建了 短小精炼的例子 ,来展示Canvas强大的能力。另外一些人走的更远,比如Matt Westcott就建立了一个 反社会的演示 ,来讽刺现在流行的社会网络,而这个演示完全是通过一个小工具制作的。

还有一些人,包括Mathieu 'p01' Henri在内,一整年都在制作一些非常短小精悍的内容,而这些小代码可以做出非常棒的效果,比如这几个:Rubber effectTunnexMars。每个演示,所有代码加起来,都不超过256字节!

如果这还不过瘾,可以到Ozone Asylum见识一下,Mathieu Henri在这里通过Canvas元素创建了很多20行的小视频,每一个都可以为你带来非常强烈的视觉效果,比如:Dynamic HypnoglowTwinkleHypno Trip Down the Fractal Rug。这些小视频同样给很多人带来了新的灵感,创作出了一些更好的效果,比如:colliding balls3D cube effect 和 dynamically generated BMP flames 等。

在Asylum上,大家甚至开发出了20行JavaScript代码写成的游戏,从 Lunar LanderBoulderdash clone,甚至还有一个 homage to Wolfenstein 3D

三维

到目前为止,尽管Mozilla和Opera的开发团队都在尝试启用硬件加速功能,但canvas元素还是只能支持2D图像。但这决不意味着现在不能生成3D图像。我们从类似 basic 3D cubestexturing experiments 这样的例子中完全可以得出 JavaScript/Canvas 3D engines 已经可以使用的结论。

我们还可以留意那些基于 Wii Opera SDK(这东西不止应用在Opera或者Wii上)开发的效果,当然还有Nihilogic编写的3D演示。

模拟器

JavaScript的性能越来越好,这已经是一个不争的事实,一个典型的证据就是我们现在甚至可以在浏览器上模拟其他系统。Matt Westcott(前面提到过他写的一个演示)在这里又给大家带来了一个惊喜:JSSPeccy,一个 ZX Spectrum 模拟器,这东西棒极了。

James Urquhart也做了一些尝试,建立了一个 SCUMM interpreter 的雏形,也许用他现在还不能玩疯狂时代(Day of the Tentacle)或者疯狂大楼(Maniac Mansion),但至少可以让你看到一些开放任务(OpenQuest)。

我个人的最爱则是António Afonso开发的 JavaScript AGI interpreter ,AGI是Sierra在冒险游戏的鼎盛时期所使用的系统,当António开发出这个可以用的模拟器后,我简直就是爱不释手。

图像

John Resig开发的JavaScript的进程接口:Processing.js,可能是这一年中给我印象最深刻的创造之一了,尤其是那数以百计,绚丽夺目的演示。Aza Raskin开发的Algorithm Ink 也有着类似的功能,这是一个JavaScript/Canvas接口,基于各种规则和命令建立图像。当然除了这些还有很多,比如Eitan Suez很喜欢Turtle,一个Pascal下的图形开发工具,于是他用JavaScript重写了这个工具:TurtleJS。

还有一些数学偏执狂,使用JavaScript实现了一些碎片效果。首先是p01用 137个字节的DHTML 绘制了一幅 Mandelbrot set ,这段代码引发了一个小竞赛,有人写了一个不到128字节的版本 ,最终胜出的是 111字节版本 。Oliver Hunt建立了一个更漂亮的图形版本,我也做了一个,Russ Hall甚至做了一个 完整的演示版 。(译者注:这里需要相当的数学知识,可以参考wikipedia的说明,否则就只能感叹效果的华丽和字节的精简了)

音频

在HTML5正式支持音频元素之前,大部分人都是使用基于Flash音频的方式实现类似的功能,但这不意味着是我们的唯一选择,我们可以使用JavaScript做出各种稀奇古怪的声音。比如说,可以看看Cameron写的 JS-909 drum machine ,当然这东西依赖于Quicktime,但就算这样也很棒,不是么?

或者我们可以 动态生成并播放WAV 文件,就像sk89q写的那样,听得同时,我们还可以再 生成点MIDI 玩玩。

拾遗

除了图像和音频文件,我们还可以生成其他类型的文件。用一个短小精悍的类库 生成ZIP文件 ,这个主意听起来怎么样呢?

你认为CSS现在都可以做什么?是不是只有设置字体或者排列div?答案当然是否定的,至少Román Cortés就像我们展示了一张完全 用CSS制作的荷马·辛普森照片 ,只要你的CSS基础足够强,也可以做一张哟。

Ernest Delgado将我写的Mario Kart演示和OpenStreetMap结合在了一起,衍生出一个 新的非常棒的演示 ,类似于汽车上的GPS导航系统。

最后,向你推荐 Cubescape ,一个漂亮有趣的玩具。你可以通过通过各种颜色的小方块,绘制出一幅漂亮的风景来,一个消磨时间的好办法。

这篇文章难免会有一些遗漏,我会在Nihilogi不断做些修补,所以记得定期看看 这里 ,确定你没有遗漏什么。祝愿2009年会像2008年一样精彩,其实我真找不出什么2009年不会更好的论据。

你认为2008年什么最精彩呢?

分享到:
评论

相关推荐

    JavaScript游戏引擎Kiwi.JS.zip

    Kiwi.js是由来自新西兰的GameLab公司开发的一款全新的开源HTML5 JavaScript游戏引擎,主张Mobile First,在经过一年多的开发和测试之后,最新是Kiwi.js 1.0版本。 其创始人Dan Milward表示,“我们的目标是将Kiwi.js...

    基于WebGL和glTF的快速轻量级JavaScript游戏引擎.zip

    【JavaScript游戏引擎基础】 JavaScript,一种广泛应用于网页开发的脚本语言,是构建现代Web应用程序的关键技术之一。在游戏开发领域,JavaScript与WebGL(Web图形库)的结合,为在线游戏提供了强大的3D图形渲染...

    JavaScript游戏引擎LycheeJS.zip

    LycheeJS 是一个环境无关的 JavaScript 游戏引擎,理论上只要支持 JavaScript 就可以使用该引擎。当然主要还是为支持 HTML5 的浏览器而生。 标签:LycheeJS

    JavaScript游戏引擎jGen.zip

    jGen 是 JavaScript 游戏引擎,目标是不使用 Canvas ,只使用 HTML 和 JavaScript 来做基于现代浏览器技术的应用。注意:目前只支持 Safari 和 Chrome。 在线示例: Current state of the trunk (api-test): ...

    melonJS, 全新的&轻量级javascript游戏引擎.zip

    melonJS, 全新的&轻量级javascript游戏引擎 melonJS 全新的&轻量级HTML5游戏引擎 版权所有( C ) 2011 - 2017,Olivier Biot,Jason,Aaron McLeodmelonJS 在 MIT许可下的许可证关于 melo

    Javascript游戏引擎cocos2djavascript.zip

    Cocos2D-JavaScript 是 Cocos2D for iPhone 的 HTML5 移植版。它是个 2D 图像引擎,允许快速开发 2D 游戏和图像应用。它可以在任何现代化浏览器中运行,不需要第三方插件,比如 Adobe Flash。

    Crafty JavaScript 游戏引擎 地图Demo

    采用HTML5的Crafty引擎,类似RTS游戏地图界面的Demo,有小地图,地图上的建筑可以鼠标事件,非常基础,适合HTML5游戏开发的学习者,包括很多基础知识:Grid,Controller,ViewPort(Camera),Event(Trigger),Collision...

    Javascript游戏引擎TheRenderEngine.zip

    The Render Engine 是个跨浏览器的,开源游戏引擎,完全使用 JavaScript 编写。它拥有一个扩展的 API 和使用当前最新的现代浏览器特性。此款引擎旨在帮助用户使用基础的工具来开发游戏,加快游戏概念到成品的过程。

    titan-2d:2d Javascript 游戏引擎

    用于创建 2d 游戏的 Javascript 引擎/框架。 这是我正在研究的一个 hack,目的是在处理大量数据、用户交互和对性能的需求的领域中重新实施许多不同的编程方法和模式。 我不是游戏程序员,而是具有大量 JavaScript ...

    JSEngine:JavaScript游戏引擎

    2D和3D Javascript游戏引擎。 注意:导入服务器需要服务器才能正常工作。请查看以获取有关如何开始使用和文档的帮助。 模式 有两种模式,即2D模式和3D模式。 要选择一种模式,您只需导入一个不同的文件。 使用JS...

    zerk:JavaScript游戏引擎

    Zerk是Kristoph Junge和开发JavaScript游戏引擎。 Zerk基于体系结构。 Zerk的目标是能够在台式机和移动设备上运行各种类型的2D游戏。 可以在上找到更多信息。 Zerk使用的其他软件: 由Erin Catto等人编写的物理...

    GEngine:基本的Javascript游戏引擎

    **GEngine: 基本的JavaScript游戏引擎** GEngine是一个专为教育目的设计的JavaScript游戏引擎,旨在帮助初学者和开发者理解游戏开发的基本概念。它是一个轻量级且不断发展的项目,允许用户通过JavaScript语言创建2D...

    Reflex:Javascript游戏引擎

    反射Javascript游戏引擎。去做 创建Sprite基本类 创建Rect基本类 创建粒子基本类 创建ParticleEmitter基本类将运动添加到Sprite类将运动添加到Rect类添加圈子课程添加RoundRect类不久之后..下载不克隆下载不完整 解...

    TempoJS:TempoJS是一个JavaScript游戏引擎,用于客户端或服务器端基于回合的游戏

    JavaScript游戏引擎 TempoJS是一个JavaScript游戏引擎,用于客户端或服务器端基于回合的游戏。 入门 首先,通过NPM将软件包安装在项目上。 npm i @katreque/tempojs --save 这是一个用于开发游戏的简单示例。 不久...

    wandrian:简单的 2D Javascript 游戏引擎

    **wandrian: 简单的2D Javascript游戏引擎** `wandrian` 是一个轻量级的游戏开发框架,专门用于创建2D游戏。基于JavaScript语言,它为开发者提供了构建交互式游戏所需的基本工具和功能。JavaScript是Web开发中的...

    sword-engine:一个简单易用的javascript游戏引擎

    JavaScript游戏引擎是为简化游戏开发流程而设计的一套框架或库,它们通常包含图形渲染、物理模拟、音频处理、资源管理等功能。sword-engine的目标就是提供一个高效且易于上手的解决方案,使得开发者能够专注于游戏...

    nemesis:一个开源的javascript游戏引擎

    Nemesis是一个开源的JavaScript游戏引擎,专为创建互动式、高性能的游戏而设计。它提供了丰富的功能和工具,使得开发者可以轻松地构建2D和3D游戏,无需深入理解底层图形编程的复杂性。Nemesis引擎的核心目标是提供一...

Global site tag (gtag.js) - Google Analytics