因为我已经用C#做过任何游戏编程已经有一段时间了,但我最近有一个错误要回到它,我想要一些关于我应该使用什么配置的意见。
我想使用C#,因为这是我用于工作的东西,并且变得熟悉。我过去曾使用过DirectX和OpenGL,但主要是使用3D,但现在我有兴趣编写一个带有所有矢量图形的2D游戏,类似于几何战争的外观或旧的星球大战街机游戏。
我感兴趣的要点:
•易于使用/实施。
•易于记忆。 (我计划马上进行很多工作)
•看起来不错,我不希望曲线看起来像素化
•也许是一些很好的效果,如发光或粒子。
我对所有建议持开放态度,甚至可能是我没有想过的......
提前致谢!
答案 0 :(得分:11)
如果您刚刚开始并且已经拥有C#背景,为什么不试试XNA?你肯定能够在这里利用你的C#技能
http://creators.xna.com http://creators.xna.com/en-US/downloads
答案 1 :(得分:3)
我使用SlimDX进行C#图形编程,我更喜欢XNA。
答案 2 :(得分:1)
TBH你使用什么并不重要。 OpenGL,SlimDX或XNA。他们都会和彼此一样复杂(或者不是这样)。
答案 3 :(得分:1)
您可以考虑使用Axiom引擎,它是Ogre3D的C#端口。它是更高级别,您可以通过XNA或OpenGL渲染图形,只需对代码进行很少或不进行任何更改。它还可以处理键盘和鼠标输入(通常是单独的 - 例如,通过Windows上的DirectInput或Linux上的SDL)。
答案 4 :(得分:1)
您也可以考虑使用基于OpenGL的TAO Framework并且相当不错。但是你必须自己编写2D引擎。它也适用于Mono!
答案 5 :(得分:1)
我用C#包装器创建我的OpenGL引擎,因为我也喜欢C#。令人遗憾的是管理语言在图形方面非常慢,这就是为什么我总是在C ++中使用OpenGL,将其编译为DLL并使用interop从C#获取。如果你有任何机会不喜欢DirectX而不是我建议你远离XNA。我认识的每个人都对此感到非常失望并转而回到C ++(OpenGL)+ C#。
答案 6 :(得分:1)
因为你已经知道C#我会使用XNA或Unity。虽然有更快的语言和中间件,但它们可能足够快。两个框架都具有您需要的必要功能。