【问题标题】:Which platform to develop web-based game in?在哪个平台开发基于网络的游戏?
【发布时间】:2010-03-11 08:12:48
【问题描述】:

我正在考虑编写一个新的基于网络的游戏,并想知道是否有人对我应该选择哪个平台有任何建议。

游戏将基于 2D 精灵,但需要保持不错的 fps 速率(可能同时移动多达 20 个物体)。这一切都将通过鼠标进行控制。

我每天都使用 .NET,所以 Silverlight 对我来说似乎是一个自然的选择,但我想确保尽可能多的人可以玩它...

  • 是否可以直接从 Visual Studio 开发 Silverlight 游戏(我有 VS 2008),或者我是否需要额外的软件(是否需要成本...)
  • Silverlight 在 .NET 版本方面有哪些限制(例如,我可以使用 .NET 3.5 吗?)
  • 我可以使用哪些物理引擎?
  • Flash 会是更好的选择吗?是否有免费的开发环境(有什么好处)? (我不关心学习曲线)
  • Java 仍然是一种选择吗?

所以我只是想要一些关于什么是最适合我用于简单的基于网络的 2D 游戏的反馈。

编辑:

您能提供更多信息吗?是 这个单人/多人?什么 一种流派?会有很多 涉及经典的 UI(很多形式 有很多按钮/复选框, 数据网格等)?会有很多吗 动画和效果?

  • 单人游戏,敌人的“攻击波”
  • 敌人只是会移动的东西,玩家只需指向和点击
  • 没有经典的用户界面,只是点击按钮(没有列表/下拉菜单等)
  • 最少的动画和效果,只有图形要求是敌人的移动(需要很少的动画)

【问题讨论】:

  • 您能提供更多信息吗?这是单人/多人?什么样的流派?会涉及很多经典的 UI(很多表单,有很多按钮/复选框,数据网格等)?会有很多动画和效果吗?
  • @back2dos:我已经用额外的信息更新了问题
  • 好吧,在这种情况下,我会亲自使用 JavaScript。查看游戏查询:gamequery.onaluf.org/demos.php

标签: java .net flash silverlight .net-3.5


【解决方案1】:

我也对基于网络的二维游戏感兴趣。我个人喜欢silverlight,因为:

  1. 我已经熟悉 c#/.net。
  2. 它有很多功能,即使它没有成熟的 WPF 那么多。我听说单独的 LINQ 对游戏来说很棒。本地存储也可能是一个优势。您可以为游戏的 gui 部分使用丰富的控件选择。老实说,WPF 在有趣的控件方面输给了 Silverlight。
  3. 完全免费。您需要下载 VS 的 silverlight 工具包,但这没问题。

一件很酷的事情是您可以进行全屏显示。我还发现它足够快(在我的 core2 duo 笔记本电脑上)可以处理大量对象。 silverlight 将成为 winmobile 7 的重要组成部分这一事实也是一个好点(尽管我们必须看看结果如何)。

那里有许多 Silverlight 游戏,因此您可以看到可能性。

我想主要的负面因素是可移植性和让人们安装“又一个插件”。 Flash 显然拥有最广泛的用户群,但如果你的游戏足够好,人们可能不会介意安装插件。这是一个轻松的安装。

在物理引擎方面,TomTom 提到的FarseerPhysics 最受欢迎。

还有一件事我认为非常酷且引人注目:http://www.codeplex.com/silversprite。来自网站:

在 Silverlight 3 中运行 XNA 游戏无需更改代码。仅基于 SpriteBatch 的图形,无 3D。由于游戏直接编译为 Silverlight 代码,因此它将在 Silverlight 可以运行的任何地方运行。 [强调]

XNA-in-Silverlight 方法可能非常好(尤其是对于您可能想从中获利的更复杂的游戏),因为这也让您以最少的移植工作即可使用 Xbox。但是,我没有这方面的任何经验,所以我无法进一步评论。

根据 OP 的编辑进行编辑:

由于您的游戏听起来比我想象的更简单,如果您不介意学习曲线或使用纯 HTML+CSS+Javascript 方法的潜在困难(实际上可能不是那么好),我'我会说也许这毕竟是最好的路线。那是因为便携性。

也就是说,我很懒惰,不在乎是否有几个人错过了我的游戏,所以我会坚持使用 Silverlight。 =P

