代码之家  ›  专栏  ›  技术社区  ›  CMircea

基于浏览器游戏的ajax与activex/flash

  •  4
  • CMircea  · 技术社区  · 15 年前

    在过去的几年中,我一直在关注javascript的使用情况,并且随着极其快速的脚本引擎(v8、squirrelfish extrene、tracemonkey等)的发布,javascript的可能性大大增加。然而,Internet Explorer的使用份额加上它对最新标准的完全缺乏支持,使我想在微软总部投下一颗炸弹,因为它给任何网站都带来了巨大的问题。

    游戏将需要非常动态的客户端,动画和其他令人眼花缭乱的东西,但不是一个全面的游戏,像那些直接运行在操作系统中使用directx或opengl。然而,这对javascript来说可能有点困难,而且在internet explorer中肯定会感觉非常慢(考虑到当前的ie引擎可能比sfx慢几百倍;必须看看ie9会带来什么),在flash中完成这一切会更好吗?我知道这意味着需要插件,我对flash没有任何经验(除了浏览youtube:p)。这也意味着我不能直接从php输出数据,我必须使用xml或其他格式将数据传递给它(json直接集成在js中,php可以轻松处理它)。

    另一个想法是只为ie提供另一个接口,尽管我不知道怎么做(也许是activex?或者使用flash,为什么不直接向所有浏览器提供它)或者完全不支持它并要求使用其他浏览器,尽管从商业角度来看这很愚蠢。

    所以我在这里,想知道该采取什么样的方法,从而征求你的意见。我应该如何构建客户端?在所有浏览器中使用ajax,在所有浏览器中使用flash,或者混合使用(ajax用于“现代”浏览器,其他一些用于“祖父”:ie)。

    5 回复  |  直到 14 年前
        1
  •  1
  •   Evan Rogers    15 年前

    我在Ajax上推荐一个插件平台(Flash,Silverlight,或Java)。在游戏和客户端浏览器之间有一个干净的抽象层是一个很大的优势。在任何非平凡的ajax游戏中,都期待着浏览器在性能或实现上存在差异的无止境的情况。

    我个人认为,如果您是从ajax经验中学习flash的话,那么学习flash是很容易的。flash是目前安装最广泛、最成熟的浏览器游戏插件。然而,Silverlight和JAVA都在建设势头。而且,Unity引擎已经成为商业浏览器游戏的热门选择。

        2
  •  0
  •   Ricket    15 年前

    我认为你不应该把Java排除在等式之外。它是一种强大、快速的语言,使用Java小程序,你几乎可以做任何事情。如果你想通过opengl获得硬件加速的图形, JOGL 即使在小程序中也可以。

    另一方面,它可能不适合你。但是在这个早期阶段,我认为你应该评估你所有的选择,因为你没有Flash的经验,但听起来像你有一点编程经验,你可能会觉得在家里有更多的Java。

        3
  •  0
  •   aviv    15 年前

    我相信目前的答案是flash游戏。

    选择:

    Java Applet:那些日子越来越少,它通常不被安装在许多计算机上作为插件。

    Silverlight:太新了,可能会随着时间的变化而变化。在许多计算机上并不常见,它是微软(他们倾向于每两年改变一次技术…)

    javascript/ajax:仍然是一个新手,它在不断增长,有很多不错的特性,但仍然缺乏很好的跨浏览器,甚至ie8,不能在内部播放声音,仍然比其他浏览器慢,你不知道它会在哪里发展。

    最终,目前最好的解决方案可能是flash开发: 跨平台。工作快。已经活了很长时间,有很多支持。

    我希望这个答案在明年会有所改变。快乐的皮萨奇。

        4
  •  0
  •   d-_-b    15 年前

    看看jmonkey。如果你的机器上有Java,“插件”会被加载。一旦被缓存,下一次访问者访问页面时,你的游戏加载非常快。看看他们的网站上的演示,看看我的意思: http://www.jmonkeyengine.com/

    哦,我忘了说,这是一个3D扫描引擎Java引擎。我只是再试了一次,然后它在linux中加载了。看来他们干得不错。

    不要在浏览器中使用javascript。flash真的很痛苦,因为它是封闭源代码的,你不知道你是否犯了错误或者从经验中发现了一个错误。我再也不想做另一个flash游戏了。

        5
  •  0
  •   Jeeba    14 年前

    用一下怎么样 RaphaelJs ,这是一个javascript库,它使用svg生成二元图像,对于ie,它尝试使用ie替代品vml生成这些图像。我自己用的 WebGame ,但我并没有在里面制作复杂的图形。在rapaheljs上做的最复杂的事情是一个带有二元不透明度滑块的heath地图(20*20块)。它与jquery一起工作,没有任何问题或配置!

    推荐文章