7yue's Weblog

Thinking in RIA Solutions...2470,8514,1020的生活演绎

« Flash Player升级至10.0.45.2Google Nexus One上的Flash Player 10.1演示 »

我对Flash Web Game与Flash Player功能的期待

今天,在经典论坛上看到了火山写的一篇分析Flash Web Game的一篇帖子,学到了很多东西,也颇有感触。这里我谈一谈我对于近两年火得一塌糊涂的Flash Web Game(或Social Game)在应用Flash Player和相关Flash平台技术领域的一些客观看法(我不会因为我是Adobe的员工,就说Flash技术完美的这么没有技术含量的话),其中还包括我对这个领域的一些期待。

从技术的角度而言,目前Flash Web Game之所以如此火爆,我的观点是认为,这是一个Web游戏领域市场发展到某种阶段和Flash的定位有轨道交集的必然。首先Web Game,要求游戏制作公司基于浏览器来开发娱乐大众的游戏,这些游戏可能有MMORPG,休闲游戏和Social社交网络游戏等等,但是归根到底,都是要求前端使用现有的Web技术来完成游戏的开发,那么前端我们用什么呢?很显然98%互联网普及率的Flash Player成了首选的游戏载体,因为网民(大部分是不懂技术的)打开特定网页,即可参与。这种无成本或极低成本的部署和分发机制成为了游戏公司传播Web Game的一个极为重要的考量指标。当然Flash技术有着得天独厚的优势,我今天不是来说这个的,我要说的是,如果Flash技术想更好的满足Web Game领域的需求(用户需求和开发需求),Adobe需要在以后做到以下若干层面的事情(我目前也在推动这些事情获得公司高层的认可),才能保证Flash技术在社会化网络游戏领域的持久成功:

行业方面
与业内领先的游戏公司进行深度的合作,比如社区培养,游戏设计和开发者技能培训及就业指导。
有针对于某个国家或地区的专属CDN合作伙伴,用于游戏和媒体资源的高速分发,比如更低成本的合作运营的Flash Web Game分发方案。
有灵活的本地化市场运营策略来服务特定市场上的游戏开发群体和应用,比如中国的Flash游戏的市场是怎么样的状况,俄罗斯又是怎样,日本呢?每个国家和地区的市场需求及政策导向将严重的影响该国或地区的游戏市场运营策略。
密切关注并加大投资在改善2个端的问题,游戏制作者的赚钱问题(如何培养一个不断帮助Flash Web游戏开发者盈利的生态环境),用户的兴趣问题(这个比较复杂,今天爱挖菜,明天爱钓鱼,后天呢?)。当然,Adobe不能做到所有,但是Adobe完全可以成为这其中的一个重要的环节。
看重智能手机和娱乐设备终端市场。Adobe目前的OSP就是看重这个。

技术方面
Flash Player体积要保持或更小,保证用户可以无缝安装
Flash Player的性能要加强,由于目前Flash Player已经是多线程(不是业界很多人传的Flash Player没有多线程),我仍然建议Flash Player保持线程不可访问的情况下,持续优化CPU和GPU的运算支持。
将Pixel Bender功能变为允许GPU加速
将3D功能扩展。(很多开发者在社区说,Adobe为什么不收购Unity3D呢,这是一个我个人无法回答的问题,但是我的看法可能比这些人更简单,与其收购Unity3D,为什么不把强大的shockwave3D从shockwave player里提取并优化移植到Flash Player中呢,要知道Shockwave 3D的功能也是非常非常强悍的,我也一直在咨询公司产品团队这种移植的可行性)。
提供一套基于Flash Player的Game扩展开发工具包,包括软件,Flash游戏开发官方最佳实践白皮书,以及C/C++游戏开发者开发AS3游戏技术指南(毕竟玩指针的这帮人如果用AS3来开发Web Game会觉的效率和资源控制是那么的别扭)。
P2P对于文件分发的支持,除了通过Adobe获取key和内置FMS支持,P2P应单独独立出来,成为Flash Player和游戏平台运营商的增值分成运营模式,Adobe不仅可以获利,还能通过Flash Player的P2P功能解决游戏资源分发,消息通讯等多个难题。
进一步强化Alchemy和LLVM项目,甚至成立LLVM基金会都可以,彻底从单方面Hack掉所有封闭的ARM/x86平台上的应用打包和构建门槛,为Flash游戏开发者打开另一片赚钱的天空。(Adobe目前就在这么干)
从Flash Player中逐步放弃掉AVM1,全面强化AVM2,甚至某些针对游戏的运算支持功能,有必要重新架构和开发。不仅可以降低Flash Player 尺寸,还能进一步统一Flash游戏开发手段和方式,形成强有力的竞争门槛。毕竟经常使用goto或者AS1的语法的开发者,非常不利于控制游戏的程序优化和最终质量。

