代码之家  ›  专栏  ›  技术社区  ›  Grokys

XNA与SlimDX用于屏幕外渲染器

  •  3
  • Grokys  · 技术社区  · 14 年前

    一点背景知识:我有一个应用程序,可以根据XML描述渲染场景。目前我使用的是wpf3d,这基本上是可行的,只是WPF无法在屏幕外渲染场景(即在服务器上,不在窗口中显示场景),而且渲染到位图会导致WPF回退到软件渲染。

    • 3D和2D元素的混合。
    • 每个场景的元素相对较少(几十个网格,几十个2D元素)。
    • 不透明度遮罩。
    • 像素着色器。
    • 软件回退(服务器可能有也可能没有像样的gfx卡)。
    • 可能被渲染到屏幕外。

    特别是我不需要在游戏开发中通常需要的东西很多。所以记住这一点,你会选择XNA还是SlimDX?代码的非呈现部分已经用C#编写,所以希望继续使用它。

    2 回复  |  直到 14 年前
        1
  •  5
  •   Aren    14 年前

    我没有使用过SlimDX,但是基于我对XNA的经验和对SlimDX目标的了解。我建议用SlimDX。XNA虽然可以用于其他事情,但它主要是一个 游戏 引擎,而不是渲染引擎。它有很多特定的优化&面向游戏的方法。

    另外,XNA喜欢将它的资源预构建到DirectX文件(.x)中,如果您使用的是动态文件 认为 SlimDX是您的最佳选择。

        2
  •  2
  •   SiN    14 年前

    XNA和SlimDX在本质上非常接近,但有一些区别:

    • XNA需要一个最少像素/顶点着色器1.1的GPU,而我认为SlimDX不需要。

    • SlimDX支持DirectX10和11,而XNA只支持directx9。

    • XNA是Windows、xbox360、Zune和windowsphone7之间的一个跨平台,而SlimDX则不是。