HTML5手机游戏开发与本地游戏应用程序的比较[关闭]


12

与HTML5技术集(包括CSS3和JavaScript库,例如RaphaelJS,Impact,gameQuery)相关的游戏引擎,框架,库和转换的当前状态如何;与开发本机应用程序(尤其是iOS和Android)相比,最好的方法是什么?

特别是在性能,视觉效果和获得“原生感觉”方面。

也对诸如Appcelerator和Corona SDK之类的解决方案的想法表示赞赏。关于Unity3D,是否可以在其中进行开发并且仍然可以在浏览器上玩游戏(至少是当前版本的Chrome或Firefox),而无需任何依赖关系或无需用户安装任何东西(没有统一的网络播放器) 。

我正在寻找的是如何在Web标准中进行开发,以达到最大数量的平台(包括外部移动设备),同时仍然保留移动设备的本机体验,而无需重新为iOS和Android实施游戏。


2
Unity仍然需要网络播放器。他们正在Flash 11部署上工作,但是不会持续一段时间。我还没有在感觉不错的移动浏览器上玩过HTML5游戏。HTML5音频仍然是一大堆麻烦。
michael.bartnett

1
如果您想要“原生”,那么您需要一个本机应用程序...否则,您始终受限于要支持的平台的共同点。
bummzack 2011年

哦,可以,不用做任何额外的工作。但是,只要我不需要重写游戏的所有基础,就可以达成妥协,为触摸界面添加更专业的代码是完全可以接受的。
维克·戈德菲尔德

1
根据我的经验,原生游戏在低端手机上的性能要比HTML5更好
Nick Shvelidze 2012年

Answers:


7

HTML5库非常好,特别是考虑到它的年龄。有支持粒子效果,物理等特性的实体2D / 3D引擎。但是,没有任何东西可以与诸如Unity或Unreal Engine之类的成熟成熟游戏引擎相提并论。

根据我的经验,HTML5库也喜欢事件驱动。例如,精灵将具有onclick事件,并且实际上不会出现传统的游戏循环。

为了提高性能,本机应用程序比HTML 5画布要快得多。这只是我的经验,我不了解Appcelerator或Corona SDK。

但是,如果您的目标是“最大平台数”而不是“网络标准”部分,那么我建议您使用像Unity这样的解决方案,该解决方案几乎可以在所有平台上使用,并且由于其内置的编辑器是一个非常有生产力的引擎。


6

来自Scirra的Tom,我们使Construct 2成为HTML5游戏制造商

我们最近在博客上对此进行了比较,比较了HTML5 Canvas / WebGl / C ++ DX的性能。你可以在这里读到它:

http://www.scirra.com/blog/58/html5-2d-gaming-performance-analysis

这是图形:

在此处输入图片说明

我知道与本地移动格式相比,这不是性能,但与台式机本地应用程序相比,应该可以提供性能差异的一些提示。


爱图。有机会进行2016年更新吗?
Dan Dascalescu '16

4

首先,Corona SDK非常易于使用。Lua是一种很棒的语言,Corona是一种非常透彻的框架,到目前为止,文档一直很棒。

在我看来,HTML5游戏开发还不值得。在台式机和移动浏览器上。如果您的目标是制作一款出色的游戏,使其能够在台式机和移动设备上运行,请不要打扰。如果您的目标是制作一个HTML5游戏,那么就去制作它并使用人们提到的框架之一(另请参见CraftyGee,以获取更多的图形界面)。

主要原因是当我制作游戏时,我想制作一个完整而精致的游戏。制作完整而精致的游戏的一部分是良好的音频。尽管<audio>主流浏览器都支持该标签(假设您提供了足够多的不同格式),但是以编程方式管理音轨createElement有点麻烦。SoundManager 2是一个创可贴,而不是解决方案。在许多情况下,它将仅依赖于在桌面上使用Flash对象。我问在哪一点,为什么不只用Flash制作令人毛骨悚然的东西呢?

在iOS上,除非您使用Zynga的Jukebox库之类的黑客工具,否则实际上只限于响应用户输入播放声音。太荒谬了

另外,除非您将HTML5游戏打包为应用程序,否则人们需要连接才能玩。我大部分时间在玩手机游戏上是在地铁上-没有信号。而且,如果您打包游戏,就没有声音会很奇怪吗?如果我要下载游戏,我希望可以达到一定程度的响应度和润色度。阅读:本机应用程序。

直到HTML5的进一步开发和移动浏览器的速度提高以及HTML5音频停止停止运行为止,我将在使用Javascript <canvas>和所有其他功能方面玩得很开心,但是我不会只用它来制作精美的游戏。归结为您的目标是什么。我很少知道谁玩游戏而不是开发商,甚至没有移动HTML5游戏。同样,如果您想制作很棒的HTML5游戏,请制作HTML5游戏。如果您想制作和出售出色的游戏,请优先考虑玩家体验的质量。


要求在2012年中进行更新-HTML5游戏开发是否得到改进?仍然存在性能差距和音频问题吗?
Flash

3

检查http://cocos2d-javascript.org/

它尚未完全实施。但是一旦完成,那可能是最好的:)

该站点上有一些演示,它们非常好...

编辑:刚刚检查,演示不是移动友好...


3

正如其他答案所示,性能差异很大。但是,有多种新方法可用于在网络上(使用Chrome)获得本机网络性能。

MonoGame是XNA框架的开源实现,旨在跨尽可能多的平台工作。当将其与Google Chromes NaCl(本地客户端)结合使用时,结果会非常出色(需要使用chrome)。

我的建议是建立在XNA或MonoGame本机应用程序,并考虑NaCl和/或内胚让你的游戏到其他平台。在所有平台上,您的绝大多数代码库都是相同的,但是缩小版本将使您的游戏无法像HTML5游戏那样简单。

在我看来,HTML5在可用性能方面还不存在,但是存在其他选项几乎可以与HTML5的可访问性相提并论,尽管增加了游戏发布的复杂性(在某些情况下还增加了成本)。


哦,天哪,我以为NaCl仅用于本机C ++代码,但它也运行Mono ??
David Gouveia 2012年


1

您可能想尝试PlayN。目前它还不是很成熟或没有很好的文档记录,并且需要花一些时间才能使其正常工作,但是它允许您使用Java编程并将游戏导出到许多不同的平台(目前,Java,HTML5,Flash, Android和iOS,以及将来的Windows Phone 7)。

与Corona,Phonegap等相比,它的优势在于,它可以为每个平台编译游戏,而不仅仅是使用虚拟机运行游戏。这样可以确保您在每个平台上都能获得接近本机的性能。


0

很棒的答案和链接-谢谢!

我正在做一些自己的基准测试(HTML5 / JS和PhoneGap),并找到相同的答案。HTML5尚不存在。我还没有玩过app * mobi之类的更“奇特”的答案,该软件声称具有针对游戏进行了优化的精简浏览器,但是一般的“用HTML5编写游戏并在手机上玩游戏”计划是在这一点上不可行。它可能会到达那里,但我不确定。浏览器并不意味着要成为渲染引擎,而且我们正在经历很多麻烦。我认为相反,我们会看到有人想出一种替代方案,该替代方案会达到临界质量,并且会起飞。时间会证明一切。

我希望收到对我的工作的任何反馈和建设性的批评,这些评论和评论对GitHub是免费的。

https://github.com/GameMaker/PhoneGap-Performance-Test--PGPT-

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.