这些就是我想到的,我以后也会在工作中去推动,至于结果,让我们看看我们能努力到什么程度吧。

  • quote 3.jinni
  • http://swfever.com
  • 我对Flash Player的期望:将应用于Flex的认证RSL机制(SWZ)开放给其他受信任的第三方API提供商(如Papervision),使得这些API也能享受到Player缓存的特权,同时使用基于CDN的各种类库RSL分发。
  • 2010-2-22 13:45:31 回复该留言
  • quote 4.asbinbin
  • 期待版本升级机制能继续完善,另外Assin所说的反编译问题,也值得关注。期待这一年有更多新改观。
  • 2010-2-22 21:06:50 回复该留言
  • quote 5.blandon
  • 要是真的都做到了,博主恐怕就要再次经历公司被收购,最后变成微软的员工了。呵呵呵。。。
  • 2010-2-22 21:08:33 回复该留言
  • quote 6.lipi
  • http://www.fminutes.com
  • 不知道adobe什么时候才能将功能加到player里面,总感觉adobe速度太慢了,那个stratus到现在都还用不上。另外资源分发的确是个很大问题,p2p是个很好的解决方法,不过我倒希望能扩展SharedObject功能使它默认更大空间和存储资源文件。
  • 2010-2-22 21:22:12 回复该留言
  • quote 8.flexsns
  • http://www.flexsns.com
  • flash的反编译问题挺困扰的~~
    Unity3D的播放器貌似有4.6M,不过在3D这块flash目前貌似还没能追上它吧~如有说错~~恕我愚钝~
    Admin7yue 于 2010-2-23 9:34:23 回复
    你没有说错,Flash在3D方面的功能是没有Unity3D强大,可是Flash不是为了3D而存在的,Flash Player其他很多功能,Unity3D干不了。
  • 2010-2-22 22:19:27 回复该留言
  • quote 9.soing
  • Flash Player 多线程 可以实现吗 ? 为什么我在各大论坛上看到的讲到的都是 “目前Flash Player 不支持多线程”的说法?
    7YUE 你能说说Flash Player 多线程吗 ?
    Admin7yue 于 2010-2-23 9:33:07 回复
    Flash Player目前是多线程,只不过所有线程是不能从外部访问控制,Pixel Bender是一个,所有渲染和动画以及AS逻辑处理是一个,网络访问,比如NC又是独立的一个。不支持多线程不知道是谁说的,可能意思是指开发者不能访问这些线程吧,总之是不正确的说法。
  • 2010-2-22 23:15:48 回复该留言
  • quote 10.jinni
  • http://swfever.com
  • 最简单的道理,如果Flash Player不支持多线程,那么当进行网络或者文件访问等IO操作时,整个画面将被Block,直到IO操作完成返回...所谓的不支持多线程,只能说目前“不支持编程来创建和控制多线程”
  • 2010-2-23 10:42:13 回复该留言
  • quote 11.寂寞火山
  • http://www.huoshan.org
  • 我说怎么看到蓝色理想论坛有人说是从你这里看到我的文章的,果然是你转载了,谢谢支持!

    看了你的文章,感觉你站的高度比我高多了,非常支持你推动“将shockwave3D移植到flash player上”的举动,这个和我的想法不谋而合!期待着那天,期待着FLASH可以支持更大规模的开发。

    上面讨论的线程问题,我希望可以把文本渲染也单独出来一个线程,或者进行效能方面的优化,因为我发现一个动态文本框里的文字超过5000时,我的电脑在呈现文字的一瞬会严重导致整个游戏画面停顿,甚至浏览器崩溃!
  • 2010-2-23 12:04:19 回复该留言
  • quote 12.benzene
  • shockwave如果和FLASH结合那真的是很强大,不过我感觉shockwave很难和FLASH结合,最起码是短期内,这个也是市场决定的,shockwave虽然在国内用的少,但是在国外还是很盛行的,而且一旦shockwave的图形渲染策略移植到FLASH上,感觉有些像是搬起石头砸自己的脚,到时候shockwave市场份额肯定会下降

    还有一个原因,就是浏览器限制,任何浏览器不可能任由FP随意发展的(FP的普及率太广泛),特别涉及到这些占用用户大量CPU或GPU运算的程序,而且在FP跨平台方面也许就不会像现在兼容的这么好了

    就算支持了,试着想一下,谁会在浏览器里面玩魔兽或者CS,里面的N多资源等等,也许以后随着互联网的发展可以解决网络传输瓶颈,但是还存在一个致命的问题,那就是修改客户端系统分辨率,任何3D游戏在最佳分辨率下都是很难跑的顺畅

    我对WEBGAME的理解是,WEBGAME应该是轻量级的,不论是下载还是使用都应该是方便的,不过还是希望ADOBE可以改进对CPU的优化。包括对P2P提供视频支持(估计很难,否则FMS....)
  • 2010-2-23 16:31:23 回复该留言
  • quote 14.magicianzrh
  • http://www.actionscript3.cn/magicianzrh
  • 其实我更期待flash player提供外部嵌入模块,就是说把flash player很多额外功能分发,这样既可以保持现有player的小巧,也可以根据更多不同的玩意来组合

    我非常期望加入3d功能,图片渲染速度应该提升,对于我而言,或者先给个链接吧http://zg.163.com,这个我这个游戏,其实player再大一点是没所谓的,因为我们游戏资源远远比player大得多,现在最大问题就是渲染速度
    web mmorpg我也开发过,这个也的确是很大的问题
    所以我推荐player加入模块嵌入模式,至少对于网易来说,我们还是有能力完善一个3d引擎

    同时,一套更小巧的ui component应该提供的,说实在flex component的确蛮庞大的--不是指体积,是能功能,我明白flex component应对其他ria可能这些功能都需要,但其实游戏并不一定是需要的,所以我建议ui component也有相对于的组合功能,各取所需吧

    alchemy我们考虑使用,同时pixel我们也尝试过,但目前我们的demo看来提升并不如想象中的大,player才是最根本的瓶颈

    不过从我们游戏网站访问数据分析,player 10普及率非常的高
    但说句实在的,flash builder beta2的确非常让我伤心,举个最简单的,eclipse下Ctrl+Shift+T居然会忽略掉很多类找不到
  • 2010-2-25 1:11:51 回复该留言
  • quote 15.kinglong
  • http://www.klstudio.com
  • 我觉得他们所说的“目前Flash Player 不支持多线程”,估计就指用户自己创建类似于Java中的“Thread”的多线程,准确说是用户代码创建多线程。
  • 2010-2-25 10:47:01 回复该留言
  • quote 17.leo
  • 上面flash3D性能提上方面提到了Flash和shockwave的整合,但是从产品定位层面来讲,两者整合的可能性大吗?
    还有一个问题,就是adobe现在对shockwave3D到底持什么态度啊,3D性能和产品更新速度都远不及Unity3d了。难道Adobe打算放弃WEB3D了?
  • 2010-3-17 16:24:52 回复该留言

发表评论:

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。

日历

最新评论及回复

最近发表

Powered By Z-Blog 1.8 Walle Build 91204

Copyright 2007 www.7yue.com. Some Rights Reserved.
京ICP备05064035号