【问题标题】:Comparing Flash, HTML, Silverlight, X3D and Unity 3d比较 Flash、HTML、Silverlight、X3D 和 Unity 3d
【发布时间】:2011-03-05 00:30:34
【问题描述】:

我必须准备以下技术之间的比较,以将其呈现给我的项目经理,但我觉得我迷路了,所以如果有人能提供帮助,我将不胜感激

我想在以下几个方面比较它们:

  • 支持在线视频流
  • 每个使用的预算
  • 学习技术需要学习时间
  • 哪一个是标准并且将针对大量用户
  • 如果发现问题支持
  • 错误和安全问题
  • 与 DB、SOA 和 Web 服务的连接
  • 支持多人游戏

【问题讨论】:

  • 可能属于 Programmers.SE 或 Webmasters.SE
  • 因为它不是一个完整的答案,所以我将它作为评论发布。这是 silverlight 和 html 之间的一个很好的比较:davybrion.com/blog/2011/03/…

标签: silverlight flash 3d unity3d x3d


【解决方案1】:

在线视频流的支持

Some of the X3D viewers 支持视频流(有些甚至支持 3D 流,例如增强现实)。


哪个是标准,会针对很多用户

X3D​​ 是一种标准化格式,例如 JPEG,有多家公司能够处理此类数据,甚至正式为 recommended by HTML5 规范,而 Unity 将您与一家公司联系在一起。即使大多数 X3D 查看器都是基于插件的,例如 Flash,也存在诸如 X3DOM 之类的本机实现,用于为任何支持 WebGL 的浏览器显示 X3D 文件/与之交互。


与 DB、SOA 和 Web 服务的连接

我通常建议使用 Web 服务与 DB 交互,是的,X3D 可以与 Web 服务(XML、JSON)交互。甚至还有一个standard binary format 可以更快地传输和解析大内容。


支持多人游戏

一些支持 X3D 的提供商提供多用户服务,例如 Bitmanagement 的 BS Collaborate 服务器,但我也看到有人使用 Darkstar/RedDwarf 来制作多用户 3D 环境。

【讨论】:

  • 我看不到这个答案在哪里做任何比较?它确实为 X3D 提供了信息,所以我认为这就是所有需要的 OP。
【解决方案2】:

支持在线视频流

Unity 3D 不支持视频流,除非通过纹理完成,否则帧速率会非常慢。

我不确定 X3D,但我怀疑它真的是为此类任务而设计的。

Silver light 有很好的视频支持,应该很容易串流。

HTML 仅在使用 HTML 5 时才支持流式视频,当用户的浏览器支持时,它会提供最佳的用户体验。

Flash 是事实上的视频流媒体。它广泛传播。例如,他们将其用于 YouTube。

使用每个的预算

其中最便宜的是 HTML,它是免费的。然后,理论上您可以使用 Flex SDK 和 Red5 等服务器流技术(开源和免费)在 Flash 中免费设置一些东西。在那之后,我相信所有其他人可能会在成本方面保持同等水平,Unity3D 是最便宜的付费替代品。

学习技术需要学习时间

按从最快到最慢的顺序列出(假设之前没有任何经验):

  1. HTML
  2. 闪光灯/银光
  3. Unity3D
  4. X3D

哪个是标准,会针对很多用户

Flash 是最普遍的。它唯一的竞争对手是 HTML 5,因为新的浏览器倾向于支持它,并且它是 iOS 上唯一可能的选择。另一方面,如果你想要 3D,那么 Unity3D 是目前的标准,将来可能会跟随 HTML 5。

如果我发现任何问题的支持

嗯,Unity3D 会为您提供良好的付费支持、闪光灯和银灯(但仅限于您为流媒体服务器许可证付费时)。 HTML、X3D不会给你任何支持,但是你可以在网上找到很多资料。互联网上也有大量关于 Flash 和 Silverlight 的信息,但主要是 Flash。

错误和安全问题

所有都非常安全,我只是不确定 X3D,但所有其他的在安全性或错误问题方面都是可比的。

连接到 DB、SOA 和 Web 服务

使用 HTML、Flash 和 Silverlight 轻松实现。 Unity3D 更难,X3D 更难。

支持多人游戏

多人游戏是什么?如果您正在制作游戏,那么显然我会说如果游戏是 3D,那么您真正的选择是 Unity3D,如果要以 2D 完成,则选择 Flash。查看 SmartFoxServer 以获得简单的多人服务器。

【讨论】:

  • 虽然 HTML/CSS/JS 可能是免费的,但某些类型内容的工具效率不高,而且总体而言,支持多个浏览器的工作时间比使用 Silverlight 或闪光。
【解决方案3】:

