SlimDX与SDL - 哪个最好?

时间:2011-06-13 18:30:55

标签: .net vb.net directx sdl slimdx

对于有经验的人,使用VB.NET,使用SlimDX或SDL更容易吗? SlimDX的教程已经为.NET编写,但我读过SDL它比DirectX本身要容易得多。 就我而言,我只需要2D图形。

另外,您推荐哪种语言。我通常使用VB.NET,但可能大多数互联网上的教程都在C#中,我认为学习它并不难,因为我知道C和PHP。 :)

4 个答案:

答案 0 :(得分:1)

对于使用较旧显卡的用户而言,SDL可能会出现问题,而这些显卡往往缺乏体面的OpenGL加速。我上次检查时,SDL的.NET包装器已经过时了。

当我为我的.NET项目寻找一个像样的2D硬件加速库时,我最终使用了一个名为Gorgon的库。它基于SlimDX,专注于使SlimDX更加面向对象,更易于用于2D应用。

它支持渲染到你喜欢的任何控件,你可以自由地将它与Windows Forms的东西混合。性能与SlimDX基本相同,因为它本质上是一个SlimDX包装器。

如果您有兴趣,请点击以下链接:

答案 1 :(得分:1)

回答问题的第二部分:

对于大多数意图和目的而言,VB.NET和C#是相同的。

它们编译为相同的结束代码并具有相同的性能(如果您更改每个匹配的溢出检查)。以下是一些差异:

<强> VB.NET

  • 不区分大小写
  • 比C#更详细
  • 继承了其BASIC前辈的不良声誉,很多程序员(我认为大多数是C ++程序员)似乎都把VB.NET视为劣等。
  • 比C#
  • 少用
  • 有“With ... End With”,我真的希望C#有。
  • 默认情况下有溢出检查
  • “我的”命名空间

<强> C#

  • 区分大小写
  • 可用性稍差 - 使用C#和&amp;在VS08的VB中,我发现C#intellisense的智能性稍差。
  • C#要求您更多地投射数据类型,尽管这可以让您更灵活。
  • 更受欢迎
  • 与Java
  • 等其他语言密切相关
  • 有一些VB没有的东西,比如“unsafe”关键字。
  • / *简单的多行评论* /
  • 默认情况下有溢出检查
  • 没有“我的”命名空间

如果选择VB.NET或C#,很少有这样的场景,主要区别在于语法,以及许多程序员倾向于将VB.NET视为“劣等”的事实(我认为这只是编程语言的问题,但不幸的是,这是怎么回事)

也就是说,可能值得从VB.NET切换到C#,因为:

  • 改变不会太难,因为它们大致相同
  • 学习另一种语言始终是一件好事
  • 正如你所说,C#有更多可用的教程,这将为你节省翻译代码
  • 从职业角度来看,能够说你用C#做过的东西会很有用

为什么不给它一个旋转?我能想到的唯一缺点就是你一次学习两件事(SDL / SlimDX + C#),但实际上,C#很容易。

答案 2 :(得分:0)

值得注意的是VB现在支持XNA框架:

  

入门指南:http://create.msdn.com/en-US/education/gamedevelopment/VBSupportForXNA

答案 3 :(得分:0)

SlimDX是一个相对较低级别的库。它让您可以访问DirectX的全部功能,并且您可以定位旧的旧硬件以及新的高端硬件。这也意味着很难设置,并且需要更多代码来绘制精灵和文本等简单的东西。

如果你从可用性的角度严格看待,SDL对你来说可能是更好的选择。