【讨论】:

    【解决方案2】:

    如果您想要最大的可玩性,请使用所有 HTML 和 javascript,甚至不使用画布,然后游戏基本上可以在任何地方运行,包括移动设备。您可以平衡可能导致您为 Flash 或 Silverlight 开发和拥有非常有限的移动受众的额外工作。您也可以查看 processing.js。

    【讨论】:

      【解决方案3】:

      如果你想走 HTML + javascript 的方式,你可以看看processing.js。它是处理语言的 Javascript 端口(由 John Resig 编写)。

      优点:

      • 完全免费。
      • 语法简单。
      • 便携性。没有插件。

      缺点:

      • 仍在开发中,一些处理功能(如 3D 功能)尚未移植

      另外,请查看 John Resig 在 Processing.js 中的塔防游戏。

      【讨论】:

        【解决方案4】:

        恕我直言,Java 仍然是一种选择,尤其是 JavaFXhttp://www.javafxgame.com 可能是一个很好的起点)。

        但是,您在语言/技术方面的经验可能比平台的选择更重要,因此您应该选择 .NET(鉴于目前没有任何推荐的替代方案脱颖而出)。

        【讨论】:

          【解决方案5】:

          正如 Benny 所说,如果您已经熟悉 .NET,Silverlight 是一个很棒的平台,而且您需要的大部分工具都内置在 Visual Studio 中(VS2010 有一个内置设计器,但当前的 RC 版本没有) t 支持即将推出的 Silverlight 4)。

          Silverlight 的一个很酷的功能是它能够利用 GPU。这应该会提供很好的性能提升。我不知道 Flash 是否提供此功能。

          Silverlight 运行时非常小(不到 5MB)。而且您可以轻松启用浏览器外支持,例如,您的游戏可以从桌面快捷方式启动,而无需启动浏览器(并且在线)。 Silverlight 4 添加了使用提升权限的功能(这使您可以访问本机网络堆栈而不是沙盒浏览器堆栈)。使用 SL4,您还可以获得网络摄像头支持,如果这对您的游戏很重要的话。

          【讨论】:

            【解决方案6】:
            • Silverlight 可能需要用于 Visual Studio 的其他工具,但这是免费下载的。基本上2008年是在silverlight之前制作的,所以你需要下载它的工具。

            • Silverlight 在受限版本上运行 - 请阅读文档。

            • 我一般建议使用 .NEt 4.0、Silverlight 4.0、Visual Studio 2010 - 这些都在拐角处,无论如何,您将在一个月内开发更长的时间。

            • Java - 不抱歉,为什么。我的意思是,理论上是的,但是如果您是 .NET 人,那么您在那里有更多的知识,silverlight 是 XAML(与 WPF 类似的经验,总是很好)。为什么要为使用 Java 放弃所有这些?

            • Flash - 该死,不 ;) 说真的 ;) 你不想处理这个,除非你必须这样做。

            • 物理引擎 - 不知道。需要检查。不确定有很多。你谷歌了吗? http://www.codeplex.com/FarseerPhysics 首先出现。

            我认为这是一个很好的方法。 Silverlight 是一个小的下载开始 - 所以,我不认为你失去了太多的人。我会做的。

            【讨论】:

            • 我提到 Java 是因为我不想排除任何可能性,并且我在几年前开发了一个游戏(当时它是热门的新事物),只是想确定它不可行选择更多
            • 关心为您的陈述提供任何论据,还是每个人都应该盲目相信您?例如,您似乎是一位真正的 Flash 专家,所以我假设您可以给出很多不使用 Flash 的充分理由,我很想听听他们的意见。另外,您的最后一句话有点空洞,因为它与现实世界的条件无关:flash player 安装程序的大小约为 25%,这甚至可能无关紧要,因为它在目标受众中的渗透率约为 100% .
            • 阅读帖子。作者声称拥有 .NET / C# 的日常经验。 Flash是一种完全不同的野兽。在后来的评论中,他声称几年前的 javaa 经历。 Flash是一个完全不同的野兽。得到它?常识 - 使用你所知道的,加上对你的中期简历有好处的东西。 Silverlgiht 会给他带来比闪光更多的好处。另外,动作脚本的白痴是传奇;)认真;)谁在乎25%的大小,顺便说一句。 - silverlight 已经低于大的标记,所以 25% 是 - 不是很多收益。
            • 好吧,我确实读过这篇文章。这让我想知道“我不关心学习曲线”的哪一部分你没有得到。您没有提供任何使用 silverlight 的充分理由,除了他应该坚持使用 .NET,因为他知道这一点。这不是一个意见交换网站。提供事实。诸如“Silverlight?你一定是在开玩笑吧 ;) 每个人都知道 .NET 的怪癖!”之类的论点。是空心的。除非有证据或至少有参考支持,否则您和您想象中的匿名消息来源的意见是无关紧要的。
            • 你指责我的帖子是空的?天哪——你在哪里学的写作? Back2dos 和“每个人都知道” - 伟大的民粹主义。进入政治;)
            猜你喜欢
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            相关资源
            最近更新 更多