一款C#游戏可以统治所有游戏(iOS、Android、WP7、W7、Mac OS X和XBOX)

一款C#游戏可以统治所有游戏(iOS、Android、WP7、W7、Mac OS X和XBOX),c#,android,windows,ios,windows-phone-7,C#,Android,Windows,Ios,Windows Phone 7,嘿,我在学C#刚想到一个很酷的主意。考虑到游戏很简单。比方说,一款经典文本输入风格游戏的翻拍版,一款C#游戏理论上可以移植到我上面列出的所有平台上,而对原始源代码几乎没有改变,对吗 显然,用户界面必须进行调整,我高度怀疑这样的游戏是否真的能在这些平台上生存下去 但是,尽管C#确实很重,但通过不同的方法,这可能会起作用,对吗?或者,我是否必须将C源更改为Objective-C?安卓是否有像苹果和微软一样支持的官方语言 这是一个奇怪的问题,但是如果这是真的,那么C是一个很好的通用语言,即使它在很大程

嘿,我在学C#刚想到一个很酷的主意。考虑到游戏很简单。比方说,一款经典文本输入风格游戏的翻拍版,一款C#游戏理论上可以移植到我上面列出的所有平台上,而对原始源代码几乎没有改变,对吗

显然,用户界面必须进行调整,我高度怀疑这样的游戏是否真的能在这些平台上生存下去

但是,尽管C#确实很重,但通过不同的方法,这可能会起作用,对吗?或者,我是否必须将C源更改为Objective-C?安卓是否有像苹果和微软一样支持的官方语言


<>这是一个奇怪的问题,但是如果这是真的,那么C是一个很好的通用语言,即使它在很大程度上是基于和支持的,

< P>你最好还是坚持C++,iOS和Android都有原生支持。

< P>我不是游戏开发专家,但这里我的2美分,

用c语言开发游戏不会有任何问题,它以所有平台为目标,在上述所有平台上成功运行,包括andriod和iphone


但是问题是特定于您将要使用的图形库的。例如,Xbox库只针对windows。但是如果你坚持使用openGL,你可能会解决这个问题

这主要是一个pipedream,您可以使用C#/XNA制作Windows/Xbox/WP7游戏,也可以使用C#via Mono/MonoTouch制作OS X/iOS实现。不过,Android目前还没有合适的mono实现来支持这一点

这并不意味着令人沮丧,而且微软已经将C#语言给予了社区,因此这是积极的


我决定发布一个答案,因为我想到了一些更相关的事情要说

首先回答你的问题:是的,它会起作用。不,您不必移植到Objective-C。Android的应用程序通常使用Java

还有一点背景

对于使用.Net和C#进行跨平台开发,我听到了一些好消息

您已经接受了必须为每个平台专门处理UI层的观点,因此您走的是正确的道路

重要的是,9月9日,苹果放宽了此前禁止使用Monotouch构建的应用在市场上发布的指导原则

特别是,我们正在放松对开发工具的所有限制 用于创建iOS应用程序,只要 生成的应用程序不会下载任何内容 代码。这应该给开发人员 他们想要的灵活性,而 保护我们需要的安全

同样有趣的是,来自克雷格·邓恩的博客

没有理由需要C#,毕竟你可以使用Vb.net进行ASP.net开发:)(别开玩笑了,这是一种更好的语言,特别是考虑到Vb对嵌入式xml的支持)

然而,对于移动开发,我认为您走错了跨平台开发的道路。对于这一点,你总是会得到80%的保险,最后的20%将是一个痛苦。例如,如果你选择C#,你会得到Windows和XBox,但不是Playstation和非常差的iPhone

所以,你需要最普通的恶魔——这可能是C++。你可以在上面放一个QtGUI(使用优秀的QML,这可能是目前最好的UI技术),它可以在大多数平台上运行,包括Android。但不是WinPhone7。对于所有平台来说,C++仍然是一个不错的选择,因为即使Windows也会运行它(C++/CLI),而且ObjuleC和C++之间也有一个简单的桥梁。你最好的选择是去那个路线(而且很多游戏开发都是用C++完成的,所以它不会浪费精力)。


不过,很有可能,您永远不会得到一个代码库在所有平台上都能很好地工作。不过,javascript可能是终极选择,因为微软不再专注于Silverlight,更喜欢HTML5+javascript进行跨平台的工作。

大部分情况下,这是一个空想,你可以使用C#/XNA制作一个Windows/Xbox/WP7游戏,还可以通过Mono/MonoTouch使用C#来实现OS X/iOS。不过,Android目前还没有合适的mono实现来支持这一点。这一点也不令人沮丧,微软也将C#语言带给了社区。。你可以将此作为答案提交,但是,是的,我一直在研究它,我本来会考虑Android的其他方面。难道不是iOS涵盖了iPodtouch、iPhone和iPad吗?好的,尽管为了ASP.NET的缘故,我需要学习C#的基础知识,所以我想能够用相同的语言编写一些游戏会很好。感谢Mono链接和OpenGL的建议!在你的问题中,我会和拉梅什说同样的话。通过monotouch和monodroid,您可以选择在您提到的所有平台上执行C#。您承认必须单独处理ui层,因此这是给定的。是的,下载使用monotouch制作的示例应用程序后,您几乎可以立即将使用monotouch构建的应用程序与标准objective-c应用程序区分开来。。SadlyI大约一个月前和Craig Dunn谈过这件事。。如果我没有误解的话,我相信您仍然可以在UI中使用Cocoa。在我看这篇文章的时候给我的文章添加一个相关链接。是的!我知道苹果有一个声明。我需要找到使用monotouch构建的其他应用程序,看看是否总是存在延迟。在Android方面,您将是正确的策略明智的。Android的独特之处在于,开发者可以做我们想要做的任何事情,不管是好是坏。你可以使用VB.net,但是C#有更多的支持,就像我说的,我至少可以为XBOX、Windows和WP7开发一个强大的前身。我很感激你的回答,但我并不完全同意你的看法。当然有更好的选择,但它可以工作。值得一看html5+javascript的故事。。。即使只是为了用户界面