MVC3适合在线游戏吗

本文关键字:在线游戏 MVC3 | 更新日期: 2023-09-27 18:26:56

我正计划开发在线经济游戏,但在互联网上没有发现有人在MVC3中做这样的项目。选择MVC3作为在线经济游戏开发的框架是否明智?

MVC3适合在线游戏吗

确实如此。2009年,我亲自开发了一款基于浏览器的经济游戏,拥有一个持久的世界。Asp.net的mvc 1已经足够好了,mvc 3甚至更好。我在UI层使用了mvc框架。当然,在游戏的其余部分,真正的引擎是在单独的dll中,与asp.net mvc没有连接。

这在很大程度上取决于你想制作什么样的游戏,但要注意,asp.net mvc是针对web界面(html、flash)的。其他任何东西都只是.net代码,可以作为windows服务使用。对于我的游戏,我可以在没有windows服务的情况下将游戏引擎集成到asp.net mvc应用程序中,因为与游戏交互的一切都是基于浏览器的。

MVC3是一个通用的web框架,适用于许多不同类型的网站。它提供了对生成的html的详细控制,并且易于与客户端脚本集成。对于网络游戏来说,这可能是一个不错的选择。

稍后,您需要决定在服务器端进行多少处理,以及在javascript中在客户端进行什么处理。这可能是您要做的最重要的体系结构决策。

尽管MVC3通常是一个web框架,但它主要是为业务而改进的。并适合完美的需求。在游戏开发的情况下,它有一些"瓶颈"。首先是性能。通用性能是好的,但您应该考虑GC决定完成事情的时间。

其次,几乎所有传播良好的服务器技术,如ASP.NET、PHP、JSP,都使用最适合HTML页面等静态内容的HTML。对于游戏开发来说,直接使用网络套接字连接要好得多。

最后,我们可以看到,技术试图适应不同的需求,HTML5成为网络套接字连接的支持。此外,大多数最新版本的现代浏览器现在都支持这项技术。甚至微软承诺在MVC4中提供网络套接字支持。因此,最好等待MVC的下一个版本,并使用web套接字这样一个有前景的功能来满足您的需求。

如果游戏要在浏览器中运行,您最好考虑用Flash或Silverlight对其进行编码。微软最近重新发布了"割断绳索"来推广IE,他们用HTML5和CSS3编写了整个内容。不过,这将是一项艰巨的任务。

如果它是作为一个独立的应用程序运行的,比如魔兽世界,那么它是由一组中央服务器和一个特制的客户端运行的。服务器保存游戏世界中发生的事情,客户端与服务器对话并在屏幕上呈现发生的事情。这些类型的游戏大多是用C++编写的,但如果你正在做类似的事情,但规模不一样,你可能会使用C#和XNA或Direct X SDK。

MVC是一个用于组织和传递网页内容的框架。你的游戏很可能嵌入在网页中,所以你可以选择任何类似web窗体或MVC的东西,这可能不会有太大区别。