分析以HTML5开发移动游戏的可行性

作者:Joe Monastiero

现在只要在浏览器中输入“HTML5”,只要花一个小时浏览,就能看到各种关于HTML5的正面和负面报道。有些观点认为HTML5提升了行业技术标准,有些则声称HTML5还很不成熟,近期尚无法在行业技术价值链中立足。

以我在AppMobi和Ludei的从业经验来看,这两种观点都不鲜见——并且多数批评论调也确实不无道理。

问题是:HTML5真是一个合适的开发工具吗?我认为HTML5已经可用于游戏开发领域。

HTML5(from blogs.adobe)

残酷的现实

HTML5很棒——这一点没人可以否认。它的许多新功能都具有变革性意义,而如果是将HTML5用于开发手机游戏,有些功能就完全派不上用场了。它在手机浏览器中的音频功能很糟糕,复杂的动画渲染也十分缓慢。

许多很合适制作游戏的手机功能(游戏邦注:例如振动和陀螺仪)完全失去作用。让我们面对现实吧,我们都习惯于将移动网页上和苹果App Store或Google Play中的应用进行比较,而这种比较的结果却并不乐观。

不可否认的发展潜力

那么HTML5对手机游戏开发的价值定位又是什么?当然就是跨平台部署。

只要你开发了一款游戏,就可以使用同个代码库将其部署到多个移动设备上。除了HTML5之外,没有哪个游戏开发技术具有这种通用性,这正是iOS、Android、WP8、Unity等平台和工具所缺乏的优势。

HTML5是所有门移动浏览器的一个标准组件,并且已经成为许多出色手机游戏的必需成分。

真正的问题在哪?

运行表现:在浏览器运行性能上,苹果表现较为领先,而Android则稍显落后。含有高质量动画的游戏在移动平台上存在诸多问题,而开发者却并不能只瞄准最新、最快的设备制作游戏。

发布渠道:这是一个致命问题。目前的网页平台还没有发布HTML5内容的杰出渠道。事实上,手机游戏目前只有两个最为可行的发行选项——苹果App Store和谷歌Google Play。

本地设备功能:HTML5内容难以通过今天的浏览器访问用户设备的陀螺仪、触感反馈、加速计和照相功能。此外,开发者制作优秀游戏所需的多通道音频API,在此也基本没有施展空间。

盈利方式:苹果拥有固定可靠的应用内置付费解决方案,Google Play和亚马逊也不例外。但移动网页平台就没有这么理想了,这里存在一个先有鸡还是先有蛋的问题。不少盈利解决方案公司都在不遗余力地推出帮助游戏开发者针对用户所在平台的盈利方案,例如原生iOS和Android平台。但他们并投入足够的精力,针对移动网页平台创造可行的计费和货币解决方案。

通知信息:基于移动操作系统的游戏的一大创新就是通过推送通知直接传递信息,但移动网页平台目前并没有这个系统。

解决方法

但也有一些新技术供应商已经几乎解决了上述提及的HTML5弊端。许多人对HTML5仍然抱有成见,那是因为他们不知道已经出现了一些可行工具。实话说,成熟而可行的工具正在以惊人的速度不断发展。

以下是平台供应商解决问题的方法:

运行问题:使用硬件直接加速图像指令,而不是像多数移动浏览器那样使用软件API在屏幕上绘制图像和动画。

发布问题:Cloud Compiler支持开发者轻松地用一个原生混合包装器将自己的项目“包裹”起来,以便项目与苹果和Android应用商店兼容。你还可以用Cloud Compiler创建WP8、BBY、亚马逊、Mozilla和Tizen应用,可将一个代码库运用于多个平台。

本地设备功能问题:使用以上针对运行问题的同个概念,将HTML5开发者尚无法使用的本地设备功能与JavaScript绑定。这样网页开发者就能获得“OneAPI”以访问照相机、加速计、陀螺仪等功能。

盈利问题:同以上概念相似,开发者只要创建一个绑定原生付费和本地广告网络的JavaScript扩展API。然后,针对所在平台的多个付费系统分配同一个API。

信息问题:这需要借助特定操作系统服务器。创建一个非特定操作系统的信息API,令其向特定操作系统服务器清晰传递信息。

即将在2013年第一季度出现的另一个解决方案是,针对移动浏览器创建一个插件,并让提供上述设备功能的手机制造商创建“游戏”浏览器,让手机运行HTML5游戏的表现与原生应用一致。

那么HTML5为何仍然无法普及?

这只是一个时间早晚的问题。

参与解决这些问题的多为小型而快速发展的公司,他们需要一定的时间才能让行业认同其解决方案。这其中的最大问题在于认知度。而在游戏行业,只有推出热作才能获得认知度,因此这还需要一定时间。

2013年第一季度很可能成为HTML5移动游戏增势的时期,2013年也将成为HTML5游戏开发走向前沿的一年。