查看: 2409|回复: 0
打印 上一主题 下一主题

使用Flash,HTML5和Unity开发网页游戏的对比(一)

[复制链接]

1602

主题

1

听众

2万

积分

资深设计师

Rank: 7Rank: 7Rank: 7

纳金币
24658
精华
6

最佳新人 活跃会员 热心会员 灌水之王 突出贡献

跳转到指定楼层
楼主
发表于 2012-4-25 13:43:03 |只看该作者 |倒序浏览
    首先,我只关心基于网页的游戏开发。因此,这篇文章只关注这个主题。这并不是一篇关于Flash和HTML5的争论文章, 也不是教你如何在移动设备上搭建应用程序。所以,这篇文章纯粹的是关注当今开发web game的现实。
    我比较了Flash,HTML5,Unity,因为他们是当今唯一可行的web game开发平台。我列了10个主题来比较他们:
开发流程 – 用它来开发一个游戏有多容易?
平台稳定性 – 当你开始和结束开发游戏这段时间内,它会发生改变吗?
向后兼容性 – 用它开发的游戏10年后还能运行吗?
移动性 – 移动设备的支持
打包与分发 – 如何流通
安全性 – 代码和知识产权保护
货币化 – 如何运营赚钱
Facebook – 社交游戏的角度
多少人会玩你的游戏
3D支持 – Stage3D vs. WebGL vs. Unity

    上述的方面我认为是所有游戏开发者在评估一个新的开发平台时都应该注意的。我希望这些建议对新,老Flash开发者来说都会有所帮助。
1.开发流程
Flash:用Flash来开发游戏非常简单。因为关于它有无数的书籍,网站,教程,框架,视频和源代码。对于开发工具来说,Flex route是免费的,Flash IDE需要付费。Flash拥有通用且强大的矢量渲染功能,这意味这你创建的动画的文件格式会非常小。它全面支持音频和大多数的Adobe应用程序,例如在Flash IDE中嵌入Illustrator 和 photoshop。而且Flash还有大量的内置功能。
HTML5:编辑器例如JetBrains 的Astella会使编程变的不那么痛苦。有一些优秀的调试工具使浏览器调试也非常简单。有许多关于HTML5游戏开发的书籍,网站,在线资源和示例程序。开发HTML5游戏的工具是免费,但是也有商业的工具,例如GameMaker HTML5 和Game Salad。如果你想让程序效率更高,并且你不怎么关注底层运行机制,你可以使用特定的的库类似ImpactJS。

Unity:有一个优秀的可视化编辑器,并且可以嵌入主流的3D应用程序中。基础版本是免费供家庭使用的。也可以在公司里使用,每年需要交纳不到100K $ 的费用。专业版本带有各种插件,价格在1500$上下。一旦你有了Unity,大量的教程和资源也随之提供,所以学习并不是问题。

2.平台稳定性
Flash:Flash是跨平台的,它不在乎你用的操作系统和浏览器是什么,不管你是破旧的IE或是最新的Chrome。只要你使用的平台上有Flash Player,对于体验来说都是一样的。Adobe每年都会发布一个新版本和许多现有版本的更新。

HTML5:HTML5一直处于变动中。基于此有2个副作用:第一,即便你什么都没有做,你的游戏仍然有潜在的崩溃可能。这是因为之前你已经升级或使用其他浏览器了。第二,你必须考虑多平台。在Chrome上可以运行只是第一步,你还必须处理IE,Firefox,Safari和各种操作系统。由此带来的维护成本也不能低估。另外,最大的技术挑战包括音频支持以及不一致的画布渲染速度等。

Unity: Unity的web player拥有和Flash一样的优势。Unity的插件也是跨平台的。Unity本身也会定期的发布新功能。

3.向后兼容性
Flash:10年前,用AS1制作的游戏仍旧可以在现在的Flash Player11上运行。向后兼容性十分出色。

HTML5:对于HTML5来说,比较向后兼容性有点不公平,因为它还在发展中。这意味着,如果它不符合W3C标准,就会被废弃。

Unity:Unity并不支持以前的插件,最开始我开期待它会像Flash一样,但似乎并不是这样。

4.移动性
Flash:直到今天前,我可以说,除了iOS平台,Flash插件对于移动平台的支持是伟大的。 但是Adobe官方宣布已经不再对移动设备上的Flash Player插件继续支持了,你可以认为它已经完全死了。当然你可以通过AIR来创建移动应用程序,但是这些不属于web game的范畴,所以我们不在此进行深入讨论。Stage3D对于移动的支持并不成熟,随着许多硬件厂商的合并,以及逐渐老化的AVM,对于Adobe的开发者来说是一场艰难的战争。种种迹象表明,在重建过程中,Adobe已经把Oliver Goldman从AIR团队中调到云项目。Oliver在AIR中是核心人物,至于结果怎样,只能仁者见仁了。

HTML5:HTML5对于移动的支持力度越来越强,iOS5上已经看到了性能的明显提升。当移动浏览器开始介入这些新特性,例如触摸事件和加速度的支持,我对于HTML5的前景逐渐看好。当然,你必须处理不同的屏幕分辨率和画面比例,但是这个问题不是只有HTML5有。

Unity:Unity并不支持移动浏览器上的插件。考虑到Unity的强项在于原生移动应用程序的编译,我能理解原因。

5.打包与分发
Flash:Flash的游戏最终都压缩成一个SWF文件。SWF文件可以简单地通过带有HTTP服务的网站进行传输。或者,它可以锁定到一个具体的URL上。Flash游戏的门户网站完全基于SWF文件的流动方式。SWF文件传播地越广,你挣的钱就越多。
HTML5:对于HTML5的游戏来说,没有跨平台或者统一的打包方式。那些最大的游戏门户网站都不允许开发者上传游戏。我认为是因为涉及到安全问题,它们不允许在站点上运行外来的JS程序。这就意味着传播HTML5游戏的唯一方式就是通过URL共享到一个目的站点,或者通过iFrame来嵌入。最终,是由开发者或赞助商来为给他们的游戏提供上传站点的主机费用买单。Flash传播游戏的方式是从站点来取出SWF文件,然后hosting这些SWF文件。这听起来不那么臭名招住,因为这的确是Flash挣钱的方式。门户网站可以使用带有沙箱参数设置的iFrame,但是这样做会阻止HTML5游戏需要使用的特性,例如本地存储和表单。

Unity:Unity和Flash类似,因为它也会最终创建出一个单一文件,然后上传到游戏门户网站,例如Kongregate。



翻译转自:http://bbs.9ria.com/thread-103728-1-1.html
原文:http://www.photonstorm.com/archives/2568/the-reality-of-developing-web-games-with-flash-html5-and-unity
分享到: QQ好友和群QQ好友和群 腾讯微博腾讯微博 腾讯朋友腾讯朋友 微信微信
转播转播0 分享淘帖0 收藏收藏0 支持支持0 反对反对0
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

手机版|纳金网 ( 闽ICP备2021016425号-2/3

GMT+8, 2025-6-16 13:16 , Processed in 0.071231 second(s), 28 queries .

Powered by Discuz!-创意设计 X2.5

© 2008-2019 Narkii Inc.

回顶部