【问题标题】:Asp.NET Real Time GameAsp.NET 实时游戏
【发布时间】:2012-01-23 01:28:31
【问题描述】:

我想实时开发一款游戏。 每秒为图片上的所有用户更新。但我不知道该怎么做,有类似的东西,我可以使用示例代码吗? 我将使用 C# 和 Asp.NET

注意:对不起,我的英语不好。

【问题讨论】:

  • 我没有听说过类似的示例代码。但在我看来,你很可能需要对 JavaScript、AJAX 和 JSON 有很强的了解。此外,听起来您要么想要使用画布,要么想要使用 WebGL。这不是您要在这里承担的简单任务。

标签: c# asp.net real-time


【解决方案1】:

尝试使用 SignalR,从您的问题中我可以看出,这对于进行游戏更新很有用。

https://github.com/SignalR/SignalR

https://github.com/SignalR/SignalR/wiki/Getting-Started

【讨论】:

    【解决方案2】:

    如果延迟真的很重要,那么您应该考虑一种 WebSocket 解决方案,而不是引入需要 HTTP 请求的开销。 WebSockets 支持通过单个连接在客户端和服务器之间进行双向通信,从而将延迟保持在绝对最小值。其他基于 HTTP 的解决方案(包括 EventSource)意味着从服务器到客户端的数据可以以低延迟发送,但从服务器到客户端的消息必须通过建立新的 HTTP 请求来产生,这会引入延迟。

    因此,这意味着目前 ASP.NET 不是真正的实时游戏的好选择。

    有哪些替代方案?

    如果您想留在 .NET 世界,那么我会考虑查看 XSocketsSuperWebSocket

    如果您会考虑其他技术解决方案,那么我编写了一个list of realtime web technology solutions。同样,在做出选择时,我更倾向于支持 WebSocket 的解决方案。

    如果您想与 Microsoft 堆栈保持密切联系,您可以查看 Windows Azure 上的socket.io。见Running Socket.io on Windows Azure Web and Worker Roles

    如果您考虑使用 Node 和托管服务,那么您可能会对 Pusher Pipe 感兴趣。

    【讨论】:

    • 感谢您的回答,我选择了 XSockets.NET 但我安装了我无法看到 XMaxiSocketServer 的包。但是this linkthis video 它是自动创建的,但是在我的项目中我只能看到 dll 文件。
    【解决方案3】:

    从 1.0 beta 版本开始,最近在 Nuget 上发布的版本对 XSockets 服务器(以前版本中称为 XSocketsMaxiServr)进行了一些更改,现在称为 XSockets.DevelopmentServer.Console.exe ,可以在 XSockets\ DevelopmentServer 文件夹或您安装的项目。

    只需从“命令提示符”打开它,服务器就会启动,注册您的 WebSocketHandler。安装期间将添加的示例位于 XSockets\Examples 下。

    我们将在几天内更新文档,而且我还知道 XSockets 的团队成员 Ulf 最近发布了一个新的指南/视频,可以在这里找到:

    http://xsockets.net/videos

    这部电影叫做“XSockets.NET 1.0 RC1 - 入门”,我相信我会对你有所帮助。

    如果您需要任何帮助,请随时与我们联系,我们将尽可能为您提供帮助!您可以在 XSockets 网站上找到正确的联系信息。

    诚挚的问候,Magnus Thor,XSockets.NET 团队

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-06-24
      • 2012-06-20
      • 2021-03-13
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多