我的 2 美分:

  • 支持在线视频流: 一些 X3D 播放器确实支持它。 Unity 在某些方面确实如此:http://unity3d.com/unity/features/audio-and-video

  • 每一款的使用预算: X3D 和 Unity3d 是免费的。您可以为 iOS 和 Android 等额外功能和平台付费购买 Unity 许可证。如果您需要为 Unity 编写插件,则需要 1500 美元的许可证。分发 Unity 产品不收取任何费用。

  • 学习技术需要学习时间: X3D 和 Unity3d 都有活跃的社区和许多在线资源和离线书籍。不幸的是,对于 X3D,最好的内容创建工具 (Vivaty Studio) 不再受到官方支持,但 Maya、Max、Blender 和许多其他 3D 程序都支持 X3D。 Unity 的在线文档非常棒,answers.unity3d.com 论坛(和其他论坛)免费且快速。

  • 哪个是标准并且将针对大量用户: '标准' 嗯,HTML 是最广泛的标准。 X3D(如果包括 VRML)是最古老的最广泛使用的 3D 标准。您拥有的 HTML。 HTML5 即将到来,“现在很快”(我已经变蓝了)。如果您的意思是“最容易获得”,那么 HTML 是第一名,Flash 是第二名(因为每个人都有浏览器,而且大多数计算机已经安装了 Flash)。需要安装 Flash。 Unity 也需要安装,但它至少与 Flash 一样快速且易于安装,并且下载量已达数百万,因此它变得非常普遍。 X3D 需要一个插件(这应该会在 HTML5 上的 x3dom 的某个时候“马上改变”),但是许多 X3D 播放器彼此之间都有一些不同。

  • 如果我发现任何问题的支持: 都有很多在线社区支持。 X3D 有一个规范委员会,但它本身并不是真正的支持,您必须联系 X3D 插件提供商(Bitmanagement、Cortona、Octaga、Exit Reality、Fraunhofer 等)。Unity 有很棒的在线社区论坛,您可以支付高级费用支持,但我只会在需要严重错误或无法解决的功能时才这样做。

  • 错误和安全问题: X3D 的错误取决于您使用的播放器。 Unity 有错误,但产品非常可靠(我只崩溃过一次,而且我整天、每天、一年多地使用它)。两者都有安全意识,但它们都不是完全安全的,特别是因为您可以编写本质上不安全的脚本。因此,您可以掌握内容的安全性。一些 X3D 播放器支持加密。 Unity 产品已编译。

  • 与 DB、SOA 和 Web 服务的连接: 您可以在所有这些平台上使用 AJAX 或 JSON 之类的东西,不是吗?因此,如果是通过网络服务,当然可以。如果通过直接本地访问,我知道 Unity 可以做到这一点。 Unity 和 Flash 都需要服务器上的跨服务器 xml 文件以允许跨域访问(无论如何在 Unity 的网络播放器中)。

  • 支持多人游戏: Unity 具有出色的多人网络组件。 X3D (spec) 也支持它,但它实际上取决于你使用的 X3D 播放器,它的实际效果如何。最坏的情况,你可以使用 AJAX 或 JSON 或其他任何东西来创建你自己的。

你选择哪一个主要取决于你想用它做什么。 Flash 通常是目前最好的路线,除非它是关于 3D 的,否则我会尝试 Unity。但一年后,HTML5 替代品将开始占据主导地位。 Flash 确实支持 3D,有不同的方法可以做到。 Vivaty 有一个用 Flash 编写的全功能 X3D 播放器,因此可以做到。 Flash 有几个不错的 3rd 方 3d 插件。

【讨论】:

    【解决方案4】:

    我完全同意wildpeaks :)

    与 DB、SOA 和 Web 服务的连接:使用 HTML、Flash 和 Silverlight 轻松实现。 Unity3D 更难,X3D 更难。

    回复:我觉得 X3D 不是最难的。

    X3D​​(X3DOM) 可以与 Web 服务 (XML) 进行交互,在 example/tutorial 中非常简单

    【讨论】:

      【解决方案5】:

      Flash 支持硬件加速 3d,并且开箱即用,支持 3d。此外,还有用于更高级 3d 的 papervision 库。也支持 Unity3d 作为 Flash 库。

      我认为 Flex 是 Fl​​ash 的真正替代品。它具有相同的 actionscript 语言,但使用类似于 silverlight 的称为 MXML 的基于标记的语法。数据库远程处理非常简单。您可以直接在前端访问您的 .Net/Java/Php 对象,而无需处理序列化问题。所有的 Flash 库都可以访问。

      【讨论】:

      • Flash 有硬件加速的视频播放,但没有 3D。您可能正在考虑即将推出的Flash Player 11
      【解决方案6】:

      还有来自instantreality.org的X3D播放器,支持视频流和解码,通过脚本编写XMLHttp请求,非商业用途免费。

      【讨论】:

        【解决方案7】:

        对于任何实时 3D 应用来说,Flash 3D 都不是很好的 3D。它是 2.5D,有一些技巧。

        对于简单的事情,X3D 很容易学习,而随着复杂性的增加,X3D 变得更难学习。它确实具有作为带有尖括号的 VRML 的优点,因此很容易找到免费的内容、示例和工具包。我对不同的玩家进行了比较测试。 BS Contact 最适合以最快的帧速率和丰富的调色板处理最复杂的内容。尽管 XMLHTTP 和数据库连接很容易固定,但网络支持仍然是非标准的。正如其他人所说,Instant Reality 正在快速发展,并得到对过去实施和未来需求有深刻理解的人们的支持。

        决定取决于项目类型。像您这样的简单比较评级充其量只会产生误导,但感谢您试一试。我在所有版本中都使用 VRML,现在使用 X3D 构建世界,现在作为与 Sony Vegas 结合使用的视频工作中的 3D 模型的来源。在无需使用非常昂贵的建模工具包的情况下获得成本效益,这是所有选择中的最佳选择。

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 2014-08-26
          • 2013-08-12
          • 2016-05-22
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2011-01-14
          相关资源
          最近更新 更多