Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/293.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在C#中编写2D RTS游戏:图形库选项?_C#_.net_Graphics - Fatal编程技术网

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

在C#中编写2D RTS游戏:图形库选项?,c#,.net,graphics,C#,.net,Graphics,我正在考虑在C#/.NET中编写一个2D RTS,我想知道除了XNA之外,图形库还有哪些选项可用。它们是什么?直接进入是一个非常有效的选择,尽管仅对于2D,您可能需要对3D图形了解太多才能有效地使用它 当我进入游戏开发时,我非常喜欢人工心脏图形引擎,它有点基本,但非常容易使用。不幸的是,似乎已替换为一个已驻留的域。也许公司倒闭了。如果是这样,那就太可惜了 有关更广泛的目录,请查看如果您正在寻找开源社区支持的库,您可以尝试 --用于.Net framework的opengl绑定 但是我不确定他们

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

直接进入是一个非常有效的选择,尽管仅对于2D,您可能需要对3D图形了解太多才能有效地使用它

当我进入游戏开发时,我非常喜欢人工心脏图形引擎,它有点基本,但非常容易使用。不幸的是,似乎已替换为一个已驻留的域。也许公司倒闭了。如果是这样,那就太可惜了


有关更广泛的目录,请查看

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

  • --用于.Net framework的opengl绑定

  • 但是我不确定他们是否足够成熟。。但是它值得吉瓦去尝试。

    总是有团结的。使用Mono而不是MS.Net

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

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

    我个人认为OpenGL更适合2D游戏。你应该明确地阅读(它们是C++的,但是OpenGL部分仍然是有效的。你可以在每一节课的底部找到代码的C转换),因为它们是一个可怕的资源,开始为你的游戏制作简单的图形引擎。

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

    目前发布的答案(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或者只使用XNA,这里的其他建议需要更多的工作,但没有什么优势(大多数人只是想制作游戏,而不必担心HAL界面,也不必担心让操作系统玩得很好。)

    我使用Gorgon(使用SlimDX)


    请转到stack overflow,我无意中在这里问了这个问题……好的,为什么它没有显示我在问这个问题?您是否在“帐户”上正确链接了您的帐户你的用户页面的标签?为什么你会使用C#/.NET而不使用XNA对我来说是一个完全的谜…我有,至少我认为是这样…只是XNA很容易写简单的小样本,但写一些像样的东西非常难。我开始怀疑这是最好的选择…就像我说的,XNA比goi容易得多使用OpenGL或DirectX之类的工具,这是这里大多数人的建议。可能有一些引擎会更简单,但大多数引擎都需要使用c/c++(没有CLR,所以你不会得到垃圾收集,而垃圾收集会使c的开发变得更简单),而且,大多数引擎都是面向3D游戏的,让他们只做2D图形可能会更困难。你很可能是对的。此外,如果我在RTS游戏的“框架”上投入足够的精力,实际开发应该足够简单。