2009-08-12 65 views
2

我正在考虑在C#/ .NET中编写2D RTS,我想知道除了XNA之外,还有哪些选项可用于图形库。他们是什么?在C#中编写2D RTS游戏:图形库选项?

+0

请移动到堆栈溢出,我无意中问在这里... – 2009-08-12 04:53:32

+0

好为什么它不显示我的问这个问题? – RCIX 2009-08-12 06:24:57

+0

您是否在用户页面的“帐户”选项卡上正确链接了您的帐户? – Blixt 2009-08-12 06:38:16

回答

6

(除了SDL.NET)迄今公布的答案都只是说使用OpenGL,DirectX或将2个人的一些变种,我不会使用其中任一2D游戏时,你已经有XNA。 XNA已经有一些2D图形类(主要是SpriteBatch)。

如果您确实使用XNA,您不仅可以制作在Windows上运行的游戏,还可以制作XBox,Zune和Silverlight游戏(Zune和Silverlight要求您不要使用XNA的3D部分,但这不应该让你担心)。基本上,XNA将节省您的书面方式的所有下一级管理代码的麻烦的DirectX或OpenGL需要(如处理窗口切换和其它问题过多)。

我没有使用SDL可言,所以我不能给你任何个人意见,但我听说它是​​2D图形相当不错的,所以我建议寻找到SDL。NET或者只是与XNA合作,这里的其他建议需要更多的工作,但几乎没有什么优势(大多数人只是想制作游戏,而不用担心HAL界面,并让所有的东西都能和OS一起玩)。

+0

这只是XNA很容易写出简单的小样本,但却非常难以写出像样的东西。我开始怀疑它是最好的选择,虽然... – RCIX 2009-08-12 18:33:36

+0

就像我说过的,XNA比使用OpenGL或DirectX更容易,这是大多数人在这里提出的。可能有几个引擎会更容易,但大多数引擎会要求你使用c/C++(没有CLR,所以你不会得到使C#更容易开发的垃圾回收),此外,大多数引擎都适用于3D游戏,并且让它们只能做2D图形会更困难。 – 2009-08-12 23:59:05

+0

你很可能是对的。 Besiddes;如果我在RTS游戏的“框架”中投入足够的精力,实际的开发应该足够简单。 – RCIX 2009-08-13 00:07:15

2

直接去DirectX是一个非常有效的选择,虽然只有2D,但您可能需要了解一些有关3D图形的有效使用方法。

回到游戏开发的时候,我非常喜欢Artificial Heart图形引擎,它有点基本但非常容易使用。不幸的是,website似乎已被替换为停放的域名。也许公司倒闭了。如果是这样,这是一个耻辱。

了解更详尽的目录,看看在DevMaster game engine database

2

如果您正在寻找开源社区支持的库,你可以尝试

  1. SlimDX
  2. TAO framework - 对OpenGL绑定。网络框架

但我不确定它们是否足够成熟..但它的价值g伊娃试试..

1

我确定有其他选项,但您也可以看看SDL.Net,SDL的.Net实现。

1

为了充分利用当今计算机的硬件并跟上其他2D游戏的图形,我会选择基于DirectX或OpenGL的2D-in-3D解决方案。你会渲染精灵作为所谓的四边形(两个多边形结合在一起,形成一个正方形)。

我个人认为OpenGL更适合2D游戏。你应该通过NeHe tutorials绝对读取(它们是用于C++,但OpenGL的部分仍然有效。你可以在每节课的页面底部找到该代码的C#转换。),因为它们是获得一个真棒资源开始为你的游戏制作一个简单的图形引擎。

此外,很多articles on GameDev在开发游戏时都给了我很多帮助。他们已经有各种各样的文章可以帮助你,包括增加照明效果到你的游戏以增加简单的物理效果。