我目前正在使用Visual Studio Express 2012学习C#,我对未来有一些游戏创意。我只是很难搞清楚如何开始(我15岁),我想知道什么是这种游戏的好游戏引擎。
答案 0 :(得分:2)
XNA将是完美的,但如果您想使用.NET 4.5,您将不得不经历一些小麻烦,以使其在Visual Studio 2012和.net 4.5中运行
另一个(我认为更好)替代方案是SharpDX。 SharpDX主要是一个构建良好的托管DirectX API,直接由本机DirectX的头文件构建。 SharpDX包含一组名为“Toolkit。{namespace name here}”的附加程序集,它们提供了XNA提供的内容,但在大多数情况下,更为理想。应该注意的是,工具包类设计是基于XNA框架的结构。 SharpDX将要求您了解DirectX以充分利用它的功能,但在任何其他托管DirectX包装器中您都找不到这么多功能。期间(是的,它也在计算SlimDX)。
Monogame(Mono的XNA版本是另一种解决方案,目前支持移动和Windows 8)。 Monogame有一个很好的奖励:它对跨平台开发有很好的支持。然而,这个奖金也是它的缺点。由于它的内部结构,与其他选项相比,它的性能很差。
如评论中所述,Unity是另一种流行的选择。你用c#编写并支持javascript。就个人而言,我看到了Unity的未来潜力。
如果你走这条路,那就是关于XNA的说明:XNA已经死了。微软明年之后不会支持它,我相信他们说。说实话,c#中的windows 8游戏开发目前在某种程度上被忽略了(除了Mono的XNA版本)。但是要注意单声道,虽然它运作良好,但从功能上讲,它的表现很可怕(尽管单声道爱好者会说)。如果您不相信我,请自行检查它的源代码。
另一个新兴的流行选择是HTML5和javascript。认真。你可以在html5画布上使用像three.js这样的lib做一些绝对令人惊讶的javascript图形。比我对脚本语言的预期要多得多。
最后一点,旧的尝试和真正的c ++和DirectX / OpenGL。 C ++是迄今为止最强大的编程语言,因此它是游戏开发中使用最多的。不幸的是,它也是最难以提高效率的,并且创建一个功能齐全的游戏所涉及的概念可能需要数年才能掌握。更正,需要数年时间。但是,它最终是最有价值的选择。
答案 1 :(得分:1)
XNA和Unity绝对是新的程序员学习游戏编程的方法。
还要注意你在学校学到的基本算法和数据结构。在我的日子里,学习游戏编程的另一种常用方法是下载,编辑和运行MUD。
答案 2 :(得分:0)
你已经进入了游戏开发界真棒!