用C#编写2D RTS游戏:图形库选项?

时间:2009-08-12 04:52:31

标签: c# .net graphics

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

7 个答案:

答案 0 :(得分:6)

到目前为止发布的答案(除了SDL.NET)都刚刚说过使用OpenGL,DirectX或者2的一些变体。就个人而言,当你已经拥有XNA时,我不会将这两者用于2D游戏。 XNA已经有一些用于制作2D图形的类(主要是SpriteBatch)。

如果您使用XNA,您不仅可以制作在Windows上运行的游戏,还可以制作适用于XBox,Zune和Silverlight的游戏(Zune和Silverlight要求您不要使用XNA的3D部分,但那不应该担心你)。基本上,XNA将为您节省编写DirectX或OpenGL所需的所有低级管理代码的麻烦(例如处理窗口切换和许多其他问题)。

我根本没有使用过SDL,所以我不能就此给你任何个人意见,但我听说它对2D图形非常好,所以我建议你研究一下SDL.NET或者去看看SDL.NET使用XNA,这里的其他建议需要更多的工作而没有什么优势(大多数人只是想制作游戏而不用担心HAL接口并让所有东西与操作系统一起玩得很好)。

答案 1 :(得分:2)

直接进入DirectX是一个非常有效的选择,虽然只有2D,你可能需要对3D图形有点过分以便有效地使用它。

当我进入游戏开发时,我非常喜欢人工心脏图形引擎,它有点基本,但非常容易使用。很遗憾,website似乎已被停放的域名替换。也许这家公司倒闭了。如果是这样,那真是太遗憾了。

有关更详细的目录,请查看DevMaster game engine database

答案 2 :(得分:2)

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

  1. SlimDX
  2. TAO framework - .net framework的opengl绑定
  3. 但我不确定他们是否已经足够成熟......但是值得giva尝试..

答案 3 :(得分:1)

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

答案 4 :(得分:1)

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

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

此外,很多articles on GameDev在开发游戏时帮助了我很多。他们有各种各样的文章可以帮助你,从添加灯光效果到你的游戏到添加简单的物理。

答案 5 :(得分:1)

我使用Gorgon(使用SlimDX)。

http://tape-worm.net/?tag=gorgon

答案 6 :(得分:0)

总有Unity。使用Mono而不是MS.Net http://unity3d.com/unity/